Temat: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Często sypie mi się extroot na karcie uSD w modemie.
Bardzo często się sypie..

Po kilku miesiącach testów/obserwacji/frustracji stwierdzam,
że o ile działa powłoka, to najszybciej pomaga e2fsck na wybranej partycji a potem restart.
Z tym, że należy wykonać to "z palca" a ja chciałbym to mimo wszystko
zaplanować np. w wybrany dzień tygodnia.


fsck nie pozwala się uruchomić gdy wpisuję:

echo y | e2fsck /dev/sda1 -p
echo "y" | e2fsck /dev/sda1 -y
y | e2fsck /dev/sda1 -y
yes yes | e2fsck /dev/sda1 -p

Próbuję i próbuję..
.. co powinienem zastosować?

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

2

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Ktokolwiek ma jakikolwiek pomysł?

..czy też moje zamiary wydają się z gruntu aż tak nieprawomyślne że nikt tego serio nie potraktował?:)

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

3

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

e2fsck -y /dev/sda1 ?

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

4

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Ponad to nie musisz tego z crona robić. Ustaw fsck przy fstabie to będzie sam przy starcie robił. Chyba że będą to takie błędy że nie będzie automatycznie mógł tego naprawić.

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

5 (edytowany przez bartsam 2012-09-20 08:18:02)

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Cezary, dziękuję za odpowiedź.

root@tplink:~$ e2fsck -u /dev/sda1
e2fsck: invalid option -- u
Usage: e2fsck [-panyrcdfvtDFV] [-b superblock] [-B blocksize]
                [-I inode_buffer_blocks] [-P process_inode_size]
                [-l|-L bad_blocks_file] [-C fd] [-j external_journal]
                [-E extended-options] device

Emergency help:
 -p                   Automatic repair (no questions)
 -n                   Make no changes to the filesystem
 -y                   Assume "yes" to all questions
 -c                   Check for bad blocks and add them to the badblock list
 -f                   Force checking even if filesystem is marked clean
 -v                   Be verbose
 -b superblock        Use alternative superblock
 -B blocksize         Force blocksize when looking for superblock
 -j external_journal  Set location of the external journal
 -l bad_blocks_file   Add to badblocks list
 -L bad_blocks_file   Set badblocks list
root@tplink:~$

Nie ma niestety parametru -u (nie jest udokumentowany).
Tak więc, unnatended w ten sposób u mnie nie zadziała.
No chyba że w nowszej wersji pakietu ten parametr już jest?

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

6

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

-y, poprawiłem to później. Ale jak pisałem - nie masz potrzeby robienia tego ręcznie w cronie. tym bardziej że system musi być odmontowany żeby to zrobić.

PS. Sorry, ty masz mr3220. fsck tam nie ma obrazie, nie zmieści się już, więc nie zrobisz tego przy montowaniu partycji.

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

7 (edytowany przez bartsam 2012-09-20 08:25:34)

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Ahh.. to chyba rzeczywiście pozostaje _tylko_
fstab - option enabled fsck

Chociaż.. ciekawe, bo polecenie y lub yes yes powinno dawać właściwy efekt,
w innych przypadkach działa, ale fsck widać jest odporne na to tongue

------------

Poprawka - no właśnie, on się nie mieści we flashu.
Dlatego naprawiam system plików na zamontowanej partycji neutral

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

8

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Jeszcze raz przeczytaj  - Ty nie masz fsck wbudowanego w system. Więc ustawienie tej opcji nic nie da, bo nie ma polecenia które by to wykonywało.

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

9

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Słusznie..

dlatego robię to "na chama"..

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

10

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Po kolei - masz extroota. Więc NIE MOŻESZ zrobić fsck na niej bo ona jest zamontowana. Więc nie możesz tego zrobić z crona, chyba ze system bez extroota uruchomisz.

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

11

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Cezary,

NIE MOGĘ czy nie powinienem? wink

Mogę, tylko stoi to w sprzeczności ze zdrowym rozsądkiem.
Tylko wymaga interakcji:

