Kezdőlap › Fórumok › Van egy ötletem… › Hardy szerver “időzített” leállítása [Megoldva]
- This topic has 38 hozzászólás, 4 résztvevő, and was last updated 14 years telt el by uzsolt.
- SzerzőBejegyzés
- 2010-04-15-08:21 #2199516
#!/bin/bash
while true; do
X=$(smbstatus 2>/dev/null | wc -l)
if [ $X -gt 4 ]; then
COUNTER=0
else # nincs senki
COUNTER=$((COUNTER+1))
fi
if [ $COUNTER -gt 30 ]; then
hibernate
fi
sleep 1m
doneNem állt le a szerver.
Levettem a hálóról a gépet, de az smbstatus ugyanúgy kapcsolatokat jelzett. Érdekes. Valahogy ráveszem magom, h itt maradjak 5 után (mikor kikapcsolják a klienseket), kíváncsi leszek mit mutat.szerk.: közben megnéztem még valamit. Levettem a hálóról, samba off/on és lám eltűntek a kapcsolatok…
2010-04-15-15:07 #2199517Szerintem az smbstatus mindig több, mint 4 sorú (ill. talán kiv., ha ki van kapcsolva a samba, vagy valami), így az első feltételed, miszerint COUNTER=0 mindig teljesül, így soha nem lesz nagyobb értéke, mint 30, vagyis soha nem lesz hibernálva.
2010-04-15-15:50 #2199518Ezt ugye ki lehetne dibagolni egy huszáros kiiratással.
2010-04-15-19:16 #2199519De hülye vagyok… Mint korábban is írtam ez a kimenet ha nincs kapcsolat:
szerver@ubuntu:~$ smbstatus
Samba version 3.0.28a
PID Username Group Machine
Service pid machine Connected at
No locked filesszerver@ubuntu:~$
Ez meg 10 sor a script szerint (honnan jött a 4?):
szerver@ubuntu:~$ smbstatus 2>/dev/null | wc -l
10
Még jó, h el tudom érni vnc-n a gépet, nem kellett megvárnom az 5 órát se, a skript-et átírtam, mostmár remélem jó lesz 🙂
2010-04-15-19:36 #2199520Tényleg jó lenne végre leállítani azt a szerencsétlen gépet, mert a topik csak nyúlik, mint a rétestészta.
2010-04-16-07:52 #2199521body007 wrote:honnan jött a 4?Örök rejtély. Én úgy gondoltam, hogy tudsz számolni, és csak a matektanárságom miatt nem láttam, hogy miért négy 🙂
2010-04-16-08:29 #2199522OFF
szerintem valami hasonló módon
(Majd a viccbe rakok még nekedvalót. :))2010-04-16-08:38 #2199523Már ismertem. 🙂 De azért várom őket…
2010-04-17-09:46 #1889592Üdv
Egy olyan gondom lenne a meglévő szerveremmel, h túl sokat fogyaszt 🙂 Erre szeretnék megoldást találni. Elméletben meg is van a dolog, a megvalósításhoz azonban kellene egy kis segítség.
Akkor az elmélet:
1. Hétköznap reggel 7.30-kor induljon el a gép – ez megvan, simán BIOS beállítás
2. 10 percenként nézze a kapcsolatokat, ha nincs samba kapcsolat várjon 30 percet és menjen aludni.
3. Mikor elindul a visszaszámláló 10 percenként meg kellene néznie, h nem kapcsolódott e valaki megint, ilyenkor értelemszerűen vissza a 2.-es pontra.
4. kb ennyi 🙂Megoldás:
Két segítőkész úriembernek köszönhetően meglett a skript, íme:Code:#!/bin/bash
while true; do
X=$(smbstatus 2>/dev/null | wc -l)
if [ $X -gt 4 ]; then
COUNTER=0
else # nincs senki
COUNTER=$((COUNTER+1))
fi
if [ $COUNTER -gt 30 ]; then
hibernate
fi
sleep 1m
doneps.: hibernate helyet lehet suspend-et is használni, ez már csak gusztus dolga 🙂
- SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.
legutóbbi hsz