NetworkManager po probuzení z hibernace

Dobrý den, tento problém mám už několik let. Pokud uspím pc na delší dobu na disk, tak po probuzení ikona networkmanageru hlásí že není připojen kabel, musím jej manualně restartovat. Tento problém nenastává pokud pc uspím jen na krátkou dobu, ale pokud ho uspím na cca 12 hod. a více tak se to takhle chová. Podle nějakých rad se má upravit soubor v /etc/pm/sleep.d 50networkmanager, ale to mi nepomohlo.

Skoda ze nempises co si tam zkousel upravovat. Pravdpodobne bude potreba pro suspendu reload driveru sitove karty.

Obsah souboru:
#!/bin/sh

50networkmanager: disable network manager

case “$1” in
hibernate|suspend)
systemctl stop NetworkManager
;;
thaw|resume)
sleep 5
systemctl start NetworkManager
;;
*) exit $NA
;;
esac

mělo by to fungovat, zkoušel jsem ty příkazy systemctl **** manualně a šlo to.
Jak tedy nastavím ten reload driveru? Půjde to přes nějaký skript pracující s modprobe?

Otazka tedy je - spousti se tento skript skutecne (/var/log/suspend.log)? Jinak za ten stop, muzes pridat
rmmod
jmeno zjistis z vypisu lsmod nebo lspci -v
pred start pak modprobe.
Je ovsem mozne ze shozeni NM nevypne i sitovku, to si nejsem jist, takze mozna bude potreba neco mezi.

Mám attansic L1 Gigabit Ethernet, ovladač atl1. Četl jsem že tento problém může být způsoben některými ovladači na starší hw. Zajímavé je že když pc uspím na kratší dobu na disk tak se tento problém neoběví.

Ano v souboru /var/log/suspend.log je napsáno
/usr/lib/pm-utils/sleep.d/75modules resume suspend: success.
Running hook /etc/pm/sleep.d/50networkmanager resume suspend:
Takže se pravděpodobně spouští.

V tom pripade ti nic nebrani pridat tam odebrani z znovuzavedeni ovladace te sitovky, snad to pomuze.

Dal jsem tam rmmod atl1 za systemctl stop NetworkManager . Zajímavé je že po probuzení je networkmanager aktivní, a zárověn hlásí že je kabel odpojen.

A dal jsi take prikaz pro znovuzavedeni modulu pred systemctl start networkmanager? (Modprobe …) Overit zda se zavedl a je funkcni muzes ve /var/log/messages , melo by tam byt nejake hlaseni jadra popr. dotycneho modulu. Event. dmesg prikaz. Pripadne muzes zkusit dat jeste pred rmmod prikaz pro shozeni sitovky ip link dev neco down a za prikaz modprobe tj. po zavedeni ovladace opacny prikaz pro nahozeni ip link dev neco up. (Za neco dosad nazev zarizeni napr. eth0).

prikaz na znovuzavedeni modulu nemusím, po probuzení kdyz dám lsmod tak uz tam je. Zkoušel jsem také rmmod atl1 a po něm systemctl restart NetworkManager a modul atl1 se sám zavedl.

po probuzení když sít nejede zkus přikaz “ip a” Vypisuje adresy a stav sitových zařízení (state UP běží, DOWN neběží).Pokud neběží tak příkaz sudo ip link set dev něco up. Když to zabere tak NM neumí nahodit danou sítovku a mohlo by stačit připsat daný příkaz do zminovaného skriptu za start NM.

Pokud to co pise li737 nezabere tak se podivej jeste pomoci utility mii-tool na dane rozhrani, zda je skutecne sitovka spojena. Vypada to napr. takto:

mii-tool eth0
eth0: negotiated 1000baseT-FD flow-control, link ok

“ip a” vypisuje že je eth0
<NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000

mii-tool eth0
eth0: negotiated 100baseTx-FD flow-control, link ok
u toho “ip a” je dost matoucí že tam je jednou UP a pak dále down, a co je ten NO-CARRIER
Bohužel to nezabralo, mám dojem že ten skript se nespouští správně, systém to v logu vypisuje že spouští ale asi ne.
Zkoušel jsem tedy příkaz:
/etc/pm/sleep.d/50networkmanager resume a síť se rozběhla, nevím v čem je problém přitom skript má dokonce nastaveno chmod x u všech.

mii tool rika, ze sitovka ma fyzicke spojeni a kabel je pripojen. Prikaz IP rika, ze na systemove urovni je spojeni DOWN - vypnuto. Neni vylouceno, ze sitovka potrebuje nejaky cas na vzpamatovani, takze tam muzes zkusit jeste vlozit nejaky sleep mezi modprobe a ip.

Podle mě se ten soubor nespouští vůbec.

Prijde mi zvlastni, ze by se ve /var/log/pm-suspend.log psalo, ze se pousti a pritom se nepoustel. Tak si tam pridej do te sekce po probuze (thaw, resume) treba

echo “blabla” > /root/test

a uvidis jestli se to pousti nebo ne.

Zkusil jsem ten test a nic. Takže se nespouští.

Me to normalne funguje. Musis tam mit nejakou chybu. Mas u skritpu spravne prave?

Navic restartovat NM zrejme neni potreba, protoze ten dostava info o restartu z /usr/lib(64)/pm-utils/sleep.d/55*.

Staci do te /etc/pm-utils/sleep.d/50* pridat jen odstraneni nebo reload driveru.

tak práva mám nastavená správne na x všecho, jen jestli to není tím že kde4 asi nepoužívá pm-utils, protože když v menu kde4 dám uspat tak se /root/test nevytvoří, když dám příkaz pm-suspend tak se tento soubor vytvoří. Takže problém je v KDE4.

Nevim zda se to da nekde zmenit, ale KDE ma skutecne svuj power manager, tady jsou priklady pro KDE Solid a vychozi UPower:
http://www.commandlinefu.com/commands/view/10424/suspend-to-ram-with-kde-4