Perintah Chkconfig digunakan untuk menyiapkan, melihat, atau mengubah layanan yang dikonfigurasi untuk memulai secara otomatis selama startup sistem.
Artikel ini berisi 7 contoh praktis yang menjelaskan cara menggunakan perintah chkconfig.
1. Periksa status Startup Layanan dari Shell Script
Ketika Anda menjalankan perintah chkconfig hanya dengan nama layanan, itu mengembalikan true jika layanan dikonfigurasi untuk startup. Cuplikan kode berikut menunjukkan cara memeriksa apakah suatu layanan dikonfigurasi untuk memulai atau tidak dari skrip shell.
# vi check.sh chkconfig network && echo "Network service is configured" chkconfig junk && echo "Junk service is configured" # ./check.sh Network service is configured
Anda juga dapat secara khusus memeriksa apakah itu dikonfigurasi untuk run level tertentu atau tidak.
# vi check1.sh chkconfig network --level 3 && echo "Network service is configured for level 3" chkconfig network --level 1 && echo "Network service is configured for level 1" # ./check1.sh Network service is configured for level 3
2. Lihat Status Layanan Startup Saat Ini
Opsi –list menampilkan semua layanan dengan status konfigurasi startup saat ini.
# chkconfig --list abrtd 0:off 1:off 2:off 3:on 4:off 5:on 6:off acpid 0:off 1:off 2:off 3:off 4:off 5:off 6:off atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off ...
Untuk melihat hanya layanan yang dikonfigurasi untuk dimulai selama startup sistem, lakukan hal berikut. Harap dicatat bahwa ini mengasumsikan bahwa tingkat startup sistem Anda adalah 3.
chkconfig --list | grep 3:on
Catatan :Untuk melihat semua level run sistem yang tersedia, lihat 6 Tahapan Proses Boot Linux
Untuk melihat konfigurasi startup layanan tertentu, ambil output dari ‘chkconfig –list’ untuk layanan tersebut.
chkconfig --list | grep network
3. Tambahkan Layanan baru ke Startup
Gunakan opsi –add untuk menambahkan layanan tertentu ke daftar layanan yang akan dimulai selama sistem reboot.
Contoh berikut menunjukkan cara menambahkan layanan baru (misalnya, iptables) ke daftar layanan yang perlu dimulai. Perintah 'chkconfig –add' juga akan mengaktifkan level 2, 3, 4 dan 5 secara otomatis seperti gambar di bawah ini.
# chkconfig --list | grep iptables # chkconfig --add iptables # chkconfig --list | grep iptables iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Catatan:“chkconfig –add” hanya menambahkan layanan yang ada ke daftar startup. Jika layanan tidak ada, Anda harus menginstalnya terlebih dahulu sebelum menambahkannya ke daftar startup sistem. Meskipun ini cukup jelas, perlu disebutkan, karena seorang pemula mungkin melakukan kesalahan ini.
4. Menghapus Layanan Dari Daftar Startup
Contoh berikut menunjukkan bahwa layanan ip6tables dikonfigurasi untuk startup.
# chkconfig --list | grep ip6tables ip6tables 0:off 1:off 2:off 3:on 4:off 5:off 6:off
Untuk menghapusnya dari daftar startup, gunakan opsi –del seperti yang ditunjukkan di bawah ini.
# chkconfig --del ip6tables # chkconfig --list | grep ip6tables
5. Mengaktifkan atau Mematikan Layanan untuk Run Level yang Dipilih
Terkadang Anda mungkin tidak ingin menghapus seluruh layanan. Sebagai gantinya, Anda mungkin hanya ingin mengaktifkan atau menonaktifkan tanda untuk run level tertentu (untuk layanan tertentu).
Contoh berikut akan mematikan layanan nfserver untuk level 5
# chkconfig --level 5 nfsserver off
Anda juga dapat menggabungkan beberapa level. Contoh berikut akan mematikan nfsserver untuk level 3 dan 5.
# chkconfig --level 35 nfsserver off
6. File Skrip di bawah Subdirektori rc.d
Setiap kali Anda menambahkan atau menghapus layanan dari kontrol chkconfig, ia melakukan hal berikut di bawah sub-direktori /etc/rc.d.
- Saat perintah chkconfig –add dijalankan, ia membuat file tautan simbolik untuk memulai dan menghentikan layanan di bawah direktori rc yang sesuai.
- Ketika perintah chkconfig –del dijalankan, ia menghapus file tautan simbolik dari direktori rc yang sesuai.
Contoh berikut menunjukkan bahwa xinetd diaktifkan untuk run level 3 dan 5.
Jadi, xinetd akan memiliki dua file di bawah direktori rc3.d, dan dua file di bawah direktori rc5.d. File yang dimulai dengan K digunakan selama shutdown (K singkatan dari kill). File yang dimulai dengan S digunakan saat startup (S singkatan dari start).
# chkconfig --list | grep xinetd xinetd 0:off 1:off 2:off 3:on 4:off 5:on 6:off xinetd based services: # cd /etc/rc.d/rc3.d # ls | grep xinetd K08xinetd S14xinetd # cd /etc/rc.d/rc5.d # ls | grep xinetd K08xinetd S14xinetd
7. rcx.d Perubahan Direktori untuk Operasi Tambah
Saat Anda menambahkan layanan baru ke kontrol chkconfig, run level default untuk layanan tersebut akan diaktifkan secara otomatis, dan file akan dibuat di bawah direktori rcx yang sesuai.
Misalnya, jika layanan nfsserver tidak ada di kontrol chkconfig, tidak ada file startup layanan nfsserver yang akan ada di bawah direktori /etc/rc.d/rc*.d seperti yang ditunjukkan di bawah ini.
# chkconfig --list | grep nfsserver nfsserver 0:off 1:off 2:off 3:off 4:off 5:off 6:off # ls /etc/rc.d/rc3.d | grep nfsserver # ls /etc/rc.d/rc5.d | grep nfsserver
Setelah Anda menambahkan layanan nfsserver, Anda akan melihat tautan simbolis di bawah direktori ini.
# chkconfig --add nfsserver nfsserver 0:off 1:off 2:off 3:on 4:off 5:on 6:off # cd /etc/rc.d/rc3.d # ls -l | grep nfsserver lrwxrwxrwx 1 root root 12 2011-06-18 00:52 K08nfsserver -> ../nfsserver lrwxrwxrwx 1 root root 12 2011-06-18 00:52 S14nfsserver -> ../nfsserver # cd /etc/rc.d/rc5.d # ls -l | grep nfsserver lrwxrwxrwx 1 root root 12 2011-06-18 00:52 K08nfsserver -> ../nfsserver lrwxrwxrwx 1 root root 12 2011-06-18 00:52 S14nfsserver -> ../nfsserver
Saat Anda mematikan layanan baik menggunakan opsi –del atau opsi –level, file tautan simbolis yang sesuai di bawah direktori rcx.d akan dihapus seperti yang ditunjukkan di bawah ini.
# chkconfig --level 5 nfsserver off # ls /etc/rc.d/rc5.d | grep nfsserver