Kami memiliki di organisasi kami sekitar ~ 500 mesin RedHat Linux.
Di semua mesin kami menginstal aplikasi dan layanan di bawah /etc/init.d
, dan server RAC oracle. Kami bermaksud melakukan pembaruan yum di semua mesin dan setelah itu melakukan boot ulang.
Jadi saya bertanya-tanya perintah apa yang lebih aman:
reboot
atau
shutdown -r now
reboot
itu hanya perintah warisan dan masih ada hanya untuk compat mundur.Jawaban:
Untuk sistem Red Hat, tidak ada perbedaan fungsional antara
reboot
danshutdown -r now
.Lakukan apa pun yang lebih mudah bagi Anda.
sumber
halt
,,reboot
danpoweroff
tidak menerima pesan alasan atau waktu, seperti dijelaskan Mikhail T. . Saya pikir saya akan mempertimbangkan satu alat untuk dapat melakukan sesuatu yang lain tidak memungkinkan untuk menjadi "perbedaan fungsional".Shutdown lebih disukai karena memungkinkan Anda untuk menentukan alasan tindakan drastis - sesuatu yang harus selalu Anda lakukan. Pesan akan direkam dalam log untuk anak cucu. Sebagai contoh:
shutdown -r now 'Kernel upgrade requires reboot'
Anda juga dapat melakukan boot ulang terjadwal - dengan menentukan sesuatu selain
now
sebagai waktu boot ulang:shutdown -r 22:00 'Work around kernel memory leak'
Kemudian pengguna Anda akan mendapatkan pengingat berkala untuk keluar dan seterusnya - prosesnya akan lebih teratur dan profesional.
sumber
Jika Anda melihatnya, di RHEL 7 keduanya
/sbin/shutdown
dan/sbin/reboot
sebenarnya hanya symlinks kesystemctl
perintah systemd . Jadi, gunakan apa pun yang Anda inginkan. Tidak ada perbedaan fungsional seperti yang dikatakan ewwhite, bahkan pada rilis RHEL sebelumnya yang belum menggunakan systemd.sumber
/sbin/shutdown
dan/sbin/reboot
jangan tidak berperilaku sama dalam semua kasus (khususnya:/sbin/shutdown
! Tidak restart secara default), jadi jika mereka symlinked ke executable yang sama, maka yang dieksekusi keharusan memeriksaARGV[0]
dan menyesuaikan perilakunya sesuai. Meskipun hal itu tentu saja mengurangi risiko perbedaan yang tidak disengaja , itu bukan bukti kuat bahwa tidak ada perbedaan fungsional yang disengaja yang mungkin ingin diketahui OP.reboot
disinkronkan dengansystemctl
, Anda tidak dapat menggunakan misalnyareboot status whatever.service
seperti yang Anda lakukan dengan yang terakhir, bukan?Menggunakan
reboot
lebih aman.Menggunakan
reboot
maksud Anda jelas dan tidak ada cara untuk salah ketik untuk hal lain sepertishutdown -t now
yang dapat menyebabkan beberapa sakit kepala jika Anda menggunakan pada server jauh dengan kontrol terbatas.sumber
Untuk RHEL modern, Anda disarankan untuk menggunakan perintah systemctl seperti dirangkum di sini : [terkini] Distribusi RHEL harus menggunakan perintah systemctl baru untuk mengeluarkan poweroff / reboot. Sebagaimana dinyatakan dalam halaman reboot dan shutdown mereka adalah "perintah warisan yang tersedia hanya untuk kompatibilitas."
Namun, jika Anda menggunakan banyak distribusi yang berbeda, atau distribusi dari berbagai vintages, maka mungkin bertahan
shutdown -r now 'reason for shutdown'
.Alasan utama untuk menggunakan
reboot
adalah untuk menghindari risiko lupa menambahkan -r ketika menggunakanshutdown -r
pada mesin jarak jauh, yang dengan mudah dapat mengakibatkan tidak dapat login lagi dan harus menggunakan admin jarak jauh (jika tersedia) untuk memulai kembali mesin.sumber
Sistem yang lebih tua jelas membuat perbedaan antara
shutdown
danreboot
. Yang terakhir tidak akan mematikan layanan atau bahkan harus menyinkronkan buffer disk. Dalam lingkungan yang heterogen - atau untuk menghindari preseden yang bisa berbahaya di masa depan ketika menghadapi implementasi * ix lainnya - ada nilai dalam membiasakan dirishutdown
.sumber