Portál AbcLinuxu, 12. května 2025 15:43

Dotaz: Existence připojení počítače

12.2.2007 09:05 MIlan Ptáček
Existence připojení počítače
Přečteno: 182×
Odpovědět | Admin
Ahoj,

Mohl by mi někdo pomoct s následujícím. Provozuji v naší malé síti file server s OS Linux, každý den ve 14:00 provádí systém zálohování dat na sdílený disk na jiném PC v síti. Zálohovací skript je spouštěn automaticky. Problém je v tom, když cílové PC není spuštěno. Pak jsou zálohovaná data nakopírována do /mnt/baskup_srv.

Otázka: Jakým způsobem ve skripti zjistit zda je ono PC puštěné, nebo zdali proběhlo připojení sdíleného adresáře korektně.

Jméno i IP adresu zálohovacího PC znám

Podmínka ve skriptu:

if [ výraz pro otestování přítomnosti(spuštění)daného PC ]; then

else exit fi

. . .

Děkuji Milan
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

msk avatar 12.2.2007 09:12 msk | skóre: 27 | blog: msk
Rozbalit Rozbalit vše Re: Existence připojení počítače
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ping na dany stroj? Mimochodom, akym sposobom mountujete ten stroj? Nerozumiem totiz, ako je mozne, ze v pripade jeho nedostupnosti skoncia backupy na lokalnom disku.
12.2.2007 09:20 MIlan Ptáček
Rozbalit Rozbalit vše Re: Existence připojení počítače
Dobrá, PING, ale jak z něj dostat, že dané PC reaguje{je spuštěno)

sdílený disk montuji následovně: "mount -t smbfs -o`username=guest, password=` //192.168.1.10/backup_srv /mnt/backup_server"

Díky
michich avatar 12.2.2007 09:27 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Existence připojení počítače
Hádám, že takhle to mountujete v tom skriptu a po provedení zálohy to zase umountujete? Pak by mělo stačit ověřit, že ten mount uspěl. Ping mi připadá jako komplikace.
12.2.2007 09:27 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
Rozbalit Rozbalit vše Re: Existence připojení počítače
$?
12.2.2007 09:58 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
Rozbalit Rozbalit vše Re: Existence připojení počítače
příp.
ismount=$(mount | grep /mnt/backup_server)
if [ "$ismount" != "" ]; then
... zálohujeme
fi
??
Josef Kufner avatar 12.2.2007 10:18 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Existence připojení počítače
Tohle je taková ošklivá varianta. Jak grep, tak mount vrací zda uspěly (stejně jako snad všechny ostatní slušně napsané programy). Takže:
if mount /mnt/...
then
   echo "mount se povedl"
fi

if mount | grep "neco"
then
   echo "grep nasel"
fi
A jak už tu ivok psal, jde to i později:
mount /mnt/...
jak_dopadl_mount=$?
...
if [ "$jak_dopadl_mount" == 0 ]
then
    echo "mount se povedl"
fi
Hello world ! Segmentation fault (core dumped)
12.2.2007 11:24 MIlan Ptáček
Rozbalit Rozbalit vše Re: Existence připojení počítače
Trošku mi to dalo, ale už to vypadá že JÓ.

Děkuji "zase o torchu zkušenější"
12.2.2007 11:59 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Existence připojení počítače
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kromě testování, jak dopadl mount by se dalo přímo zjistit, zda je daná cesta mountpointem. V pythonu takto:
>>> import os
>>> os.path.ismount('/lib')
False
>>> os.path.ismount('/')
True
V shellu bych tuto funkci čekal nejspíš od příkazu "test", ale zjevně to neumí a tak se to musí trochu obcházet.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.