重置密码

echo "root:123456"|chpasswd

journal日志清理

检查当前journal使用磁盘量

journalctl --disk-usage

清理方法可以采用按照日期清理,或者按照允许保留的容量清理,只保存2天的日志,最大10M

journalctl --vacuum-time=2d
journalctl --vacuum-size=10M

--

删除zsh的最近10条history

head -n -10 ~/.zsh_history > ~/.zsh_history.tmp && mv ~/.zsh_history.tmp ~/.zsh_history
fc -R

腾讯云cvm云硬盘扩容

安装 growpart 工具

yum install -y cloud-utils-growpart

使用 growpart 工具扩容分区 /dev/vda1

growpart /dev/vda 1
命令中 /dev/vda 与 1 间需使用空格分隔

扩容 ext4 文件系统:

resize2fs /dev/vda1

VPS服务器一键测试脚本

wget --no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbench.sh && chmod +x superbench.sh && ./superbench.sh

开启 BBR

echo -e "\nnet.core.default_qdisc=fq\nnet.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf && sysctl -p

验证是否开启成功

net.ipv4.tcp_congestion_control = bbr

修改DNS解析

vim /etc/resolv.conf
nameserver 8.8.8.8 #google域名服务器
nameserver 8.8.4.4 #google域名服务器

设置时区

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

时间显示使用24小时制

localectl set-locale LC_TIME=en_GB.UTF-8

CPU 温度显示

yum -y install lm_sensors
sensors

硬盘

硬盘测速

(LANG=C dd if=/dev/zero of=benchtest_$$ bs=64k count=16k conv=fdatasync && rm -f benchtest_$$ ) 2>&1 | awk -F, '{io=$NF} END { print io}' | sed 's/^[ \t]*//;s/[ \t]*$//'
hdparm -t /dev/sda1

硬盘温度显示

yum -y install hddtemp # 安装软件
hddtemp /dev/sdb # 显示该磁盘温度
hddtemp /dev/sdb /dev/sdc /dev/sdd /dev/sde # 显示多个磁盘温度

设置机械硬盘自动休眠

yum -y install hdparm
# 设置 APM(Advanced Power Management) 参数
# 1-127允许磁盘休眠,128-254不允许,255会完全关闭电源管理功能
# 但是太激进(数值太小)也可能会容易使硬盘损坏
hdparm -B 127 /dev/sdc
# 设置多长时间后开始休眠,参数是5的倍数,比如60*5是300秒也就是5分钟
# 注意:从 1 到 240 的值指定 5 秒的倍数,产生从 5 秒到 20 分钟的超时。从 241 到 251 的值指定 1 到 11 个 30 分钟单位,产生从 30 分钟到 5.5 小时的超时。值 252 表示超时 21 分钟。值 253 将供应商定义的超时期限设置为 8 到 12 小时,而值 254 被保留。255 被解释为 21 分钟加 15 秒
hdparm -S 60 /dev/sdc

保持设置在系统重启后不失效

vim /etc/udev/rules.d/69-hdparm.rules
ACTION=="add", SUBSYSTEM=="block", KERNEL=="sdc", RUN+="/usr/bin/hdparm -B 127 -S 246 /dev/sdc"

查看磁盘当前电源状态

hdparm -C /dev/sdb1

使用 smartctl 命令检查磁盘

检查磁盘健康状态

smartctl -H /dev/sda

查看磁盘详细情况

smartctl -a /dev/sda

对磁盘进行短期测试

smartctl -C -t short /dev/sda

查看磁盘测试结果

smartctl -l selftest /dev/sda

检查磁盘错误日志

smartctl -l error /dev/sda

检测修复硬盘坏块

假设我们要检查的硬盘是/dev/sdb

badblocks -s -v -o sdb.log /dev/sdb

这样就可以对硬盘进行只读扫描,自动获取硬盘块数目并扫描全部块,将扫描日志输出到屏幕同时记录在 sdb.log 文件中。

如果找到了坏道,可以进行写入扫描进行修复。写入扫描遇到坏道的时候会自动重映射。写入扫描会覆盖原有数据,所以请先备份。写入扫描速度很低,所以应该只扫描只读扫描时候发现错误的部分。

首先使用 umount 卸载磁盘

umount /dev/sdb

如果提示Device busy是因为有程序在使用这个分区,需要将这些进程都关闭。需要使用命令查看哪些进程使用了该目录。

fuser -m /dev/sdb1
fuser -m -v -i -k /dev/sdb1

第一条fuser命令列出使用/dev/sdb1的进程 ID,第二条列出 PID 并 kill 掉进程(带有提示确认),建议先使用第一条命令列出 PID,然后针对查看是哪些类型的进程,不要盲目杀死进程。

卸载完磁盘后开始修复坏道

修复命令如下,其中 -s 表示给出进度,-w 表示写入修复的,后面是结束(END)和开始(START)块号,注意END在前,START在后。

badblocks -w -s /dev/sdb END START

修复完成后重新检查坏块区

badblocks -s -v /dev/sdb END START

最后将硬盘挂载回去


常用命令

查看某个目录的子目录文件夹大小并排序(单位为MB)

du -hm --max-depth=1 ./ | sort -n

查看当前目录及其子目录文件数量

find . -type f | wc -l
×