Rumah  >  Artikel  >  Tutorial sistem  >  Penjelasan terperinci tentang cara melaksanakan perintah atau skrip secara automatik apabila Linux bermula

Penjelasan terperinci tentang cara melaksanakan perintah atau skrip secara automatik apabila Linux bermula

王林
王林ke hadapan
2024-02-11 15:30:04946semak imbas

Saya sentiasa ingin tahu tentang perkara yang berlaku semasa proses boot sistem Linux dan log masuk. Dengan menekan butang kuasa atau melancarkan mesin maya, anda memulakan rangkaian acara yang akan membawa anda ke sistem berfungsi sepenuhnya, kadangkala dalam masa kurang daripada seminit. Perkara yang sama berlaku apabila anda log keluar atau menutup komputer anda.

详解在 Linux 启动时,如何自动执行命令或脚本

Saya sentiasa ingin tahu tentang apa yang berlaku semasa proses boot sistem Linux dan log masuk. Dengan menekan butang kuasa atau melancarkan mesin maya, anda memulakan rangkaian acara yang akan membawa anda ke sistem berfungsi sepenuhnya, kadangkala dalam masa kurang daripada seminit. Perkara yang sama berlaku apabila anda log keluar atau menutup komputer anda.

Apa yang lebih menarik ialah anda juga boleh meminta sistem melakukan operasi tertentu apabila sistem dimulakan dan apabila pengguna log masuk atau keluar.

Dalam artikel ini, kami akan meneroka kaedah tradisional untuk mencapai matlamat ini dalam sistem pengendalian Linux.

Nota: Kami menganggap bahawa kami menggunakan Bash sebagai shell utama untuk log masuk dan log keluar. Jika anda menggunakan cangkerang lain, beberapa kaedah mungkin tidak berfungsi. Jika anda mempunyai soalan lain, sila rujuk dokumentasi Shell yang sepadan.

Laksanakan skrip Linux semasa permulaan

Terdapat dua cara tradisional untuk melaksanakan arahan atau skrip semasa permulaan:

Kaedah #1 – Menggunakan tugas cron

Selain format biasa (minit/jam/hari/bulan/minggu), penjadual cron juga menyokong arahan @reboot. Parameter selepas arahan ini ialah laluan mutlak skrip (skrip yang akan dilaksanakan semasa permulaan). Walau bagaimanapun, terdapat dua perkara yang perlu diperhatikan dengan pendekatan ini:

  • a) Daemon cron mesti sedang berjalan (biasanya ia akan berjalan), dan
  • b) Skrip atau fail crontab mesti mengandungi pembolehubah persekitaran yang diperlukan (jika ada, lihat StackOverflow untuk butiran lanjut).

Kaedah #2 – Menggunakan /etc/rc.d/rc.local

Kaedah ini juga sah untuk pengedaran Linux berasaskan systemd. Walau bagaimanapun, untuk menggunakan kaedah ini, anda perlu memberikan kebenaran pelaksanaan kepada fail /etc/rc.d/rc.local:

# chmod +x /etc/rc.d/rc.local

Kemudian tambahkan skrip di bahagian bawah fail ini.

Rajah di bawah menggambarkan cara menjalankan dua skrip sampel (/etc/rc.d/rc.local/home/gacanepa/script1.sh dan /home/gacanepa/script2.sh) masing-masing menggunakan tugas cron dan rc.local.
script1.sh:

#!/bin/bash
DATE=$(date +'%F %H:%M:%S')
DIR=/home/gacanepa
echo "Current date and time: $DATE" > $DIR/file1.txt

script2.sh:

#!/bin/bash
SITE="Tecmint.com"
DIR=/home/gacanepa
echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt
详解在 Linux 启动时,如何自动执行命令或脚本

*Laksanakan skrip Linux semasa permulaan*

Ingat, pastikan anda memberikan kebenaran pelaksanaan kepada dua skrip sampel terlebih dahulu:

$ chmod +x /home/gacanepa/script1.sh
$ chmod +x /home/gacanepa/script2.sh

Laksanakan skrip Linux semasa log masuk atau log keluar

Untuk melaksanakan skrip semasa log masuk atau log keluar, anda perlu menggunakan fail ~.bash_profile dan ~.bash_profile. Dalam kebanyakan kes, yang terakhir perlu dibuat secara manual. Di bahagian bawah setiap fail, tambahkan kod skrip panggilan, seperti yang ditunjukkan dalam contoh sebelumnya, untuk mencapai fungsi ini.

Ringkasan

Artikel ini terutamanya memperkenalkan cara melaksanakan skrip semasa memulakan, log masuk dan log keluar daripada sistem.

Atas ialah kandungan terperinci Penjelasan terperinci tentang cara melaksanakan perintah atau skrip secara automatik apabila Linux bermula. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lxlinux.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam