19 自动化
开机自动挂载:/etc/fstab
/etc/fstab 文件用于配置开机自动挂载的文件系统。 每个文件系统的挂载信息占一行,格式为:
bash
<设备> <挂载点> <文件系统类型> <挂载选项> <转储频率> <检查顺序>例如,我想在开机时自动挂载 Windows 的 E 盘(假设为/dev/nvme0n1p10)。
- 找到 E 盘的 UUID 和文件系统类型。bash提示,根目录必须最先挂载。
binzz@C7VF:~$ lsblk -f /dev/nvme0n1p10 NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS nvme0n1p10 ntfs 2CF0A71EF0A6ECF0 binzz@C7VF:~$ - 编辑
/etc/fstab文件,添加以下行:bash共有六个参数,分别是 UUID、挂载点、文件系统类型、挂载选项、转储频率、检查顺序。 最后两个参数可以不管,通常都填0。挂载选项详情见 https://linux.vbird.org/linux_basic/centos7/0230filesystem.php#fstab (稍微向下滑一点,可以看到一个表格,就是挂载选项的说明)。UUID=2CF0A71EF0A6ECF0 /media/binzz/2CF0A71EF0A6ECF0 ntfs user,exec 0 0 - 运行:bash这样 E 盘就已经挂载了。每次启动系统时,都会自动挂载 E 盘。
systemctl daemon-reload sudo mount -a # 根据/etc/fstab文件挂载文件系统
服务
系统级
路径:/etc/systemd/system/xx.service
ini
# frpsd.service
[Unit]
Description=FRP Server (frps)
After=network.target
[Service]
Type=simple
WorkingDirectory=/etc/frp
ExecStart=/usr/bin/frps -c /etc/frp/frps.ini
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target写好服务文件后:
bash
systemctl daemon-reload执行方法:
bash
systemctl start <服务名>开机自启动该服务:
bash
systemctl enable <服务名>用户级
路径:~/.config/systemd/user/xx.service
ini
# x11vncserver.service
[Unit]
Description=x11vnc VNC Server
After=graphical-session.target
[Service]
ExecStart=x11vnc -display :0 -rfbport 5901 -rfbauth %h/.vnc/x11vnc.passwd -ncache 0 -forever
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=default.target写好服务文件后:
bash
systemctl daemon-reload执行方法:
bash
systemctl --user start <服务名>开机自启动该服务:
bash
systemctl --user enable <服务名>