Saya memiliki mesin Ubuntu yang menjalankan perangkat lunak yang membutuhkan internet. Namun, kadang-kadang wifi gagal (router reboot misalnya) dan tidak menemukan jaringan lagi, sampai saya secara manual service-manager jaringan restart atau saya matikan dan pada wifi untuk menemukannya.
Apakah ada cara yang mungkin untuk menjalankan pekerjaan cron atau pekerjaan pengawasan untuk memantau konektivitas dan jika jaringan tidak dapat ditemukan untuk memulai kembali layanan manajer jaringan dan terhubung ke SSID spesifik itu?
networking
wireless
cron
Blue Genie
sumber
sumber
Jawaban:
Saya pikir ini mungkin disebabkan oleh bug manajer jaringan baru, karena saya juga mulai mengalami masalah ini baru-baru ini - saya pikir setelah memutakhirkan ke Ubuntu 15.04.
Tampaknya saya berhasil menyelesaikan masalah ini untuk sementara sebagai solusi dengan dua file ini:
~/.bin/WiFi-Keep-Connected
, dengan konten ini:~/.config/autostart/KeepWifiConnected.desktop
, dengan konten ini:Catatan: Anda harus memasukkan nama pengguna Anda di jalur yang diberikan untuk di
Exec=
atas.NB: Kadang-kadang restart Wi-Fi dengan cara ini tidak cukup, dalam hal ini saya harus me - restart Network Manager dengan memasukkan perintah ini sekali atau bahkan dua kali dari terminal:
sudo service network-manager restart
Oleh karena itu, mungkin ide yang lebih baik untuk memodifikasi skrip di atas (untuk berjaga-jaga) seperti ini:
sumber
Saya tidak tahu mengapa, tetapi seperti yang Anda sebutkan, kadang-kadang ketika wifi gagal, manajer jaringan tidak menemukan jaringan lagi.
Saya pikir masalahnya adalah network-manager, setelah kegagalan koneksi wifi, tidak me-refresh daftar wifi (dan sepertinya network-manager menyembunyikan jaringan yang bermasalah). Network-manager tidak memiliki opsi menu pemindaian ulang, dan menonaktifkan dan mengaktifkan kotak centang nirkabel pada menu network-manager tidak memaksa pemindaian wifi baru (seperti me-restart layanan tidak).
Ketika network-manager kehilangan koneksi wireles saya dan tidak menemukan wifi saya lagi (dan saya tahu wifi itu berfungsi), saya menjalankan perintah:
Ia melakukan pemindaian wifi pada antarmuka wlan0 (wlan0 adalah nama antarmuka nirkabel di laptop saya) dan ini menunjukkan kepada Anda jaringan nirkabel yang tersedia, tetapi sebagai efek samping, manajer jaringan secara otomatis memperbarui daftar dan menemukan jaringan yang hilang.
Saya lebih suka mengeksekusi perintah secara manual ketika masalah ini terjadi (koneksi ulang jaringan tidak memastikan komunikasi kembali, dan beberapa program perlu di-restart).
Tetapi, seperti yang Anda sebutkan, Anda dapat menyalinnya, dan Anda dapat melakukannya tanpa menguji konektivitas (proses pemindaian memperbarui daftar wifi Anda tetapi tidak menutup koneksi nirkabel Anda saat ini, jika Anda terhubung).
Jika Anda mau, Anda dapat menguji konektifitas menggunakan ping atau iwconfig dan jika Anda tidak terhubung maka luncurkan pemindaian.
Sesuatu seperti:
Tetapi ingat bahwa skrip ini harus sudoed atau dieksekusi dengan hak akses root. Ia hanya mengirim 1 ping dengan batas waktu 1 detik.
sumber
Apa yang saya pikir masalahnya adalah koneksi hilang karena masalah konektivitas router. Restart manajer jaringan tidak bisa membantu ketika router itu sendiri mengalami masalah. Alih-alih, Anda dapat membuat skrip untuk menempatkan proses yang menjalankan perangkat lunak untuk menangguhkan menggunakan SIGSTOP ketika koneksi terputus , dan kembali memicu proses untuk melanjutkan menggunakan SIGCONT ketika jaringan menjadi tersedia. Dan tambahkan skrip ke pekerjaan cron Anda, jadwalkan untuk berjalan setiap menit.
Untuk referensi Anda: http://hints.macworld.com/article.php?story=20030915193440334
Semoga ini membantu.
sumber