Loading... 在Debian中,可以通过创建一个systemd服务或使用 `/etc/rc.local`脚本来实现开机自动执行命令。以下是两种方法的步骤: ### 方法一:创建systemd服务 1. **创建服务文件**: 打开终端,创建一个新的systemd服务文件: ```bash sudo nano /etc/systemd/system/scsi-disk-config.service ``` 2. **编辑服务文件**: 将以下内容复制到文件中: ```ini [Unit] Description=Configure SCSI Disk Runtime Start/Stop and Shutdown After=network.target [Service] Type=oneshot ExecStart=/bin/sh -c 'for i in /sys/class/scsi_disk/*/manage_runtime_start_stop; do echo 1 > $i; done' ExecStart=/bin/sh -c 'for i in /sys/class/scsi_disk/*/manage_shutdown; do echo 1 > $i; done' [Install] WantedBy=multi-user.target ``` 3. **保存并退出**: 按 `Ctrl+O`保存文件,然后按 `Enter`确认,最后按 `Ctrl+X`退出编辑器。 4. **启用服务**: 使systemd读取新服务文件并启用它,以确保开机自动运行: ```bash sudo systemctl daemon-reload sudo systemctl enable scsi-disk-config.service ``` 5. **立即启动服务(可选)**: 如果你想立即执行该服务而不重启系统,可以运行: ```bash sudo systemctl start scsi-disk-config.service ``` ### 方法二:使用 `/etc/rc.local` 1. **编辑 `rc.local`文件**: 如果 `/etc/rc.local`文件不存在或被删除,可以创建一个新的文件: ```bash sudo nano /etc/rc.local ``` 2. **编辑文件内容**: 在文件中添加你的命令,确保在 `exit 0`之前添加: ```bash #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. # 在此处添加你的命令 for i in /sys/class/scsi_disk/*/manage_runtime_start_stop; do echo 1 > $i; done for i in /sys/class/scsi_disk/*/manage_shutdown; do echo 1 > $i; done exit 0 ``` 3. **保存并退出**: 按 `Ctrl+O`保存文件,然后按 `Enter`确认,最后按 `Ctrl+X`退出编辑器。 4. **设置文件权限**: 确保 `rc.local`文件具有可执行权限: ```bash sudo chmod +x /etc/rc.local ``` 5. **启用 `rc.local`服务(对于systemd系统)**: 如果你的Debian系统使用systemd(现代Debian版本通常如此),需要启用rc-local服务: ```bash sudo systemctl enable rc-local.service ``` 通过以上任一方法,你的命令将在每次系统启动时自动执行。 最后修改:2025 年 04 月 21 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