Linux 相当于 Windows 的启动文件夹

Linux 相当于 Windows 的启动文件夹

我有一个脚本,我想在 Linux 启动时运行它,我知道 Windows 有一个启动文件夹,Linux 也有一个。我做了一些研究,发现各种文件有许多相互矛盾的答案。路径:

/etc/systemd/system

似乎被使用了。另一个是:

/etc/rc.local

我还看到了:

/etc/init.d

我只想找到一个与 Windows 启动文件夹相同的 Linux 路径,该路径存在于所有或至少大多数 Linux 发行版中。我还希望能够将脚本放在该目录中,使其在启动时运行。什么路径可以满足这些要求。

答案1

大多数自动启动形式取决于您的安装:您使用的初始化系统(sysv 与 systemd 与 upstart)、您的桌面环境(GNOME/KDE 与非 XDG)等等。

Cron 存在于大多数 Linux 系统上,可用于自动启动。在您的文件中添加一行/etc/crontab

@reboot /usr/bin/blah

/usr/bin/blah您要运行的命令在哪里。

如果您希望程序在您登录时启动,并且您正在使用兼容 XDG 的桌面环境(例如 GNOME 或 KDE),请将文件放入.desktop。有关文件~/.config/autostart的示例.desktop,请参阅Arch 维基

或者,如果您的 Linux 发行版使用 systemd,您可以编写一个单元文件。例如:

[Unit]
Description=autostart something

[Service]
Type=oneshot
ExecStart=/usr/bin/blah

[Install]
WantedBy=multi-user.target

输入上述文本/etc/systemd/system/blah.servicesystemctl daemon-reload以 root 身份运行以注册服务。接下来,运行systemctl enable blah.service以启用新服务的自动启动。

有关如何编写 systemd 单元文件的详细信息,请参阅此链接

相关内容