Debian9/10 启用 Google BBR 加速

一、加载BBR内核模块

lsmod | grep bbr

如果回显tcp_bbr 20480 14则表示已加载,否则请使用如下命令加载BBR内核模块

modprobe tcp_bbr
echo "tcp_bbr" | tee -a /etc/modules-load.d/modules.conf

二、启用BBR网络优化

sysctl net.ipv4.tcp_available_congestion_control

如果回显net.ipv4.tcp_available_congestion_control = bbr cubic reno则表示已启用优化,否则请使用如下命令启用BBR网络优化

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p

rsync多进程并发执行同步数据

原始命令

rsync -aPv --delete rsync://1.2.3.4/dp1/ /mnt/backup

多线程模式

#!/bin/sh
#

src='rsync://1.2.3.4/dp1' #源路径,结尾不带斜线
dst='/mnt/backup' #目标路径,结尾不带斜线

opt="-aPv --delete" #同步选项

num=16 #并发进程数
depth='5 4 3 2 1' #归递目录深度

task=/tmp/`echo $src$ | md5sum | head -c 16`
[ -f $task-next ] && cp $task-next $task-skip
[ -f $task-skip ] || touch $task-skip

# 创建目标目录结构
rsync $opt --include "*/" --exclude "*" $src/ $dst

# 从深到浅同步目录
for l in $depth ;do
    # 启动rsync进程
    for i in `find $dst -maxdepth $l -mindepth $l -type d`; do
        i=`echo $i | sed "s#$dst/##"`
        if `grep -q "$i$" $task-skip`; then
            echo "skip $i"
            continue
        fi
        while true; do
            now_num=`ps axw | grep rsync | grep $dst | grep -v '\-\-daemon' | wc -l`
            if [ $now_num -lt $num ]; then
                echo "rsync $opt $src/$i/ $dst/$i" >>$task-log
                rsync $opt $src/$i/ $dst/$i &
                echo $i >>$task-next
                sleep 1
                break
            else
                sleep 5
            fi
        done
    done
done

# 最终单进程验证
while true; do
    sleep 5
    now_num=`ps axw | grep rsync | grep $dst | grep -v '\-\-daemon' | wc -l`
    if [ $now_num -lt 1 ]; then
        echo "rsync $opt $src/ $dst" >>$task-log
        rsync $opt $src/ $dst
        break
    fi
done

制作MacOS启动U盘

真是好记性不如烂笔头啊,以前经常用的命令,一时竟然没想起来

sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/your-disk-name /Applications/Install\ macOS\ Mojave.app —nointeraction

CentOS7之LVM磁盘扩容

创建文件系统,并设置t为8e

fdisk /dev/sdb

扩容LVM卷

pvcreate /dev/sdb1
vgextend centos /dev/sdb1
lvextend -l +100%FREE /dev/centos/root

若根目录/文件系统为ext4

resize2fs /dev/centos/root

若根目录/文件系统为xfs

xfs_growfs /dev/centos/root

查看磁盘状态

df -h

Ubuntu下刷极路由不死uboot

今天帮朋友刷2个极路由的uboot,但他那边只有一台Ubuntu-Server可远程登陆。
悲剧的我,只好SSH连接他本地的Ubuntu,然后再连接极路由刷写固件:

极路由1s

wget https://breed.hackpascal.net/breed-mt7620-hiwifi-hc5761.bin

scp -P 1022 root@192.168.199.1:/tmp/
ssh -p 1022 root@192.168.199.1

输入密码,登陆系统后,执行刷写命令

mtd write /tmp/breed-mt7620-hiwifi-mt7620.bin u-boot

极路由3

wget https://breed.hackpascal.net/breed-mt7620-hiwifi-hc5861.bin

scp -P 1022 root@192.168.199.1:/tmp/
ssh -p 1022 root@192.168.199.1

输入密码,登陆系统后,执行刷写命令

mtd write /tmp/breed-mt7620-hiwifi-hc5861.bin u-boot

清理macOS蛋疼的可清除空间

自从macOS有了这个不着调的提示,一直让我这个强迫症患者无比揪心,于是各方寻访与尝试,总结如下2个方法可用于手动清理这部分空间。

1.清空 ~/library/caches 文件夹里面的内容(小白可以用这个方法试试)

2.命令行里跑一下 sudo diskutil secureErase freespace 0 /dev/disk1s1 (请自行替代分区数字,新手请绕道)

制作MacOS安装ISO/光盘映像文件

昨天,想要在家庭服务器上黑苹果,先是破解ESXi,添加了MaxOS描述文件。
现在需要准备MacOS安装ISO,忽然发现家里的30Mb光纤下载7GB的文件还是需要很久滴。
忽然想起,上次更新 MacBook Pro 好像没有删除安装文件,那么,直接在本地转换安装文件为ISO映像吧,只要区区几分钟就搞定。

#!/bin/bash
#

# Create the Blank ISO Image of 6GB with a Single Partition - Apple Partition Map
hdiutil create -o /tmp/Mojave -size 6g -layout SPUD -fs HFS+J -type SPARSE

# Mount the Blank Sparse Image
hdiutil attach /tmp/Mojave.sparseimage -noverify -nobrowse -mountpoint /Volumes/install_build

# Create the installer image
sudo ./Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/install_build --nointeraction

# Give the installer image an icon
cp "./Install macOS Mojave.app/Contents/Resources/InstallAssistant.icns" "/Volumes/Install macOS Mojave/.VolumeIcon.icns"
SetFile -a C "/Volumes/Install macOS Mojave/"

# Unmount the Install Image
hdiutil detach /Volumes/Install\ macOS\ Mojave

# Resize the SparseImage to its minimum
#hdiutil compact /tmp/Mojave.sparseimage
#hdiutil resize -size min /tmp/Mojave.sparseimage

# Convert the Sparse Image to ISO/CD
hdiutil convert /tmp/Mojave.sparseimage -format UDTO -o /tmp/Mojave

# Rename the ISO Image and move it to the desktop
mv /tmp/Mojave.cdr ~/Desktop/Mojave.iso
rm /tmp/Mojave.sparseimage