Typecho出现数据库错误

作者:Harrandi 发布时间:January 17, 2019 分类:随便写写

前几天突然发现我的树莓派数据库服务器挂了,想来是多次插拔移动硬盘导致意外重启,损坏了文件,表现为数据库无法运行,后来扒日志修复了。今天又突然发现租用的数据库也报错了,但查看数据库运行良好。想起来运营商发的邮件来,他们更新了管理套件相应的也会更新服务器环境。登陆phpadmin查看,是比较新的php7.1,数据库扩展有了变化,修改config.nic文件里的$db = new Typecho_Db('Mysql', 'xx_');为“$db = new Typecho_Db('Pdo_Mysql', 'xx_'); 就好了。基本上遇到问题都不必惊慌,查log和搜索总能解决的。当然了,定时备份总没有坏处。

我的GIGABYTE Brix BLPD-5005折腾记录

作者:Harrandi 发布时间:December 17, 2018 分类:随便写写

早买早享受,晚买真特么便宜。899元入手了技嘉Brix BLPD-5005,J东PLUS会员849元。大陆版不含INTEL AC3168无线网卡,尽管卖家送了一个2.4G的单频网卡,但是怎么够用呢,2.4G严重污染的今天我宁可它只支持5.8G。所以又淘宝了一个intel 9260AC A+E Key,结果只能识别到蓝牙。被服务员误导了,见图

Screenshot_20181216-161435.png

实际等我收到机器发现:

IMG_20181216_165227730.jpg

不得不重新购入9560AC,KEY E接口。满网找不到这款机器的使用分享,也没主板接口图,这也是我写这篇文的原因。目前看来在支持CNVI的主板上还是要选9560,不要选9260. 9560和9260区别是硬件接口不同,一个ekey 一个ae key,技术方面9560是cnvi技术,而9260则不是,其它参数则完全一致。难道cnvi是不向下兼容的吗?还是只限于9260这款不兼容呢?毕竟有一个完全相同规格的9560? 如果你知道请告知。迫击炮9260ac只有蓝牙intel9560ac兼容的平台

在闲鱼买到两条戴尔机器升级换下来的4G镁光DDR2666(淘宝的低价镁光倒不都是假货但是双面的老产品);HP EX900 256G Nvme券后价259块,不买对不起卖家。

IMG_20181216_122402113.jpg

总体上,除了WIFI CARD出了岔子,整个采购过程还是比较满意的~ 卖家也都没有因为做活动而发用过的产品(ORZ,以前买过一个京东自营的飞利浦空气炸锅,显示最后一台,结果东西被用过。所以我遇到京东自营搞大幅活动而且最后一台的情况都是忽略,换货倒是爽快的。这也是二手东一个特色吧。)

IMG_20181215_112940662.jpg


如果你查看技嘉官方网站无论国际版还是国内版,都会得到这样的参数:

平台最大支持8G内存,固态硬盘支持 M.2 slot (2280_storage) PCIe X2/SATA
WIFI卡支持 PCIe M.2 NGFF 2230 A-E key slot occupied by the WiFi+BT card

而实际上它不仅支持Nvme SSD也支持更快的E KEY Intel 9560ac。关于内存,我没测试,记得某个淘宝店说过16G没问题。但,你得先更新BIOS。官网产品页下载: 官网

下载下来解压缩得到F3_BIOS文件夹,把它放到你的U盘里,以防万一使用FAT32格式分区。由于此时我的硬盘是空的,开机会自动引导到自带的SHELL下,像是这样SHELL>,而在它的上方会显示你插入的U盘盘符,如图,我的被识别为fs0(数字零不是字母欧).

IMG_20181215_132813628.jpg

在SHELL>下输入fs0:回车,然后进入F3_BIOS文件夹(cd空格F3_BIOS回车),再输入FLASH.NSH回车就开始刷新BIOS了,此刻不要乱动,它大概需要几分钟的时间,直到自动重启就代表成功了(它开机本来就慢所以重启黑屏几秒别害怕)。如图(可能比你的多了几个文件同,那是我干的,不用理会,当时想用界面模式刷新,但是明显这个办法更快捷方便):

