質問: 起動時にスクリプトを実行する方法は? スクリプトを実行する方法自動 ubuntuの起動時に、起動後に手動で実行する必要はありませんか?
回答: cron上位の投票とは異なる回答が実装されましたこの回答は引き続きcronを使用しますが、上位の回答とは異なる方法を使用します。これはubuntu 16.04以降で機能しますが、おそらくもっと早くサポートされるでしょう。 16.04以降、コンピューターが起動するときにcronを使用してジョブを実行し始めただけです。cronはいつ実行されますか?コメントでは、誰かが「いつ実行するのか」と尋ねました。 syslog/journalctlで次のことがわかります。$ journalctl -b | grep cron jan 02 16:54:40 alien cron[919]: (cron) info (pidfile fd = 3) jan 02 16:54:40 alien cron[919]: (cron) info (running @reboot jobs) jan 02 16:54:40 alien systemd[1]: started run anacron jobs. jan 02 16:54:40 alien anacron[949]: anacron 2.3 started on 2018-01-02 jan 02 16:54:40 alien anacron[949]: normal exit (0 jobs run) jan 02 16:54:40 alien cron[952]: pam_unix(cron:session): session opened for user root by (uid=0) jan 02 16:54:40 alien cron[954]: pam_unix(cron:session): session opened for user root by (uid=0) jan 02 16:54:40 alien cron[951]: pam_unix(cron:session): session opened for user root by (uid=0) jan 02 16:54:40 alien cron[950]: pam_unix(cron:session): session opened for user root by (uid=0) jan 02 16:54:40 alien cron[985]: (root) cmd ( /usr/local/bin/cron-reboot-cycle-grub-background) jan 02 16:54:40 alien cron[954]: pam_unix(cron:session): session closed for user root jan 02 16:54:40 alien cron[919]: sendmail: cannot open smtp.gmail.com:587 jan 02 16:54:40 alien cron[952]: pam_unix(cron:session): session closed for user root jan 02 16:54:40 alien cron[919]: sendmail: cannot open smtp.gmail.com:587 jan 02 16:54:40 alien cron[950]: pam_unix(cron:session): session closed for user root 注意すべきことの1つは、cronがジョブ実行のステータスをメールで送信でき、@rebootジョブが実行されるため、スクリプトにsleepコマンドを入力しない限り、初期のネットワークマネージャーとメールが実行されないことです( s)。スクリプトを置く場所スクリプトをディレクトリ/etc/cron.dに配置します。$ ll /etc/cron.d total 44 drwxr-xr-x 2 root root 4096 nov 26 19:53 ./ drwxr-xr-x 139 root root 12288 dec 31 13:58 ../ -rw-r--r-- 1 root root 244 dec 28 2014 anacron -rw-r--r-- 1 root root 148 feb 18 2017 cycle-grub-background -rw-r--r-- 1 root root 138 mar 5 2017 display-auto-brightness -rw-r--r-- 1 root root 460 nov 26 19:53 nvidia-hdmi-sound -rw-r--r-- 1 root root 102 feb 9 2013 .placeholder -rw-r--r-- 1 root root 224 nov 19 2016 touch-vmlinuz -rw-r--r-- 1 root root 700 aug 5 11:15 turn-off-hyper-threading スクリプトはどのように見えますか?以下に、各ブートを実行するためにセットアップしたスクリプトをいくつか示します。$ cat /etc/cron.d/cycle-grub-background shell=/bin/sh path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin @reboot root /usr/local/bin/cron-reboot-cycle-grub-background $ cat /etc/cron.d/touch-vmlinuz shell=/bin/sh path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin @reboot root touch "/boot/vmlinuz-"`uname -r`