Apa cara yang baik untuk me-reboot daftar komputer windows di domain windows? Dengan asumsi pengontrol domain windows tidak memiliki layanan untuk melakukan ini, silakan membuat rekomendasi untuk skrip.
Bisakah saya mencantumkan nama host dan mengulangi meskipun nama host untuk mengirim perintah restart ke masing-masing? Bisakah saya mendapatkan daftar nama host dari server DHCP yang berjalan di kotak Windows 2008 saat runtime skrip?
Bahasa scripting pilihan saya dari yang paling tidak diinginkan adalah: PHP, javascript, Bash, Python (tahu sangat sedikit), VB (kenal tapi tidak suka)
windows-server-2008
active-directory
ditenagai uap
sumber
sumber
Jawaban:
Jika GPO bukan pilihan Anda, dan Anda ingin memilih opsi kedua (batching
shutdown /m
) Mark Henderson, Anda dapat membuat pekerjaan Anda lebih mudah dengan mengelompokkan shutdown secara batch sehingga akan melakukannya secara paralel daripada serial. Membutuhkan PowerShell pada bagian dari stasiun admin, tetapi sangat bagus .Apa yang dilakukan fragmen ini adalah menelurkan banyak pekerjaan latar belakang yang dijalankan secara paralel karena ada mesin di $ ComputerList. Ini dapat membuat mematikan Semua Hal terjadi jauh lebih cepat.
sumber
-AsJob
sedikit ajaib di sini.Anda dapat melakukan ini dengan Preferensi Kebijakan Grup dengan membuat tugas terjadwal baru yang akan berjalan setiap malam pada waktu tertentu. Perintah untuk tugas itu seharusnya
shutdown /r /t 0
. Anda kemudian dapat menautkan GPO tersebut ke OU atau OU yang memiliki komputer Anda di dalamnya.Anda mungkin ingin menggunakan opsi "Jalankan Program Ini Pada Interval Acak" yang diatur antara 10-15 menit. Memiliki setiap komputer menyala pada saat yang sama dapat berakibat buruk bagi pembobol Anda jika Anda tidak berhati-hati. Anda mungkin juga ingin memeriksa opsi untuk hanya menjalankan tugas jika komputer telah diam selama x jam, jika seseorang menarik semua-nighter. Anda tidak ingin membunuh pekerjaan sepanjang malam dengan mem-boot ulang seseorang yang mencoba membuat tenggat waktu.
sumber
Dua pilihan:
Buat tugas terjadwal melalui GPO yang menjalankan
shutdown /r /f /t 0
ataushutdown /g /f /t 0
pada setiap mesin yang ingin Anda reboot. (lihatshutdown /?
lebih detail.Buat kumpulan yang berjalan
shutdown /m [computer name] /r /f /t 0
dari komputer pusat (mungkin pengontrol domain?). Lingkarkan untuk setiap komputer yang ingin Anda reboot (ubah[computer name]
). Ini berarti bahwa komputer tidak akan dihidupkan ulang jika tidak dapat dijangkau karena alasan apa pun, dan harus dijalankan dari akun yang memiliki hak untuk memulai ulang komputer.Anda harus dapat menulis file batch yang loop melalui daftar komputer yang ditarik dari direktori aktif dan menjalankan perintah, namun saya tidak punya waktu untuk menulisnya hari ini (dan saya tidak mau mengujinya bahkan jika Saya memang menulisnya, kalau tidak saya akan dibakar karena me-reboot komputer everyones di tengah hari).
sumber
start cmd /c shutdown /m computer /r /f /t 0
) Atau menggunakan beberapa logika untuk memeriksa apakah online, jika tidak, penundaan untuk komputer offline dapat menjadi signifikan.Cara terbaik untuk melakukan itu adalah memecat orang yang memiliki gagasan bahwa ini diperlukan dan melakukan apa yang semua orang lakukan - tidak melakukan itu.
sumber