deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
作者: admin
-
Ubuntu 20.04 阿里云源https://mirrors.aliyun.com/ubuntu/
-
WordPress设置强制跳转登录
修改 每个主题的 header.php文件
路径一般如下:
./wordpress/wp-content/themes/blocksy/
<?php
get_currentuserinfo();global $user_ID;
if ($user_ID == ”) { header(‘Location: /wp-login.php’);
exit();
}
?> -
Hyperf环境部署
yum install -y oniguruma gd libzip yum-utils
nginx
添加nginx源
/etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/8/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/8/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
yum install -y nginxphp基础环境
yum install -y php php-common php-cli php-devel
yum install -y php-mbstring php-process php-json php-xml php-pear php-bcmath php-opcache php-gd
yum install -y php-pdo php-mysqlnd php-pgsql php-odbc
yum install -y php-pecl-zip
Firebird支持
yum install -y libfbclient2 libfbclient2-devel libib-util libtommath perl-DBD-Firebird
nginx配置
fastcgi_pass unix:/run/php-fpm/www.sock;Hyperf 环境要求
PHP >= 7.4
以下任一网络引擎
Swoole PHP 扩展 >= 4.5,并关闭了 Short Name
Swow PHP 扩展 (Beta)
JSON PHP 扩展
Pcntl PHP 扩展
OpenSSL PHP 扩展(如需要使用到 HTTPS)
PDO PHP 扩展 (如需要使用到 MySQL 客户端)
Redis PHP 扩展 (如需要使用到 Redis 客户端)
Protobuf PHP 扩展 (如需要使用到 gRPC 服务端或客户端)安装php扩展
官网http://php.net/releases/ 下载对应的安装包
php -v
检查php配置路径
whereis php-config
Pcntl PHP 扩展
cd php-7.4.6/ext/pcntl
cd pcntl/
/usr/bin/phpize
./configure –with-php-config=/usr/bin/php-config注意/usr/bin/php-config
检查php配置路径
whereis php-config
make && make installRedis PHP 扩展 (如需要使用到 Redis 客户端)
wget https://pecl.php.net/get/redis-5.3.6.tgz
cd redis-5.3.6/
/usr/bin/phpize
./configure –with-php-config=/usr/bin/php-config
make && make installProtobuf PHP 扩展
yum install -y protobuf.x86_64 protobuf-compiler.x86_64 protobuf-devel.x86_64
wget https://github.com/allegro/php-protobuf/archive/refs/heads/master.zip
/usr/bin/phpize
./configure –with-php-config=/usr/bin/php-config
make && make installSwoole PHP 扩展
wget https://pecl.php.net/get/swoole-4.8.6.tgz
/usr/bin/phpize
./configure –with-php-config=/usr/bin/php-config
make && make install
; Enable swoole extension module
extension=swoole.so
swoole.use_shortname = off ;关闭 Short Name
Installing shared extensions: /usr/lib64/php/modules/添加相应的配置
/etc/php.d/
cat 20-protobuf.ini
; Enable protobuf extension module
extension=protobufrename’.repo”.repo.bak’ /etc/yum.repos.d/*.repo
-
小米(红米)电视屏蔽开机广告hosts
打开手机上的「小米WiFi」APP,在「工具箱」里找到并打开「自定义Hosts」,把以下的hosts添加到自定义hosts里,然后点击「点击配置」。
127.0.0.1 api.io.mi.com
127.0.0.1 device.io.mi.com
127.0.0.1 ad.mi.com
127.0.0.1 ad.xiaomi.com
127.0.0.1 ad1.xiaomi.com
127.0.0.1 tat.pandora.xiaomi.com
127.0.0.1 api.ad.xiaomi.com
127.0.0.1 t7z.cupid.ptqy.gitv.tv
127.0.0.1 ad.xiaomi.com
127.0.0.1 api.ad.xiaomi.com
127.0.0.1 sdkconfig.ad.xiaomi.com
127.0.0.1 stat.pandora.xiaomi.com
127.0.0.1 upgrade.mishop.pandora.xiaomi.com
127.0.0.1 logonext.tv.kuyun.com
127.0.0.1 config.kuyun.com
127.0.0.1 mishop.pandora.xiaomi.com
127.0.0.1 dvb.pandora.xiaomi.com
127.0.0.1 api.ad.xiaomi.com
127.0.0.1 de.pandora.xiaomi.com
127.0.0.1 data.mistat.xiaomi.com
127.0.0.1 jellyfish.pandora.xiaomi.com
127.0.0.1 gallery.pandora.xiaomi.com
127.0.0.1 bss.pandora.xiaomi.com
127.0.0.1 gvod.aiseejapp.atianqi.com
127.0.0.1 sdkauth.hpplay.cn
127.0.0.1 adeng.hpplay.cn
127.0.0.1 ad.hpplay.cn
127.0.0.1 conf.hpplay.cn
127.0.0.1 fix.hpplay.cn
127.0.0.1 adcdn.hpplay.cn
127.0.0.1 sl.hpplay.cn
127.0.0.1 rp.hpplay.cn
127.0.0.1 h5.hpplay.com.cn
127.0.0.1 hpplay.cdn.cibn.cc
127.0.0.1 sdkauth.hpplay.cn
127.0.0.1 imdns.hpplay.cn
127.0.0.1 vipauth.hpplay.cn
127.0.0.1 rp.hpplay.cn
127.0.0.1 sl.hpplay.cn
127.0.0.1 519332DA.rtc.youme.im
127.0.0.1 hotupgrade.hpplay.
127.0.0.1 pin.hpplay.cn
127.0.0.1 tvapp.hpplay.cn
127.0.0.1 hpplay.cdn.cibn.cc
127.0.0.1 image.hpplay.cn
127.0.0.1 gslb.hpplay.cn
127.0.0.1 rp.hpplay.cn
127.0.0.1 cdn.hpplay.com.cn
127.0.0.1 h5.hpplay.com.cn
127.0.0.1 adeng.hpplay.cn
127.0.0.1 conf.hpplay.cn
127.0.0.1 adcdn.hpplay.cn
127.0.0.1 g.dtv.cn.miaozhen.com
127.0.0.1 android.bugly.qq.com
127.0.0.1 alog.umeng.com
127.0.0.1 hotupgrade.hpplay.cn
127.0.0.1 pin.hpplay.cn
-
HP ProLiant MicroServer Gen8迷你服务器 汇总贴:降噪、升级、改造 – 转
HP ProLiant MicroServer Gen8迷你服务器 汇总贴:降噪、升级、改造 – 电脑讨论 – Chiphell – 分享与交流用户体验
[NAS] HP ProLiant MicroServer Gen8迷你服务器 汇总贴:降噪、升级、改造
HP ProLiant MicroServer Gen8,无论是作为家用迷你服务器、NAS还是HTPC,都可以比较优秀的完成任务。
鉴于很多帖子和信息分布在不同的帖子,甚至其他的来源,本贴力争汇集尽可能多的信息,以方便MS G8的玩家检索。声明:本贴的信息大多是汇总、搬运的,版权归原始作者或网站。
如果有问题要咨询,建议直接回帖讨论,这样可以有更多人帮忙,也可以把解决问题的过程和途径分享给更多人。
2楼:SATA5端口引导方法
3楼:terryborg 经验分享搬运官方固件:
iLO v2.30,链接:http://pan.baidu.com/s/1sk7YYFr 密码:c1ur
iLO v2.10,链接:http://pan.baidu.com/s/1kUxvS3d 密码:vmjx
iLO v2.03,链接:http://pan.baidu.com/s/1ntWnwKD 密码:zavs
iLO v1.51,链接:http://pan.baidu.com/s/1pKgsCWV 密码:rzwp
iLO v1.32破解版,链接:http://pan.baidu.com/s/1o7apmUu 密码:ewns,SATA、AHCI模式下风扇转速超低BIOS 2015-07-16版,链接:http://pan.baidu.com/s/1pKnKl43 密码:m1u3
BIOS 2014-06-06版,链接:http://pan.baidu.com/s/1gemEANT 密码:0hfriLO和BIOS均可以在windows操作系统或iLO网页界面中更新,而且可以随意升级、降级,没有锁定之类的限制。
HP MicroServer Gen8产品页面在HP官网:HP ProLiant MicroServer Gen8
驱动支持页面在HPE官网:http://h20566.www2.hpe.com/hpsc/ … 90291&lang=en&cc=us
MicroServer Gen8属于HPE(Hewlett Packard Enterprise,惠普企业级产品)而不是HP,MicroServer Gen8的支持页面(如驱动下载)在HPE,官网首页是www.hpe.com;不是hp.com。HPE大约从2015年起变更了服务支持策略,普通驱动可以无限制下载,但是BIOS、SPP更新等可能需要用主机序列号注册、且在主机质保期内方能下载,超期就只能等待别人搬运分享了。
可能的玩法:
MSG8的可玩性很高,下面是几个常见的玩法:
A:Windows Server Hyper-V虚拟化方案;
B:VMware ESXi虚拟化方案;
C:基于其他Linux的虚拟化方案;
D:直接安装Windows 7、8、10、Storage Server等,不使用虚拟化方案;
E:直接安装Ubuntu、CentOS等Linux(包括黑群晖),不使用虚拟化方案。方案A和B都不错:
惠普官方提供MSG8的驱动中,Windows Server 2008 R2的驱动最完整;
鉴于惠普提供“custom HP ESXi Image”,也就是惠普定制版ESXi镜像,所以MSG8使用ESXi方案也是不错的选择。此外,惠普官方提供RHEL,SUSE,Ubuntu等三个Linux的驱动。
CPU:
目前主要有两种配置,唯一的区别就是CPU不同,G1610T CPU的配置售价$449.00;G2020T的售价$529.00。
似乎欧洲的还有一种E3 CPU的配置,不过价格太高了。目前最实用的就是购买G1610T配置,如果需要更高的性能,再自己升级CPU。主板是1155接口,理论上支持E3-1200系列V2和3xxx的桌面CPU,由于主板集成了一个显卡,即便使用不带核显的CPU也没问题。
最理想的备选升级CPU为E3-1265L V2。
所有可能的MS G8可选的CPU详见下表:
美国Newegg和Amazon经常有打折销售的MS G8,G1610T配置的价格为$395,加上国际转运费650人民币,到手价格约为395*6.25+650=3110。
如果报关为“电脑”则大陆海关关税为200元;如果报关为“电脑机箱”则不收关税。
这个价格和淘宝上直接买的价格差不多,所以主机基本上不需要海淘。
(主要就是因为太重了,以至于国际运费太高。转运的话,含包装的重量约为19~20磅,约9公斤。)CPU E3-1265L V2美国的盒装版$330(型号为BX80637E31265L2),约合2050人民币;
美国TRAY版(也就是散片)$310(型号为CM8063701098906),约合1950人民币。
相比淘宝正式版散片也才1580人民币,还是直接淘宝更合适。实测,MicroServer Gen8可以正常使用i3-3220T等i3 CPU。虽然Intel最新的ark显示这两个CPU不支持ECC内存,但是确实可以正常开机。(无论配合什么CPU,MSG8必须使用无缓冲ECC内存才能开机;普通桌面内存或REG-ECC均没有办法启动。)
i7-3770T无法使用。内存:
支持且仅支持ECC无REG功能的内存,HP官方手册中称为UDIMM内存;
仅支持1.5V的内存,如果安装低电压内存,主板将强制内存工作在1.5V;
官方手册中有两个8GB单条的内存型号,分别为“HP 8GB (1x8GB) Dual Rank x8 PC3-12800E (DDR3-1600) Unbuffered CAS-11 Memory Kit 669324-B21”和“HP 8GB (1x8GB) Dual Rank x8 PC3L-10600E (DDR3-1333) Unbuffered CAS-9 Low Voltage Memory Kit 647909-B21”;
如果使用HP官方的型号,iLO4可以正确识别并且显示支持Smart Memory功能;
如果是用金士顿等第三方内存(无论是否通过HP认证),均不支持Smart Memory,但是功能上没有区别。已经经过验证,REG ECC肯定无法使用;无ECC的普通台式机内存肯定无法使用。
由于主板只有两个内存槽,所以目前已知的最大内存容量是16GB(2*8GB)。
国外论坛有人说ECC无REG的16GB单条内存,插两条,可以开机正常使用,但是有争议,因为一直没有具体内存型号和照片,待验证……已经试验过的可以工作的第三方内存型号:
Kingston 2*KTH-PL316E/8G
Kingston (PC3 10600) KVR1333d3E9SK2/8G
Kingston KVR1333D3E9SK2-16G
Samsung m391b1g73bh0-ck0 8GB x2
HYNIX Memory Module Mfr P/N HMT41GU7MFR8C-PB
taobao上的纯ECC 1866 尔必达8G内存可用,目前8Gx2已稳定运行3个月左右——terryborgiLO4远程管理:
MS G8主板集成的是iLO4,这个是HP的称呼,通用的功能名称应该叫做IPMI,具体可以wiki。
使用iLO可以直接挂在iso光盘镜像,远程安装操作系统;
升级到iLO高级版后,可以在MSG8进入操作系统后继续进行远程控制;
默认的基础版只能远程管理BIOS,安装操作系统等,一旦操作系统安装完成,iLO就不再显示图像了。另外,iLO依赖于主板集成的那个显示芯片;并不是使用CPU的显示核心。
如果添加PCIE显卡,则iLO远程管理时将没有图像。阵列卡与硬盘:
MS G8主板集成的阵列卡是HP Smart Array B120i Storage Controller,这个实际上是主板C204芯片组,只不过虚拟成了B120i。
主板的SATA接口可以工作在RAID模式,或AHCI模式,或IDE模式。无论工作在何种模式,SATA端口1、2最高为SATA3;
端口3、4最高为SATA2;
端口5原本是预留给光驱的,据说只能SATA1。如何从SATA5引导系统?
故障描述:AHCI模式时,五个SATA和普通主板的功能一样,唯一不同的是MS G8的BIOS不能选择用哪个硬盘启动。
它会尝试从SATA1引导,如果SATA1没有连接硬盘,则尝试从SATA2引导,以此类推。
可是SATA1~4是硬盘笼子;通常人们都是将4个3.5寸仓库盘放到笼子里面;然后通过SATA5连接一个2.5寸硬盘(放置在9.5mm光驱位置)做系统盘。当五个硬盘都连接时,BIOS仅尝试从SATA1引导,结果出现引导失败。解决方案:老外给出了一个办法,通过安装一个U盘或MicroSD卡,从而间接引导SATA5接口上的系统盘(详见本贴2楼)。
内部改造增加硬盘:
在主机机箱内固定更多的硬盘是可行的,已经有老外做出了一个铝板固定器。
但是这意味着必须要增加一个阵列卡或HBA才行,否则主板没有足够的SATA接口来支持更多的硬盘。还有一种玩法就是弄一个USB转笔记本光驱的转接头,从而可以使用主机内的USB接口来连接超薄光驱,这样就可以实现4个仓库盘,1个系统盘,以及1个光驱,所有都是内置的。
SATA/AHCI模式与风扇噪音问题:
在RAID模式时,仅支持RAID0、RAID1和RAID10模式,并且硬盘不能休眠。如果设置为RAID模式,即便是把每个物理硬盘组建成一个RAOD0,此时已然是RAID模式,所有硬盘都不能休眠。
其实硬盘不能休眠,费电还是其次,关键是普通硬盘的话,寿命会很有问题。
如果使用RAID模式,老外给出的建议是直接上NAS系列之类的硬盘,不仅是7*24设计,而且功耗要比桌面硬盘低一些。在AHCI模式,由于此主板集成了iLO4远程控制功能,且iLO4需要通过B120i读取硬盘温度,以便计算风扇的转速。
故而设置了AHCI模式后,将导致B120i被禁用,从而iLO4无法获得硬盘温度,以至于假设最坏的情况发生,从而大大提到风扇转速,产生令人疯狂的噪音。很多老外通过各种渠道积极联系HP,经过2014年年底几个月的努力,HP发布了iLO4 1.40版固件,此版固件可以使AHCI模式时,风扇转速在25%左右,较之前版本已经大大降低了,但是依然不够安静。
目前最新版的iLO+BIOS已经比之前更加精进,SATA/AHCI模式下的风扇转速进一步降低。
另外,有高人破解了iLO4 1.32版,这个hack版固件可以使风扇维持在17%左右。
在IDE模式,由于也禁用了B120i,所以与AHCI类似,也有风扇噪音问题。
MS G8官方推荐的RAID卡是P222,部件号HP Smart Array P222/512 FBWC 6Gb 1-port Int/1-port Ext SAS Controller 631667-B21。
其他的RAID卡、HBA卡大多也可以使用,但是到目前为止,似乎除了B120i和P222,其他任何阵列卡都无法与iLO4配合正确处理硬盘温度与风扇转速问题,从而导致噪音。功耗与温度:
24小时开机,平时功耗50W左右。参考配置:i3-3220T,4TB低速硬盘*4,SSD*1,8GB*2。操作系统:
主要就是Windows Server 2008 R2,2012和ESXi。
其他系统也可以用,但是帖子和资源不多,遇到问题不容易找到同党讨论。HP定制版ESXi的官方下载地址http://www8.hp.com/us/en/product … RI=1499005#tab=TAB4
HP Intelligent Provisioning
简称HPIP或IP,是惠普服务器主板上一个类似固件的软件,可以帮助用户安装操作系统等。
使用IP安装Windows Server会自动装好各个硬件的驱动程序。
最新的版本是1.6,如果安装操作系统是遇到问题,可以下载HP Intelligent Provisioning 恢复介质,刻录光盘后,引导并刷新主板的IP即可完成升级。
多说一句,MSG8是服务器,不建议用系统光盘直接引导并安装;强烈建议使用IP引导并安装操作系统。
并且注意不要使用第三方修改过的光盘作为安装介质,否则很容易发生莫名其妙的问题。驱动与更新:
主板集成有Intelligent Provisioning,理论上IP可以自动安装下述操作系统并自动安装好驱动程序:Microsoft Windows (64–bit),VMware ESXi,VMware ESX,SUSE Linux Enterprise Server,Red Hat Enterprise Linux。本人分别测试过IP自动和纯手动安装Windows Server 2008 R2,同挺容易的,没什么问题。
无论何种安装方式都涉及未来驱动更新的问题,HP官方提供SPP(Service Pack for Proliant),最新版是HP_Service_Pack_for_Proliant_2014.02.0-0_761723-001_spp_2014.02.0-SPP2014020.2014_0128.5.iso,3.2GB,可以在HP官方网站下载。下载后用iLO4挂在镜像,运行hp\swpackages\hpsum.bat,然后会自动打开ie,依照图形界面可以自动完成更新。
这种更新是自动识别软硬件的,不仅更新驱动,连主板BIOS、iLO4等都会被更新,所以点击下一步时仔细核对一下,是否所有东西都是自己希望更新的。如果程序提示“不能建立基线”等错误,运行hp\swpackages\clean-cache.bat,然后再次执行上面的命令就可以了。
这样更新时,使用的是iso镜像中的文件直接更新,实际上还可以选择其他的更新源,比如直接连接HP官方网站,在线下载更新。只不过这样下载的速度很慢,还不如定期将iso拖回来离线更新方便。
HP也提供不含具体驱动程序的更新工具,叫做hpsum,目前最新版本hpsum630.zip,110MB。
这个只是更新用的工具,具体驱动需要在线下载。交换机:
HP官方配合MS G8的交换机是HP PS1810-8G交换机,外观上可以和MS G8完美叠放在一起;功能上可以支持链路聚合,并且PS系列的交换机支持自动发现和管理ProLiant Server服务器。实测,MSG8配合PS1810进行了链路聚合——MSG8及另外两台电脑均连接至PS1810交换机;
MSG8双网卡做teaming;另外两台电脑分别拷贝MSG8两块物理硬盘上的文件。
两个电脑均获得了约100MB/s(1Gbps)持续拷贝速度。HP Insight Remote:
既然叫做家用服务器,就必须有点儿“服务器”的特性。IR就是一个典型例子。
MS G8主机(ServerA)操作系统安装完成,并且安装了HP Insight Management WBEM Providers;
在其他电脑(MonitorB)(可以是虚拟机)安装HP Insight Remote Support,之后就可以通过任何电脑(ClientC)访问MonitorB,来获得ServerA的各种状态信息。
并且可以进一步通过HP Insight Remote Support,可以注册HP Insight Online,从而可以直接登录HP官方网站查看自己的MS G8的各种状态信息。 -
WIN10 电脑图片查看器
新增Windows照片查看器.REG文件
文件内容
Windows Registry Editor Version 5.00
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.jpg] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.jpeg] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.gif] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.png] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.bmp] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.tiff] @=”PhotoViewer.FileAssoc.Tiff”
; Change Extension’s File Type [HKEY_CURRENT_USER\Software\Classes\.ico] @=”PhotoViewer.FileAssoc.Tiff”直接执行 Windows照片查看器.REG
-
CentOS7图形界面与命令行界面切换
在图形界面使用 ctrl+alt+F2切换到dos界面
dos界面 ctrl+alt+F2切换回图形界面
在命令上 输入 init 3 命令 切换到dos界面
输入 init 5命令 切换到图形界面
如果想系统默认以某种方式启动, 使用systemd创建符号链接指向默认运行级别。
修改方法为:
1.首先删除已经存在的符号链接:
rm /etc/systemd/system/default.target
2.默认级别转换为3(文本模式):
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
或者默认级别转换为5(图形模式):ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
3.重启:
reboot
centos7以下的版本
以管理员权限编辑/etc/inittab 把 id:5:initdefault: 改为 id:3:initdefault: 就ok。
-
512M内存 MYSQL的my.cnf
# Example MySQL config file for medium systems.
#
# This is for a system with little memory (32M – 64M) where MySQL plays
# an important part, or systems up to 128M where MySQL is used together with
# other programs (such as a web server)
#
# MySQL programs look for option files in a set of
# locations which depend on the deployment platform.
# You can copy this option file to one of those
# locations. For information about these locations, see:
# http://dev.mysql.com/doc/mysql/en/option-files.html
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the “–help” option.
# The following options will be passed to all MySQL clients
[client]
#character-set-server=utf8
#password = your_password
#host = localhost
port = 3306
socket = /tmp/mysql.sock# Here follows entries for some specific programs
# The MySQL server
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
#character-set-server=utf8
tmpdir= /tmp
port = 3306
socket = /tmp/mysql.sock
skip-external-locking
log-error=/alidata/log/mysql/error.log
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M# Don’t listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the “enable-named-pipe” option) will render mysqld useless!
#
#skip-networking# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin# binary logging format – mixed recommended
binlog_format=mixed# required unique id between 1 and 2^32 – 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id = 1#innodb_use_sys_malloc = 1
#innodb_change_buffering = all
#innodb_file_format_check = 1
#innodb_max_dirty_pages_pct = 75#innodb_data_home_dir = /alidata/server/mysql/data/
#innodb_data_home_dir = /var/lib/mysql/
#innodb_data_file_path = ibdata1:1024M;ibdata2:512M:autoextend
#innodb_log_group_home_dir = /alidata/server/mysql/data
#innodb_log_group_home_dir = /var/lib/mysql/#innodb_log_buffer_size = 16M
#innodb_log_file_size = 64M
#innodb_log_files_in_group = 2
#innodb_additional_mem_pool_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50#innodb_buffer_pool_size = 16M
[mysqldump]
quick
max_allowed_packet = 32M[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M[mysqlhotcopy]
interactive-timeout
expire_logs_days = 5
max_binlog_size = 1000M内存太小,加点SWAP:
dd if=/dev/zero of=/swapfile bs=1M count=1024 #增加1G的SWAP进去
mkswap /swapfile
swapon /swapfile
free添加这行: /swapfile swap swap defaults 0 0 到 /etc/fstab
-
4 个拥有绝佳命令行界面的Linux终端程序(转)
http://www.linuxidc.com/Linux/2017-05/144066.htm
让我们来看几个精心设计的 CLI 程序,以及如何解决一些可发现性问题。
在本文中,我会指出命令行界面的可发现性discoverability缺点以及克服这些问题的几种方法。
我喜欢命令行。我第一次接触命令行是在 1997 的 DOS 6.2 上。我学习了各种命令的语法,并展示了如何在目录中列出隐藏的文件(
attrib)。我会每次仔细检查命令中的每个字符。 当我犯了一个错误,我会从头开始重新输入命令。直到有一天,有人向我展示了如何使用向上和向下箭头按键遍历命令行历史,我被震惊了。后来当我接触到 Linux 时,让我感到惊喜的是,上下箭头保留了它们遍历历史记录的能力。我仍然很仔细地打字,但是现在,我了解如何盲打,并且我能打的很快,每分钟可以达到 55 个单词的速度。接着有人向我展示了 tab 补完,再一次改变了我的生活。
在 GUI 应用程序中,菜单、工具提示和图标用于向用户展示功能。而命令行缺乏这种能力,但是有办法克服这个问题。在深入解决方案之前,我会来看看几个有问题的 CLI 程序:
1、 MySQL
首先让我们看看我们所钟爱的 MySQL REPL。我经常发现自己在输入
SELECT * FROM然后按Tab的习惯。MySQL 会询问我是否想看到所有的 871 种可能性。我的数据库中绝对没有 871 张表。如果我选择yes,它会显示一堆 SQL 关键字、表、函数等。(LCTT 译注:REPL —— Read-Eval-Print Loop,交互式开发环境)
MySQL gif
2、 Python
我们来看另一个例子,标准的 Python REPL。我开始输入命令,然后习惯按
Tab键。瞧,插入了一个Tab字符,考虑到Tab在 Python 源代码中没有特定作用,这是一个问题。
Python gif
好的用户体验
让我看下设计良好的 CLI 程序以及它们是如何克服这些可发现性问题的。
自动补全: bpython
Bpython 是对 Python REPL 的一个很好的替代。当我运行 bpython 并开始输入时,建议会立即出现。我没用通过特殊的键盘绑定触发它,甚至没有按下
Tab键。
bpython gif
当我出于习惯按下
Tab键时,它会用列表中的第一个建议补全。这是给 CLI 设计带来可发现性性的一个很好的例子。bpython 的另一个方面是可以展示模块和函数的文档。当我输入一个函数的名字时,它会显示这个函数附带的签名以及文档字符串。这是一个多么令人难以置信的周到设计啊。
上下文感知补全:mycli
mycli 是默认的 MySQL 客户端的现代替代品。这个工具对 MySQL 来说就像 bpython 之于标准 Python REPL 一样。mycli 将在你输入时自动补全关键字、表名、列和函数。
补全建议是上下文相关的。例如,在
SELECT * FROM之后,只有来自当前数据库的表才会列出,而不是所有可能的关键字。
mycli gif
模糊搜索和在线帮助: pgcli
如果您正在寻找 PostgreSQL 版本的 mycli,请看看 pgcli。 与 mycli 一样,它提供了上下文感知的自动补全。菜单中的项目使用模糊搜索缩小范围。模糊搜索允许用户输入整体字符串中的任意子字符串来尝试找到正确的匹配项。

pgcli gif
pgcli 和 mycli 在其 CLI 中都实现了这个功能。斜杠命令的文档也作为补全菜单的一部分展示。
可发现性: fish
在传统的 Unix shell(Bash、zsh 等)中,有一种搜索历史记录的方法。此搜索模式由
Ctrl-R触发。当再次调用你上周运行过的命令时,例如 ssh或 docker,这是一个令人难以置信的有用的工具。 一旦你知道这个功能,你会发现自己经常会使用它。如果这个功能是如此有用,那为什么不每次都搜索呢?这正是 fish shell 所做的。一旦你开始输入命令,fish 将开始建议与历史记录类似的命令。然后,你可以按右箭头键接受该建议。
命令行规矩
我已经回顾了一些解决可发现性的问题的创新方法,但也有一些基本的命令行功能应该作为每个 REPL 所实现基础功能的一部分:
- 确保 REPL 有可通过箭头键调用的历史记录。确保会话之间的历史持续存在。
- 提供在编辑器中编辑命令的方法。不管你的补全是多么棒,有时用户只需要一个编辑器来制作完美的命令来删除生产环境中所有的表。
- 使用分页器(
pager)来管道输出。不要让用户滚动他们的终端。哦,要为分页器设置个合理的默认值。(记得添加选项来处理颜色代码。) - 提供一种通过
Ctrl-R界面或者 fish 式的自动搜索来搜索历史记录的方法。
总结
在第 2 节中,我将来看看 Python 中使你能够实现这些技术的特定库。同时,请查看其中一些精心设计的命令行应用程序:
- bpython或 ptpython:具有自动补全支持的 Python REPL。
- http-prompt:交互式 HTTP 客户端。
- mycli:MySQL、MariaDB 和 Percona 的命令行界面,具有自动补全和语法高亮。
- pgcli:具有自动补全和语法高亮,是对 psql 的替代工具。
- wharfee:用于管理 Docker 容器的 shell。
了解更多: Amjith Ramanujam 在 5 月 20 日在波特兰俄勒冈州举办的 PyCon US 2017 上的谈话“神奇的命令行工具”。
作者简介:
Amjith Ramanujam – Amjith Ramanujam 是 pgcli 和 mycli 的创始人。人们认为它们很酷,他表示笑纳赞誉。他喜欢用 Python、Javascript 和 C 编程。他喜欢编写简单易懂的代码,它们有时甚至会成功。
via: https://opensource.com/article/17/5/4-terminal-apps
作者:Amjith Ramanujam 译者:geekpi 校对:wxy
-
11个Linux 终端命令
1. 命令行日常系快捷键
如下的快捷方式非常有用,能够极大的提升你的工作效率:
CTRL + U – 剪切光标前的内容
CTRL + K – 剪切光标至行末的内容
CTRL + Y – 粘贴
CTRL + E – 移动光标到行末
CTRL + A – 移动光标到行首
ALT + F – 跳向下一个空格
ALT + B – 跳回上一个空格
ALT + Backspace – 删除前一个单词
CTRL + W – 剪切光标后一个单词
Shift + Insert – 向终端内粘贴文本那么为了让上述内容更易理解来看下面的这行命令。
sudo apt-get intall programname
如你所见,命令中存在拼写错误,为了正常执行需要把“intall”替换成“install”。
想象现在光标正在行末,我们有很多的方法将她退回单词install并替换它。
我可以按两次ALT+B这样光标就会在如下的位置(这里用指代光标的位置)。
sudo apt-get^intall programname
现在你可以按两下方向键并将“s”插入到install中去了。
如果你想将浏览器中的文本复制到终端,可以使用快捷键”shift + insert”。
2. SUDO !!
如果你还不知道这个命令,我觉得你应该好好感谢我,因为如果你不知道的话,那每次你在输入长串命令后看到“permission denied”后一定会痛苦不堪。
sudo !!
如何使用sudo !!?很简单。试想你刚输入了如下命令:
apt-get install ranger
一定会出现“Permission denied”,除非你已经登录了足够高权限的账户。
sudo !! 就会用 sudo 的形式运行上一条命令。所以上一条命令就变成了这样:
sudo apt-get install ranger
如果你不知道什么是sudo,戳这里。
3. 暂停并在后台运行命令
我曾经写过一篇如何在终端后台运行命令的指南。
CTRL + Z – 暂停应用程序
fg – 重新将程序唤到前台如何使用这个技巧呢?
试想你正用nano编辑一个文件:
sudo nano abc.txt
文件编辑到一半你意识到你需要马上在终端输入些命令,但是nano在前台运行让你不能输入。
你可能觉得唯一的方法就是保存文件,退出 nano,运行命令以后在重新打开nano。
其实你只要按CTRL + Z,前台的命令就会暂停,画面就切回到命令行了。然后你就能运行你想要运行命令,等命令运行完后在终端窗口输入“fg”就可以回到先前暂停的任务。
有一个尝试非常有趣就是用nano打开文件,输入一些东西然后暂停会话。再用nano打开另一个文件,输入一些什么后再暂停会话。如果你输入“fg”你将回到第二个用nano打开的文件。只有退出nano再输入“fg”,你才会回到第一个用nano打开的文件。
4. 使用nohup在登出SSH会话后仍运行命令
如果你用ssh登录别的机器时,nohup命令真的非常有用。
那么怎么使用nohup呢?
想象一下你使用ssh远程登录到另一台电脑上,你运行了一条非常耗时的命令然后退出了ssh会话,不过命令仍在执行。而nohup可以将这一场景变成现实。
举个例子,因为测试的需要,我用我的树莓派来下载发行版。我绝对不会给我的树莓派外接显示器、键盘或鼠标。
一般我总是用SSH从笔记本电脑连接到树莓派。如果我在不用nohup的情况下使用树莓派下载大型文件,那我就必须等待到下载完成后,才能登出ssh会话关掉笔记本。可如果是这样,那我为什么要使用树莓派下文件呢?
使用nohup的方法也很简单,只需如下例中在nohup后输入要执行的命令即可:
nohup wget http://mirror.is.co.za/mirrors/linuxmint.com/iso//stable/17.1/linuxmint-17.1-cinnamon-64bit.iso &
5. ‘在’特定的时间运行Linux命令
‘nohup’命令在你用SSH连接到服务器,并在上面保持执行SSH登出前任务的时候十分有用。
想一下如果你需要在特定的时间执行相同的命令,这种情况该怎么办呢?
命令‘at’就能妥善解决这一情况。以下是‘at’使用示例。
at 10:38 PM Fri
at> cowsay ‘hello’
at> CTRL + D上面的命令能在周五下午10时38分运行程序cowsay。
使用的语法就是‘at’后追加日期时间。当at>提示符出现后就可以输入你想在那个时间运行的命令了。
CTRL + D 返回终端。
还有许多日期和时间的格式,都需要你好好翻一翻‘at’的man手册来找到更多的使用方式。
6. Man手册
Man手册会为你列出命令和参数的使用大纲,教你如何使用她们。Man手册看起来沉闷呆板。(我思忖她们也不是被设计来娱乐我们的)。
不过这不代表你不能做些什么来使她们变得漂亮些。
export PAGER=most
你需要安装 ‘most’;她会使你的你的man手册的色彩更加绚丽。
你可以用以下命令给man手册设定指定的行长:
export MANWIDTH=80
最后,如果你有一个可用的浏览器,你可以使用-H在默认浏览器中打开任意的man页。
man -H <command>
注意啦,以上的命令只有在你将默认的浏览器设置到环境变量$BROWSER中了之后才效果哟。
7. 使用htop查看和管理进程
你用哪个命令找出电脑上正在运行的进程的呢?我敢打赌是‘ps’并在其后加不同的参数来得到你所想要的不同输出。
安装‘htop’吧!绝对让你相见恨晚。
htop在终端中将进程以列表的方式呈现,有点类似于Windows中的任务管理器。你可以使用功能键的组合来切换排列的方式和展示出来的项。你也可以在htop中直接杀死进程。
在终端中简单的输入htop即可运行。
htop
8. 使用ranger浏览文件系统
如果说htop是命令行进程控制的好帮手,那么ranger就是命令行浏览文件系统的好帮手。
你在用之前可能需要先安装,不过一旦安装了以后就可以在命令行输入以下命令启动她:
ranger
在命令行窗口中ranger和一些别的文件管理器很像,但是相比上下结构布局,她是左右结构的,这意味着你按左方向键你将前进到上一个文件夹,而右方向键则会切换到下一个。
在使用前ranger的man手册还是值得一读的,这样你就可以用快捷键操作ranger了。
9. 取消关机
无论是在命令行还是图形用户界面关机后,才发现自己不是真的想要关机。
shutdown -c
需要注意的是,如果关机已经开始则有可能来不及停止关机。
以下是另一个可以尝试命令:
pkill shutdown
10. 杀死挂起进程的简单方法
想象一下,你正在运行的应用程序不明原因的僵死了。
你可以使用‘ps -ef’来找到该进程后杀掉或者使用‘htop’。
有一个更快、更容易的命令叫做xkill。
简单的在终端中输入以下命令并在窗口中点击你想杀死的应用程序。
xkill
那如果整个系统挂掉了怎么办呢?
按住键盘上的‘alt’和‘sysrq’不放,然后慢慢输入以下键:
REISUB
这样不按电源键你的计算机也能重启了。
11. 下载Youtube视频
一般来说我们大多数人都喜欢看Youtube的视频,也会通过钟爱的播放器播放Youtube的流媒体。
如果你需要离线一段时间(比如:从苏格兰南部坐飞机到英格兰南部旅游的这段时间)那么你可能希望下载一些视频到存储设备中,到闲暇时观看。
你所要做的就是从包管理器中安装youtube-dl。
你可以用以下命令使用youtube-dl:
youtube-dl url-to-video
你可以在Youtubu视频页面点击分享链接得到视频的url。只要简单的复制链接在粘帖到命令行就行了(要用shift + insert快捷键哟)。