Linux日常
一、复制大文件显示进度🐟
二、系统u盘制作🐟
三、查看Manjaro安装的软件🐟
四、文件备份🐟
[shafish@shafish-laptop shafish]# sudo su
[root@shafish-laptop shafish]# cd /
[root@shafish-laptop shafish]# tar cvpzf system_backup_root.tar.gz \
--exclude=/proc \
--exclude=/lost+found \
--exclude=/dev \
--exclude=/lib \
--exclude=/mnt \
--exclude=/sys \
--exclude=/home \
--exclude=/run/media \
--one-file-system \
--exclude=/system_backup_root.tar.gz \
/
[root@shafish-laptop shafish]# cd /home
[root@shafish-laptop shafish]# tar cvpzf system_backup_home.tar.gz \
--exclude=/home/shafish/node_modules \
--exclude=/home/shafish/.m2 \
--exclude=/home/shafish/snap \
--exclude=/home/system_backup_home.tar.gz \
/home
五、git代理🐟
git config --global http.proxy 192.168.2.1:7890
git config --global https.proxy 192.168.2.1:7890
git config --global --unset http.proxy
git config --global --unset https.proxy
六、硬盘挂载🐟
# sudo
# 1. 插上硬盘
# 2. 查看对应设备名 (/dev/sda)
lsblk
# 3. 创建分区
fdisk /dev/sda
# 3.1 输入 n 创建一个新的分区
n
# 3.2 选择默认 p 选择主分区
p
# 3.3 输入分区号,默认从1开始,默认回车
# 3.4 first sector 起始扇区 (2048-4294967295, 默认 2048):默认回车
# 3.5 last sector 结束扇区,默认使用剩余全部(或者自己需要多少,慢慢算):回车
# 4. 保存设置
w
# 5.格式化分区
mkfs.ext4 /dev/sda1
# 6. 创建挂载点
mkdir /data
# 7. 挂载
mount /dev/sda1 /data
# 8. 设置开机自动挂载
# 8.1 查看新分区uuid (6ee49c14-xxxx-4bdd-xxxx-4e5afcd0e2fa)
blkid
# 8.2 备份默认配置
cp /etc/fstab /etc/fstab.bak
# 8.3 添加到fstab配置中 (要挂载的分区设备号 挂载点 文件系统类型 挂载选项 是否备份 是否检测)
echo "UUID=6ee49c14-xxxx-4bdd-xxxx-4e5afcd0e2fa /data ext4 defaults 0 0" >> /etc/fstab
# 9. 挂载配置 mount -a
# 10. 关机重启逝世
七、pve smb🐟
# sudo
# 1.安装smb
apt update && apt install samba -y
# 2. 验证安装 systemctl start nmbd
systemctl status nmbd
# 3. 创建共享文件夹
mkdir /data/smb/movie
# 4. 添加smb系统用户
useradd sha
smbpasswd -a sha
# 5.设置目录权限
chown -R sha /data/smb/movie
# 6. 备份默认配置
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
# 7. 开始配置
nano /etc/samba/smb.conf
# 文件末尾添加
# 共享名称
[samba-movie]
# 描述
comment = for movie
# 共享路径
path = /data/smb/movie
# 要登录
guest ok = no
# 该共享设置为只读
read-only = no
# 可浏览
browsable = no
# smb用户
write list = sha
[wd] # 自定义共享名
comment = Home Directories # 描述符,是给系统管理员看的
path = /home/wd # 共享的路径
public = yes # 是否公开,也就是是否能在网上邻居看到该共享
browseable = yes # 共享的目录是否让所有人可见
writable = yes # 是否可写
guest ok = no # 是否拒绝匿名访问,仅当安全级别为 share 时才生效
workgroup = WORKGROUP # 工作组,要设置成跟 Windows 的工作组一致
server string = Samba Server Version %v # 其他 Linux 主机查看共享时的提示符
netbios name = MYSERVER # 用于在 Windows 网上邻居上显示的主机名
hosts allow = 127. 192.168.12. 192.168.13. EXCEPT 192.168.13.13 # 指定允许访问 samba 服务器的主机
security = share # 定义安全级别
log file = /var/log/samba/log.%m # 定义日志文件,每个访问的主机会产生独立的日志文件,%m 是客户端主机名
max log size = 50 # 定义单个日志的最大容量(KB)
passdb backend = tdbsam # Samba 用户的存储方式,smbpasswd 表示明文存储,tdbsam 表示密文存储
deadtime = 10 # 客户端在10分钟内没有打开任何 Samba 资源,服务器将自动关闭会话,在大量的并发访问环境中,这样的设置可以提高服务器性能
display charset = UTF8 # 设置显示的字符集
max connections = 0 # 设置最大连接数,0表示无限制,如果超过最大连接数则拒绝连接
guest account = nobody # 设置匿名账户为nobody
load printers = yes # 是否在启动 Samba 时就共享打印机
cups options = raw # 设置打印机使用的方式
valid users = user1 user2 user3 # 指定哪些用户可以访问,如果不指定则所有用户都可访问
invalid users = user1 user2 # 指定哪些用户不可以访问
create mask = 0775 # 客户端上传文件的默认权限
directory mask = 0775 # 客户端创建目录的默认权限
write list = user1 user2 user3 # 设置可对文件进行写操作的用户
admin users = user1 # 设置共享目录的管理员,具有完全权限
八、挂载远程smb🐟
# 1. 安装挂载smb相关组件
apt install cifs-utils -y
# 2. 本地挂载目录
mkdir /data/movie
# 3. 挂载smb mount -t cifs -o username=sha,password=xxx //192.168.2.100/samba-movie /data/movie
nano /etc/fstab
//192.168.2.100/samba-movie /data/movie cifs username=sha,password=xxxx 0 0
# mount -t cifs //xxx-crf23.eu-west-1.nas.aliyuncs.com/myshare /mnt -o vers=2.0,guest,uid=0,gid=0,dir_mode=0755,file_mode=0755,mfsymlinks,cache=strict,rsize=1048576,wsize=1048576
九、scp远程传输文件🐟
# 本地 to 远程
scp /run/media/shafish/movie/xxxfile root@192.168.2.100:/data/smb/movie
scp -r /run/media/shafish/movie/xxxdir root@192.168.2.100:/data/smb/movie
十、mysql🐟
# 安装
apt install mysql-server
# 检查
systemctl status mysql
# 配置
mysql_secure_installation
# 授权
GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password888';
十、计算文件md5、hash值🐟
十一、bbr🐟
十二、向日葵🐟
pacman -S yay
yay -S sunloginclient
systemctl start runsunloginclient.service
systemctl enable runsunloginclient.service
十三、aliyundrive-fuse🐟
apt-get -y install python3-pip
pip install aliyundrive-fuse
mkdir -p /data/smb/aliyun/data
vim /usr/lib/systemd/system/aliyun.service
[Unit]
Description=AliyunDrive FUSE
After=network.target
[Service]
Type=simple
PermissionsStartOnly=true
ExecStart=/usr/local/bin/aliyundrive-fuse --allow-other -r xxxtoken -w /var/run/aliyundrive-fuse /data/smb/aliyun/data
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl start aliyun.service
systemctl status aliyun.service
systemctl enable aliyun.service
十四、bspwm🐟
sudo pacman -Syu bspwm sxhkd
echo "sxhkd &
exec bspwm" >> ~/.xinitrc
install -Dm755 /usr/share/doc/bspwm/examples/bspwmrc ~/.config/bspwm/bspwmrc
install -Dm644 /usr/share/doc/bspwm/examples/sxhkdrc ~/.config/sxhkd/sxhkdrc
bspc monitor -d I II III IV V VI VII VIII IX X
https://wiki.archlinux.org/title/Bspwm
十五、特定目录下查找文件内容🐟
十六、unzip中文解压乱码🐟
十七、vim中文乱码🐟
vim ~/.vimrc
十八、netstat🐟
使用netstat报错command not found
apt install net-tools
netstat -aptn
十九、编辑文件时Error opening terminal: alacritty🐟
缺少终端的 terminfo
文件
- 使用 sudo tic -xe alacritty,alacritty-direct extra/alacritty.info
安装
- 或者 echo "TERM=xterm-256color ssh" >> ~/.bashrc
即可
ref:issues
二十、查看目录文件大小🐟
du -hS xxx目录 | sort -nr
-h, --human-readable 以K,M,G为单位,显示文件的大小
-s, --summarize 只显示总计的文件大小
-S, --separate-dirs 显示时并不含其子文件夹的大小
-d, --max-depth=N 显示子文件夹的深度(层级)
十三、cp显示进度🐟
ref: https://cloud.tencent.com/developer/article/2187555
wget http://ftp.gnu.org/gnu/coreutils/coreutils-9.4.tar.gz
tar -zxvf coreutils-9.4.tar.gz
cd coreutils-9.4
https://github.com/jarun/advcpmv/blob/master/advcpmv-0.9-9.4.patch
## 编译
patch -p1 -i advcpmv-0.9-9.4.patch
./configure
make
## 使用
cp ./src/cp /usr/local/bin/cpg
cp ./src/mv /usr/local/bin/mvg
cpg -g xxxfile xxxDire
十四、vdhcoapp🐟
Video DownloadHelper流媒体下载插件
# Re-run that script to update the coapp.
curl -sSLf https://github.com/aclap-dev/vdhcoapp/releases/latest/download/install.sh | bash
# uninstall
To uninstall, run '~/.local/share/vdhcoapp/vdhcoapp uninstall' and remove '~/.local/share/vdhcoapp'
十五、配置终端代理🐟
export http_proxy="http://192.168.0.109:10001"
export https_proxy=$http_proxy
unset http_proxy
unset https_proxy
十六、批量修改文件内容🐟
- 单文件修改格式:
sed -i 's/旧内容/新内容/g' 文件路径
- 多文件修改格式:
sed -i 's/(\/)/(..\/..\/index.md)/g' docker_config.md
sed -i 's/(\/)/(..\/..\/index.md)/g' `grep (\/) -rl ./`
创建日期:
2022年6月7日 22:51:35
最后更新: 2024年6月21日 22:29:28
最后更新: 2024年6月21日 22:29:28