Router pendrive-jára milyen fs?

 ( locsemege | 2018. február 12., hétfő - 23:06 )

Van egy TL-WR842N-v3 router-em, amelynek van egy USB host interface-e. Ebbe lógattam egy USB hubot. Ebbe egyfelől megy USB-s hangkártya, másfelől vettem egy 64 GB-os pendrive-ot. Az viszonylag lényegtelen, mi lesz a pendrive-on. Például zenék, s akkor a router-en futó mpd-t lehet ingerelni egy PC-n futó mpd klienssel. A router-en friss, snapshot OpenWrt/LEDE fut.

Az a kérdésem, milyen filerendszert tennétek a pendrive-ra, ha előfordulhat a felhasználásból adódóan, hogy nem szabályosan áll le az oprendszer, hanem csak elmúlik a villany a router-ből, így a disk cache nem íródik ki. A sync mount opciót nem tartom jó ötletnek, mert egyfelől lassú lesz, másfelől flash-ről van szó. Természetesen naplózó filerendszert tennék rá.

Melyik fs a legalkalmasabb a feladatra? Szeretném a filerendszert rw csatolni.

(Mostanában sok dolgom van, ritkán van időm írni. Ha nem válaszolok hamar, akkor nem arról van szó, hogy nem érdekelnek a válaszok. Fogok reagálni, csak nem azonnal.)

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Rövid ideig történő használatra én ext3-at raktam rá, de ugye ez pendrive, nem biztos, hogy szeretni fogja hosszú távon.
A vfat is tűrte a router kikapcsolásokat, de azért azzal nem biztos, hogy érdemes, ha nincs róla mentés.

A vfat kiesik, nem naplózó, ott nem csak adatvesztés, de széthulló filerendszer is lehet a kikapcsolásból. Az első gondolatom ext4 volt, csak gondoltam, van mindenféle speciális célra kitalált filerendszer, nem tudom, alkalmasabb-e pl. a jfs vagy xfs, vagy bármi más.

Az ext{3,4}-et miért nem bírja? Ha a default async a mount opció, sőt noatime-ot is mondok neki, akkor szerintem nem lesz gyakori írás, mert van disk cache. Lehet, olyan kellene, ami ritkán szinkronizál, bár gondolom, ez is konfigurálható.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Én csak "worksforme" alapon írtam, hogy vfat (vagy exFAT??) simán tűrte a ki-bekapcsolgatást, bár én csak logot írtam rá.
Igazából nem tudom, hogy egy journaling fs-t mennyire tolerál éles használatban egy pendrive, ami azért még messze nem ssd.

Terveim szerint rettentő gyakori írásban nem lenne része. Esetleg valamit feltennék rá távolról nagy ritkán, lecserélnék egy-két zenét, de alapjaiban többé-kevésbé statikus tartalmat tervezek. Inkább arról van szó, legyen elérhető, készenlétben, s ne kelljen távolról a router mögötti nagy gépet bekapcsolnom csak azért, mert néhány file-t fel szeretnék rá másolni. Az olyan körülményes. Közvetlenül a router pendrive-jára másolni kényelmesebb. Tehát nem adatbázis szerver tárhelye lenne. :)


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

> Esetleg valamit feltennék rá távolról nagy ritkán, lecserélnék egy-két zenét,
> de alapjaiban többé-kevésbé statikus tartalmat tervezek.

Na, pont ezért kell rátenni sync mountolt fájlrendszert.

Lassú, naés? A pendrájvok általában úgysem kapkodó vadállatok, ha írni kell őket. Berakod a másolást, aztán majd pár perc múlva elkészül. Nem kell közben stopperral állni mellette.

ext4, és sync mount-tal csatolni. meg időnként menteni, a pendrive nem örökéletű, főleg ha egyfolytában feszültség alatt van. 1-2 évnél tovább biztos nem fogja hűzni.

-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.
/usr/lib/libasound.so --gágágágá --lilaliba