IMG_20181215_132857365.jpg

IMG_20181215_132916774.jpg

这个BIOS没有特别需要设置的,这时可以愉快地做系统了。

等等,如果你想挑战一下手动分区,然后用DISM++加载镜像做系统的话,可能不会那么的愉快,但我会在下一篇详细写出。

如何用diskpart为win10分区并使用DISM++装系统

作者:Harrandi 发布时间:December 17, 2018 分类:随便写写

*这一篇可以作为上一篇的续集也可以单独阅读。
如果你有一个单独的WIN10系统优盘请忽略,因为你选择安装盘的时候它会自动为你划分分区。如果你有一个国产的PE优盘,也可以用图形界面的磁盘工具分区。而如果你就是喜欢命令行,可以像我一样。我是出于对国产PE的不信任,做了一个微软官方的PE优盘,它是不带传统桌面的,启动完毕只有一个SHELL窗口,但却可以运行DISM++这种图形界面的软件,包括技嘉的BIOS刷新工具图形版。也许有时间我会做一个自己的带桌面的PE优盘。那现在就先这样吧。*

在shell下直接输入diskpart回车,就可以运行diskpart。你也可以从国产pe的开始菜单里打开shell窗口。

diskpart>

一个win10的分区基本上如下图所示,有点linux分区的意思了。所以也不要怀疑给SSD分区会不会降低磁盘性能,你看,win10本来就是多分区的。你只需要保证分区4K对齐就行了。

dep-win10-partitions-uefi.png

<1> EFI分区,又叫系统分区(System)或ESP,它最小要求机械盘100M,而固态要求最小是260M,必须为fat32格式(fat32分区要求必须至少包含65527个簇,原生4K盘,每簇按4K,4K*65527=256MB). 这东西大了用处不大。

<2> 随后的MSR分区称作微软保留空间它是16M,在win10看不见但你用diskpart可以看到。

<3> 然后是windows分区,随后你可以分一个自己的DATA分区.建议不分区,另外的D盘实在想要可以在win下磁盘管理“压缩卷”分出来。

<4> 最后是恢复分区recovery简称RE。

如果你不关心这些,那直接输命令吧。每输完一行是需要回车的,如遇错误请仔细检查字母,另外windows不区分大小写。

假设你已经运行了diskpart,得到如下指示
diskpart>

你需要依次输入:

select disk 0 //也可以缩写为sel disk 0,只有一个主硬盘的情况下就是数字0,不放心可以打list disk确认盘号

convert gpt //把此磁盘设定为GPT分区表

create partition efi size=260 //创建了一个EFI分区,大小为260M.

format quick fs=fat32 label="System" //格式化了刚创建的EFI,格式为FAT32。卷标System

assign letter="S" //设定盘符为S

create partition msr size=16 //创建了微软保留分区,大小16M

create partition primary //创建了一个之后会成为C盘的主分区

shrink minimum=500 //为最后的recovery区留500M,也可以加大比如1G.或者你想多分一个区的话,这个数字将是硬盘总大小减去你想为C盘准备的大小的数值,比如我的256G-100=156,156*1000=160000,输入minimum=160000

format quick fs=ntfs label="Windows" //快速格式化它为ntfs分区,卷标Windows

assign letter="W" //后面重启电脑会自动分配它为C盘。

如果你想多分一个区开始:
==========================可选分区开始
create partition primary //这一行是选择性的,如果你不要D盘这行就不要输

shrink minimum=500 //为最后一个区准备500M或者更大,如果不要D盘不要输因为上面输过了

format quick fs=ntfs label="Data" //你可以自己命名,就是D盘卷标。如果不要不要输

assign letter="D" //你要的D盘结束了
==========================可选分区结束

create partition primary //创建了一个即将成为RE分区的主分区

format quick fs=ntfs label="Recovery tools" //快速格式化了RE分区并分配卷标

assign letter="R" //分配盘符

