моя настройка беспроводной сети не работает несколько раз в день, помогает перезагрузка сетевого менеджера gnome. Я хочу автоматизировать это и взломал следующий perlscript:
#!/usr/bin/perl
use strict;
use warnings;
my $result = system "ping -c1 -W1 192.168.1.1";
if ($result != 0) {
print "No connectivity. Action required...\n";
my $pid = `pgrep nm-applet`;
if ($pid) {
print "Killing current nm-applet instance $pid\n";
system "kill $pid";
}
print "Starting nm-applet...";
exec "nm-applet" or die "couldn't start nm-applet";
} else {
print "Looks all fine. No action required\n";
}
Моим первым тестом было просто убить nm-апплет вручную и запустить скрипт вручную. Он не обнаруживает подключения и просто "превращается" в nm-апплет, как и предполагалось.
Теперь тот же тест, но выполняемый следующим заданием cron:
*/1 * * * * /home/joe/netcheck.pl >> /home/joe/netcheck.log &
Вывод в netcheck.log - это просто «Запуск nm-applet ...», но он не запускается. Процесс просто умирает сразу.
Любая помощь или, возможно, другое решение приветствуется.