Ha jól tévedek, az openwrt-n belül mindaz elérhető a megszokott junikszos eszközökből, ami csak a flashre fér.

Ha így van, patkolnék egy egyoldalú szinket dropboxszal (tkp. patkoltam, más céllal, más eszközön).

Létrehozol egy könyvtárad a dropboxon, készítesz rá egy share linket.
Mindent, amit a router meghajtójára tennél, ide másolsz.
A routerban írsz egy cron jobot, ami benéz a shared könyvtárba, és amit ott talál (és neki még nincs meg), wgettel letölti a megfelelő helyre (a megfelelő hely ízlés szerint lehet statikus, vagy pici szkript/konf fájlt is teszel a szinkelendő fájlok mellé, amit a job először szed le és értelmez, és aszerint dönti el, hogy mit hová).

Előnye, hogy a diszk lehet ro, rw-ba csak akkor kerül, ha van mit írnia (a job remountol); rw közben pedig lehet akármilyen lassú (synced), mert nem te eteted, hanem a dropbox, amelyre valószínűleg te gyorsabban másolsz, mint a pendrájvra.

Hátránya, a free dropbox account méretkorlátja - ez persze túlléphető, ha van olyan egyéb helyed, ahonnan a wget táplálkozhat.

Vfat-ot eddig meg nekem sem sikerult fajlrendszer szinten tonkretennem. Ha jol tudom ket identikus tablat tarol az elejen es a vegen a particionak. Maximum iras kozbeni fajlok serultek meg vagy az egyik tabla masolat, amiket (dos)fsck akar automatikusan is kijavit bootolaskor.

Consumer flash eseten egyebkent barmilyen fajlrendszer megserulhet, mert nem csak irasi puffer veszik el aramszunetkor (amirol raadasul sokszor hazudik a drive, hogy mar kiirta), hanem hianyzik a data on rest protection es igy meglevo adatok is serulnek, amik OS szinten nem is erintettek az irasban. Na ezt vedje ki a fajlrendszer..

Ja es egyebkent fontosabb a fajlrendszernel, hogy mindig ro mount legyen es csak (ritka) iraskor remountold.

> Ha jol tudom ket identikus tablat tarol az elejen es a vegen a particionak

Nem jól tudod. Bár valóban két fat-ot használ, azok a partíció elején vannak, a boot sector, és a reserved sectorok után.

Igaz, nem jol emlekeztem.

Igen, szerintem a GPT-re emlékeztél. Az az elején és a végén van.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Ext4. Mivel írtad, hogy kell az áramszünet esetére a naplózás. Nem hinném, hogy nagyon intenzíven igénybe lenne véve a pendrive, pl. sok írás történne rá. Annyi naplózás nem lesz rajta, hogy az nyírja szét a Flash cellákat.

Esetleg f2fs, ami kifejezetten Flash-alapú tárolókhoz lett kifejlesztve, és nem csak SSD-hez jó, hanem SD-kártyákhoz, így gondolom pendrive-hoz is.


„Pár marék nerd-et leszámítva kutyát se érdekel már 2016-ban a Linux. Persze, a Schönherz koliban biztos lehet villogni vele, de el kéne fogadni, ez már egy teljesen halott platform. Hagyjuk meg szervergépnek…” Aron1988@PH Fórum

Na, ez az f2fs felizgatott, mert van OpenWrt/LEDE kernelmodul hozzá. Utánanézek, mire képes.

Szerk.: El ne feledjem, kell hozzá az f2fs-tools csomag. Már a formázáshoz például.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Egyelőre az a megoldás született, hogy egy 60 GB-os pendrive-ot f2fs-re formáztam, a router USB hubjába dugtam, a router image-ébe tettem f2fs támogatást. Az fstab-ba írtam mount point-ot, eszközt, meg azt, hogy ne csatolja fel boot után. Ha kell, manuálisan mount-olok, majd használat után lecsatolom a filerendszert, így nem éri bántódás. Mindamellett naplózó az fs.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE