1

Temat: Sprawdzanie dysków o danej godzinie

Mam okresowe problemy ze stabilnoscią gargoyle 1.6.0.2 na exroocie. Chciałbym zaimplementować mechanizm planowanego sprawdzania dysków i restartów.


Chciałbym aby router raz na 3 dni  o 3.00 automatycznie restartował się i sprawdził  wszystkie dyski, lub jeśli prościej te:

/dev/sdb1 exrooth
/dev/sda1 dane

Jednocześnie nie chciałbym używać tej reguły przy każdym restarcie lecz tylko okresowo w nocy, sprawdzanie 500gb trwa strasznie długo.

2

Odp: Sprawdzanie dysków o danej godzinie

Nie możesz sprawdzać dysku który jest zamontowany, więc z extrootem to odpada. A dane możesz kiedy chcesz, w cronie sobie to umieść.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Sprawdzanie dysków o danej godzinie

Cezary napisał/a:

Nie możesz sprawdzać dysku który jest zamontowany, więc z extrootem to odpada..

Dlatego pytam o bardziej wyrafinowane metody.
czy to   w cronie ma prawo zadziałać?


1     3     *     *     1,4
/etc/init.d/samba stop
/etc/init.d/transmission  stop
/etc/init.d/minidlna  stop

umount /dev/sdb1 -f      //   Device or resource busy????
 
2     3     *     *     1,4 e2fsck  -p /dev/sdb1   // jak wykonać reboot zaraz po skończeniu  sprawdzania ?
0     5     *     *     1,4  reboot

4

Odp: Sprawdzanie dysków o danej godzinie

Ale komplikujesz sobie sprawę. Zrób skrypt który ma to wszystko i wywołuj sam skrypt a nie rozpisujesz każde polecenie w cronie na odpowiednie minuty

#!/bin/sh
/etc/init.d/samba stop
/etc/init.d/transmission  stop
/etc/init.d/minidlna  stop
umount /dev/sdb1 -f 
e2fsck -y /dev/sdb1
reboot

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: Sprawdzanie dysków o danej godzinie

Pięknie  dziękuje skrypt działa.

Jest jeszcze problem z umount,  tzn po wykonaniu skryptu do umount

umount: can't forcibly umount /tmp/usb_mount/1b2c3b6f-c082-405a-84ed-1003e51a642a: Device or resource busy


jak widze 

/etc/init.d/minidlna  stop      nie kończy minidlna




4199  3158 root     R     1504   1%   0% top
3059  1491 root     S     1220   1%   0% /usr/sbin/dropbear -P /var/run/dropbe
4094     1 root     S    20556  16%   0% /usr/sbin/minidlnad -f /tmp/minidlna.
1381     1 root     S     1596   1%   0% hostapd -P /var/run/wifi-phy0.pid -B
  893     1 root     S     1512   1%   0% /sbin/syslogd -C16
4082     1 root     S     1512   1%   0% /usr/sbin/crond -c /etc/crontabs -l 9
1120  1068 root     S     1512   1%   0% udhcpc -p /var/run/udhcpc-eth0.2.pid
    1     0 root     S     1508   1%   0% init
3158  3059 root     S     1508   1%   0% -ash
  602     1 root     S     1508   1%   0% init
2882     1 root     S     1504   1%   0% /sbin/watchdog -t 5 /dev/watchdog
2588     1 root     S     1500   1%   0% /usr/sbin/ntpd -n -p 0.europe.pool.nt
  895     1 root     S     1496   1%   0% /sbin/klogd
1068     1 root     S     1476   1%   0% /sbin/netifd
2681     1 root     S     1396   1%   0% /usr/sbin/rpc.mountd -p 32780 -F
2852     1 root     S     1380   1%   0% /usr/bin/ddns_gargoyle -P /etc/ddns_p
1567     1 root     S     1348   1%   0% httpd_gargoyle -c cgi-bin/**|**.sh|**
1491     1 root     S     1156   1%   0% /usr/sbin/dropbear -P /var/run/dropbe
2659     1 root     S     1068   1%   0% /usr/sbin/rpc.statd -p 32778 -o 32779
^C012     1 nobody   S     1024   1%   0% /usr/sbin/portmap

6

Odp: Sprawdzanie dysków o danej godzinie

to daj może jeszcze
killall minidlna

7

Odp: Sprawdzanie dysków o danej godzinie

Dokładnie tak, z tym że killall minidlnad jeżeli używasz nowszej wersji.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8

Odp: Sprawdzanie dysków o danej godzinie

Dzięki działa

tak dla potomności zostawiam

w cronie

1 3 * * 1,4  /bin/sprawdz_dysk_noc.sh



skrypt : sprawdz_dysk_noc.sh

#!/bin/sh
/etc/init.d/samba stop
/etc/init.d/transmission  stop
/etc/init.d/minidlna  stop
killall minidlnad
umount /dev/sdb1 -f
e2fsck -y /dev/sdb1
reboot