Portál AbcLinuxu, 12. května 2025 12:43
Dobrý den,
mám Debian, kde je nainstalován APCUPSD a VMWare Server 2 s virtuálními stroji.
Po výpadku elektrické energie (po dosažení určitých nízkých procent baterie) dojde k vypínání PC ... u VMware serveru je nastaveno, aby se před vypnutím hosta vypli i virtuální stroje. Tudíž se začnou také vypínat virtuální stroje. Bohužel, než se stačí vypnout všechny virtuální stroje, Debian je už ve stádiu, kdy ukončuje celý systém (a nepočká na dokončení vypínání virtuálních strojů) a tudíž se mi 1 virtuální stroj neukončí zcela správně ...
Nevíte nebo neměl někdo také s tímto problém, jak vyřešit, aby Debian počkal na ukončení virtuálních strojů a až poté vypnul systém?
Nebo lze nějakým způsobem prodloužit čas vypínání Debianu?
Děkuji za všechny návrhy.
Dobry den, myslim ze by stacilo pri ukoncovani dat do rc skriptu nejaky, ktery by obsahoval neco ve stylu sleep a urcity cas, ktery potrebujete, nebo dalsi reseni, v ramci vypinani nejake sluzby pridat spusteni onoho skriptu. Alespon takhle bych to resil ja.
Metoda pauzy se mi moc nelíbí ... opravdu to nejde vyřešit nějakým způsobem, kdy se debian vypne až po 100% dokončení vypnutí virtuálních strojů ...?
a jak to provést ...?
já zas tak moc v tom Debianu neumím .
Díky.
/etc/init.d/halt
) podle vypisu ps
hlidat, jestli uz skoncily vsechny procesy virtualnich stroju. A az skonci, tak teprve pokracovat. Asi by bylo vhodne tam jeste pridat nejakou kontrolu casu, kdyby nektery virtualni stroj nahodou "zamrznul", at to nevybije baterku uplne.
nápad je to skvělý, akorát, že něco takového asi nedoprogramuju do nastavení
Hlidaci skript by mohl mohl vypadat nejak takhle:
# Limit in seconds to stop proces
limit=120
# Process name - used in pgrep
proc="vmware-vmx"
count=0
live=1
while [ $count -lt $limit -a $live -eq 1 ]; do
if pgrep $proc >/dev/null; then
echo "VMware still running, waiting 1 second ..."
sleep 1
else
live=0
fi
count=`expr $count + 1`
done
if [ $count -eq $limit -a $live -eq 1 ]; then
echo "VMware failed to stop in $limit seconds. Expect unclean shutdown!"
else
echo "VMware sucesfully turned off."
fi
Kde je potreba upravit jmeno procesu (podle me by se ale mel jmenovat vmware-vmx, ale to chce zjisti (treba pomoci prikazu ps aux
) a maximalni dobu cekani.
A nakonec to nejdulezitejsi dat tenhle kousek kodu do spravneho souboru - nejsem Debianista takze neporadim, mozna jiz zmineny /etc/rc/halt
?
Díky moc za skript ...
jenom bych se chtěl zeptat na podmínku [$count -lt $limit -a $live -eq 1]
co znamená přepínač -a a -eq???
díky.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.