Cara mematikan sistem tetapi tetap membuatnya tersedia di jaringan

10

Saya sedang mencari cara menginstal server file di jaringan saya, untuk melayani data dan cadangan.

Saya ingin mesin ini tersedia setiap saat, tetapi saya lebih suka tidak menyimpannya setiap saat (untuk menghemat daya).

Apakah mungkin untuk mengatur hal-hal sehingga hal itu secara otomatis menangguhkan (atau mematikan) setelah beberapa waktu dan kemudian secara otomatis menyala kembali ketika saya mencoba untuk menyambungkannya (menggunakan beberapa bangun pada sihir LAN, tanpa harus mengirim WOL eksplisit paket)?

Ruben Vermeersch
sumber

Jawaban:

8

OS X dapat melakukan ini sekarang, seperti Snow Leopard. Itu dimungkinkan melalui Sleep Proxy Service . Ini cukup otomatis. Satu-satunya persyaratan adalah Anda memiliki perangkat Apple yang selalu aktif kedua di LAN Anda yang dapat bertindak sebagai proksi tidur. Kotak tertanam dengan daya rendah saat ini semuanya mendukung hal ini, saya percaya: Airport, Time Machine, dan Apple TV.

Namun, dalam kasus umum, saya yakin jawabannya tidak. Saya tidak mengetahui adanya OS lain yang telah mengimplementasikan layanan seperti ini. Teknologi ini adalah open source, jadi tidak ada alasan ini akhirnya tidak bisa ada di mana-mana. Mungkin masih terlalu baru untuk melihat adopsi yang meluas.

Sekarang Anda mungkin bertanya, mengapa Anda membutuhkan kotak Apple kedua di LAN?

Ketika PC tertidur, kernel - dan karena itu tumpukan jaringan - tidak berjalan, jadi tidak ada kode di OS Anda yang dapat menanggapi paket "ajaib" dari jenis yang Anda inginkan.

Paket magic wake-on-LAN tidak ditangani oleh OS. Mereka dikenali oleh IC antarmuka jaringan, yang merespons dengan mengirimkan sinyal ke CPU yang melepaskannya dari kondisi tidur. Hal ini dapat dilakukan karena IC tetap menyala di beberapa kondisi tidur. (Inilah sebabnya mengapa lampu tautan Ethernet tetap menyala saat PC "mati" pada beberapa mesin.)

Alasan teknologi Apple bekerja adalah bahwa sesaat sebelum PC tidur, itu memberitahukan proksi tidur. Proxy tidur kemudian mengatur untuk sementara waktu menerima lalu lintas untuk mesin tidur, dan jika itu mendapatkan sesuatu yang menarik, itu mengirimkan paket WOL ke PC dan menyerahkan lalu lintas yang diterima.

Warren Young
sumber
2
"mengatur untuk sementara waktu menerima lalu lintas untuk mesin tidur" - seperti dalam keracunan ARP? Keren.
Wim Coenen
4
Ini tidak lebih dari penggunaan keracunan ARP daripada kegagalan NIC. Istilah keracunan ARP membawa niat untuk itu, untuk satu: tidak ada yang mencoba menyerang apa pun dengan teknologi ini. Untuk yang lain, Sleep Proxy Service adalah cara bagi PC yang tidur untuk secara eksplisit mengesahkan proxy untuk mengawasi lalu lintas saat sedang tidur. Anda mungkin juga mendakwa layanan pesan telepon untuk pencurian identitas sebagai panggilan keracunan ARP ini.
Warren Young
Saya membatalkan ini karena meskipun tidak memberikan solusi umum, ia menjelaskan sifat dari solusi itu dengan baik di paragraf terakhir.
Tuan Shiny dan Baru 安 宇
11

Saya beruntung menggunakan PowerNap (ini dikemas untuk ubuntu-sever, tetapi sumbernya ada sehingga Anda harus dapat mengompilasinya dengan apa saja) untuk menangguhkan mesin cadangan ketika mereka tidak melakukan apa-apa. Namun, ini tidak akan membangunkan mereka secara otomatis. Ada juga program PowerWake yang dibundel dengan tarball sumber PowerNap (dikemas powerwakedalam Ubuntu) yang menyediakan sedikit abstraksi untuk proses Wake-On-Lan (membuatnya mudah untuk mengirim WOL hanya dengan nama host, misalnya), tetapi ia masih belum otomatis.

Edit. Pilihan lain:

Saya tidak tahu banyak tentang itu karena saya belum pernah menggunakannya, tetapi beberapa kartu mampu membangunkan pada pesan unicast. Anda dapat melihat apakah kartu Anda memiliki kemampuan menggunakan ethtool

# ethtool eth0 

Ganti eth0 untuk perangkat jaringan Anda. Kemudian lihat output untuk baris yang dimulai dengan "Supports Wake-on:". Jika "u" terdaftar pada baris itu, maka Anda dapat melakukan hal berikut saat boot (yaitu, dalam skrip init atau yang serupa):

ethtool -s eth0 wol u

Dikombinasikan dengan PowerNap atau apa pun yang membuat mesin tidur dalam beberapa kondisi, ini akan memberikan apa yang Anda cari.

Steven D
sumber
Di mana saya dapat menemukan ethertool?
Gert
Maaf, ini salah ketik - alat ini adalah ethtool. Saya telah memperbaiki kesalahan ketik dan menambahkan tautan ke ethtool.
Steven D
powerwaketampaknya dimasukkan dalam paket eponymous yang terpisah, setidaknya di bawah Ubuntu 10.10.
intuited
Saya melihat. powernapdan powerwaketermasuk dalam pohon sumber yang sama tetapi dengan cara membuat dua paket. Saya akan memperbarui posting sedikit, setelah saya memikirkan cara yang baik untuk menyebutkan fakta ini.
Steven D
Ada juga napd , yang tampaknya lebih fleksibel daripada powernap.
sebastian