root@tplink:~$ e2fsck -y /dev/sda1
e2fsck 1.41.11 (14-Mar-2010)
/dev/sda1 is mounted.

WARNING!!!  The filesystem is mounted.   If you continue you ***WILL***
cause ***SEVERE*** filesystem damage.

Do you really want to continue (y/n)? yes
[..ciach..]
Deleted inode 3960 has zero dtime.  Fix? yes

Deleted inode 3961 has zero dtime.  Fix? yes

Deleted inode 3962 has zero dtime.  Fix? yes

Deleted inode 3963 has zero dtime.  Fix? yes

Deleted inode 3964 has zero dtime.  Fix? yes

Deleted inode 3965 has zero dtime.  Fix? yes

Deleted inode 3966 has zero dtime.  Fix? yes

Deleted inode 3967 has zero dtime.  Fix? yes

Deleted inode 3968 has zero dtime.  Fix? yes

Deleted inode 3969 has zero dtime.  Fix? yes

Deleted inode 3970 has zero dtime.  Fix? yes

Deleted inode 3971 has zero dtime.  Fix? yes

Deleted inode 3972 has zero dtime.  Fix? yes

Deleted inode 3973 has zero dtime.  Fix? yes

Deleted inode 3974 has zero dtime.  Fix? yes

Deleted inode 3975 has zero dtime.  Fix? yes

Deleted inode 3976 has zero dtime.  Fix? yes

Deleted inode 3977 has zero dtime.  Fix? yes

Deleted inode 3978 has zero dtime.  Fix? yes

Deleted inode 3979 has zero dtime.  Fix? yes

Deleted inode 3980 has zero dtime.  Fix? yes

Deleted inode 3981 has zero dtime.  Fix? yes

Deleted inode 3982 has zero dtime.  Fix? yes

Deleted inode 3983 has zero dtime.  Fix? yes

Deleted inode 3984 has zero dtime.  Fix? yes

Deleted inode 3985 has zero dtime.  Fix? yes

Deleted inode 3986 has zero dtime.  Fix? yes

Deleted inode 3987 has zero dtime.  Fix? yes

Deleted inode 3988 has zero dtime.  Fix? yes

Deleted inode 3989 has zero dtime.  Fix? yes

Deleted inode 3990 has zero dtime.  Fix? yes

Deleted inode 3991 has zero dtime.  Fix? yes

Deleted inode 3992 has zero dtime.  Fix? yes

Deleted inode 3993 has zero dtime.  Fix? yes

Deleted inode 3994 has zero dtime.  Fix? yes

Deleted inode 3995 has zero dtime.  Fix? yes

Deleted inode 3996 has zero dtime.  Fix? yes

Deleted inode 3997 has zero dtime.  Fix? yes

Deleted inode 3998 has zero dtime.  Fix? yes

Deleted inode 3999 has zero dtime.  Fix? yes

Deleted inode 4000 has zero dtime.  Fix? yes

Deleted inode 4001 has zero dtime.  Fix? yes

Deleted inode 4002 has zero dtime.  Fix? yes

Deleted inode 4003 has zero dtime.  Fix? yes

Deleted inode 4004 has zero dtime.  Fix? yes

Deleted inode 4005 has zero dtime.  Fix? yes

Deleted inode 4006 has zero dtime.  Fix? yes

Deleted inode 4007 has zero dtime.  Fix? yes

Deleted inode 4008 has zero dtime.  Fix? yes

Deleted inode 4009 has zero dtime.  Fix? yes

Deleted inode 4010 has zero dtime.  Fix? yes

Deleted inode 4014 has zero dtime.  Fix? yes

Deleted inode 4015 has zero dtime.  Fix? yes

Deleted inode 4016 has zero dtime.  Fix? yes

Deleted inode 4017 has zero dtime.  Fix? yes

Deleted inode 4018 has zero dtime.  Fix? yes

Deleted inode 4019 has zero dtime.  Fix? yes

Deleted inode 4020 has zero dtime.  Fix? yes

Deleted inode 4021 has zero dtime.  Fix? yes