set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac" //RE必须的ID,要不然它只是普通分区

gpt attributes=0x8000000000000001 //标记为不让系统给它分配盘符

list volume //回车,显示卷列表

exit //回车,退出

分区结束,重启电脑,让盘符C正确识别出来。不重启也可以,自己控制。

现在可以愉快地装系统了。 使用DISM++安装系统


如果你连DISM++都不想用,那就用命令行的DISM来,微软官方:用DISM命令行安装系统

假设在命令行x:\windows\system32>

输入命令
Dism /apply-image /imagefile:"N:\Images\my-windows-partition.wim" /index:1 /ApplyDir:C:\
//注意N:的部分修改成你自己的wim文件路径,就是从系统镜像ISO中提取出的install.wim,最后的C:如果你没重启应该改为上面我们设置的w:,如不确定可以用diskpart查看list partition

这样无法引导,需要在EFI建立基本的引导:进入刚才dism apply-image安装好的windows文件夹,假设进入c:\windows\system32

c:\windows\system32>bcdboot C:\Windows /l zh-cn 此时已经可以引导了,重启电脑就可以等待系统初始化完成了

延申设置:更进一步设置RE分区


引用:

  1. 微软官方DISKPART为WIN10分区的链接

How to use arduino UNO Flash BLHELI to a turnigy plush 18a esc

作者:Harrandi 发布时间:July 10, 2017 分类:随便写写

I wish I had pc programming skills, then I could reprogram my brushless ESCs to the brushed ESCs.
After I flashed a mod hex of an older plush 30a ESC(with the different MCU. https://launchpad.net/brushed) to my plush 18a but failed.

In order to save my poor ESC, I used BLHELISuite to do this:
Open BlheliSuite, "Make interfaces", make "Arduino 4way-interface", for "SiLabs C2" interface.

Then select "Interfaces" to " SiLabs C2(4way-IF)

Use 3 wires to connect between UNO and ESC, owsilprog-arduino-uno-scheme-02-wp.jpg
Turnigy Plush 25A_30A front.jpg

Then the ESC can be rewritten.
There is a little trick with wire connect, just connect the black wire to GND pin on ESC cable.

[转]修改ALC系列声卡的插孔定义

作者:Harrandi 发布时间:April 7, 2017 分类:随便写写

转贴,有时互联网的文章会消失。
一般情况下在控制面板双击已插入设置的插孔会弹出选择输出设置的对话框

但是有些主板这个功能在驱动上被屏蔽了,可以通过更改注册表来临时定义插孔设备。
先找到以下键
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E96C-E325-11CE-BFC1-08002BE10318}00XXSettingsDrvYYYY_DevType_YYYY_SSYYYYYYYY
“{4D36E96C-E325-11CE-BFC1-08002BE10318}”这个键有很多相同的 直接在class下搜索High Definition Audio就能找到要找的那个
在DrvYYYY_DevType_YYYY_SSYYYYYYYY里面新建二进制键,键名对应下面功能
"Pin10" = 线性输入 (蓝)
"Pin11" = 麦克风 (粉红)
"Pin14" = 前置喇叭(绿) [一般两2声道,2.1都接这个]
"Pin15" = 后置喇叭 (黑色)
"Pin16" = 中置喇叭 (橙色)
"Pin17" = 侧面喇叭(灰)
"Pin19" = 前面板麦克风
"Pin1b" = 前面板耳机 键的值对应下面功能 "00 00 00 00" = 线性输入
"01 00 00 00" = 麦克风
"02 00 00 00" = 耳机
"04 00 00 00" = 前置喇叭
"05 00 00 00" = 后置喇叭
"06 00 00 00" = 中置喇叭
"07 00 00 00" = 侧面喇叭
比如我要把以前插喇叭的改成音量加强后的耳机(耳机输出可以推高阻抗耳机)功能就建一个名为Pin=14的二进制键,键值输入02 00 00 00 然后重启就ok了。

以上在alc888和alc888s上实际操作确定可以工作,其它芯片有可能Pin的数字会有所不同。