Deleted inode 4022 has zero dtime.  Fix? yes

Deleted inode 4023 has zero dtime.  Fix? yes

Deleted inode 4024 has zero dtime.  Fix? yes

Inode 4012, i_size is 16381, should be 17408.  Fix? yes

Inode 4012, i_blocks is 34, should be 36.  Fix? yes

Deleted inode 9803 has zero dtime.  Fix? yes

Deleted inode 9804 has zero dtime.  Fix? yes

Deleted inode 9809 has zero dtime.  Fix? yes

Deleted inode 9810 has zero dtime.  Fix? yes

Deleted inode 9811 has zero dtime.  Fix? yes

Deleted inode 9813 has zero dtime.  Fix? yes

Deleted inode 15734 has zero dtime.  Fix? yes

Deleted inode 15737 has zero dtime.  Fix? yes

Deleted inode 23854 has zero dtime.  Fix? yes

Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 3A: Optimizing directories
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  -(37598--37614) -(37616--37625) -(38521--38535) -(38544--38558) -(38560--38563) -(38565--38588) -(38590--38595) -(38597--38598) -(38600--38610) -(38612--38621) -(38623--38630) -(38632--38641) -(38643--38649) -(38651--38655) -(38657--38668) -(38670--38677) -(38679--38688) -(38691--38701) -(38703--38710) -(38712--38722) -(38724--38735) -38737 -(38739--38752) -(38754--38758) -(38760--38771) -(38773--38781) -(38783--38786) -(38788--38794) -(38796--38800) -(38802--38805) -(38807--38816) -(38818--38829) -(38831--38837) -(38846--38850) -(38852--38862) -(38864--38873) -(38875--38881) -(38892--38900) -(38902--38912) -(38914--38915) -(38950--38960) -(38963--38964) -(38966--38969) -(38971--38984) -(38986--38992) -(38994--39004) -(39006--39015) -(39018--39026) -(39028--39038) -(39040--39049) -(39051--39058) -(39060--39062) -(39064--39070) -(39072--39082) -(39084--39091) -(39093--39102) -(39104--39105) -(39107--39116) -(39118--39129) -(39131--39137) -(39139--39149) -39151 -(39153--39163) -(39165--39173) -(39175--39184) -(39231--39235) -(39237--39247) -(39249--39257) -39259 -(39261--39273) -(39275--39289) -(39291--39296) -(39331--39338) -(39340--39349) -(39351--39355) -(39357--39363) -(39365--39375) -39377 -(39379--39395) -39397 -(39399--39409) -(39411--39421) -(39423--39431) -(39434--39443) -(39445--39463) -(39466--39468) -(39470--39476) -(39478--39480) -(39482--39488) -(39490--39499) -(39501--39510) -(39512--39519) -(39521--39523) -(39525--39533) -(39535--39544) -(39546--39556) -(39558--39563) -(39565--39569) -(39571--39574) -(39576--39578) -(39580--39597) -(39599--39601) -(39603--39610) -39612 -(39614--39622) -(39624--39635) -(39637--39643) -(39645--39656) -(39658--39659) -(39661--39670) -(39672--39679) -(39681--39691) -(39693--39702) -(39704--39706) -(39708--39712) -(39714--39724) -(39726--39739) -(39741--39747) -(39749--39760) -(39762--39764) -(39766--39780) -(39782--39790) -(39792--39796) -(39798--39805) -(39807--39808) -(39810--39821) -(39823--39838) -(39840--39845) -(39847--39859) -39861 -(39863--39871) -(39873--39883) -(39885--39895) -(39897--39904) -(39906--39912) -(39914--39918) -(39920--39930) -(39936--39944) -(39946--39959) -(39961--39964) -(39966--39969) -(39971--39978) -(39980--39989) -(39991--40001) -(40003--40006) -(40008--40011) -(40013--40023) -(40025--40033) -(40035--40046) -(40048--40051) -(40053--40056) -(40058--40068) -(40070--40087) -(40089--40095) -(40097--40099) -(40101--40102) -40104 -41990 -41992 -43529 -(47617--47619) -(65784--65794) -66561 -102914
Fix? yes

Free blocks count wrong for group #4 (237, counted=1749).
Fix? yes

Free blocks count wrong for group #5 (7660, counted=7666).
Fix? yes

Free blocks count wrong for group #8 (2339, counted=2351).
Fix? yes

Free blocks count wrong for group #12 (7605, counted=7606).
Fix? yes

Free blocks count wrong (86790, counted=88321).
Fix? yes

Inode bitmap differences:  -(3935--3936) -(3940--4010) -(9803--9804) -(9809--9811) -9813 -15734 -15737 -23854
Fix? yes

Free inodes count wrong for group #2 (1857, counted=1941).
Fix? yes

Free inodes count wrong for group #5 (1947, counted=1953).
Fix? yes

Free inodes count wrong for group #8 (1791, counted=1793).
Fix? yes

Free inodes count wrong for group #12 (1624, counted=1625).
Fix? yes

Free inodes count wrong (30456, counted=30549).
Fix? yes


/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: 811/31360 files (2.0% non-contiguous), 36663/124984 blocks
root@tplink:~$

w powyższym przykładzie potwierdzenie z palca i fsck 'naprawia'/naprawia.
Jak widać, po dobie time-up błędów jest sporo.
Po drugim przebiegu fsck błędów już nie ma.

No a potrzebowałbym wykonać to bez dodatkowego potwierdzania, póki co, wydaje się to nie-do-zrobienia:

root@tplink:~$ yes | e2fsck -y /dev/sda1
e2fsck 1.41.11 (14-Mar-2010)
/dev/sda1 is mounted.  e2fsck: Cannot continue, aborting.


root@tplink:~$

yes powinno dać y i zostać przetrawione przez e2fsck pobraniem kodu tego znaku.
Niestety, wychodzi na to, że e2fsck zostało uodpornione na tego typu zagrywkę.

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

12

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Przecież Ci wypisał że może to spowodować uszkodzenie systemu. Sam sobie krzywdę robisz a później się dziwisz że błędy są.

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

13

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Błędy pojawiają się w trakcie pracy.

Po wyłączeniu routera, odłączeniu modemu, naprawie błędów logicznych
na tej karcie pod uruchomionym linuksem na PC i ponownym uruchomieniu routera
z tą kartą jako extrootem w modemie wszystko działa należycie przez kilkanaście godzin,
czasem parę dni. Usługi się nie sypią, działają sprawnie.

Po tym (bliżej nieokreślonym) czasie
często wywala się dnsmasq, httpd, ftp, samba.. pojawiają się błędy logiczne.
I w tym momencie, chcą nie chcąc robię fsck, sync, reboot. I jest spokój znów na jakiś czas.

Podejrzewam, że powodem są pojawiające się błędy transmisji na magistrali usb.

Sednem sprawy jest pytanie czy da się przekonać fsck do przeskanowania mimo wszystko zamountowanej partycji, bez interakcji (?)

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub

14

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

A ja bym z innej beczki poszedł..zamontuj miedzy modemem AKTYWNEGO Huba..możliwe że nie domaga. Masz w okolicy dwa, trzy nadajniki widziane przez modem, i przy przełączaniu się nie  domaga zasilanie, dzieje się to cyklicznie wiec warto sprawdzic.

RB760iGS + RB260GS / Ryzen 5 2660 / 16G DDR4 / MiniITX - Inea 1G (https://i.imgur.com/TLbJVDw.png)
RB951-2HnD / Celeron J1900 / 4G DDR3 / MiniITX - Satpol 100M

15

Odp: e2fsck - w skrypcie - mimo wszystko "na chama" ?

Tak też spróbuję zrobić.
W razie niepowodzenia, wyciągnę uSD i podłączę przez adapter na USB; skoro już będzie hub
to może nawet będzie lepiej jeśli będą działać niezależnie.
Pozdrowienia smile

tp-link mr3220
huawei K3565 (e160x)
extroot 4GiB - patriot extreme
usb active hub