Fórum Root.cz
Hlavní témata => Hardware => Téma založeno: Lukas1500 25. 09. 2025, 15:22:22
-
Znáte nějaký externí USB disk, který vydrží nečekané odpojení? Předpokládá se ztráta právě přenášených dat, ale ostatní data na disku zůstanou v bezpečí.
Něco jako převodník rozhraní SATA s nějakým běžným souborovým systémem na USB mass storage device. Zařízení se v počítači bude chovat jako běžný USB disk, ale nedovolí poškodit tabulku rozdělení disku.
-
Tak mount má parametr sync, ale přenos je pak pomalý a asi i víc opotřebovává SSD. Zato zapsaná data tam asi budou.
-
Existují externí boxy zálohované kondenzátorem, třeba: https://hagibis.com/m2-p00334p1.html (https://hagibis.com/m2-p00334p1.html) nebo https://akasa.co.uk/search.php?seed=AK-ENU3M2-08 (https://akasa.co.uk/search.php?seed=AK-ENU3M2-08). Nemám s tím přímou zkušenost, nicméně serverová ssd zálohování kondenzátory mají; i když ne tak velkou kapacitu. Ale asi bych do toho nedával dramless SSD.
-
Tohle se dá elegantně vyřešit vhodným filesystemem. Třeba ZFS.
-
Tohle se dá elegantně vyřešit vhodným filesystemem. Třeba ZFS.
Nějaká fakta na podporu takového tvrzení? Není li to redundantní pole, tak násilné trhání za chodu asi nebyl primární cíl tohoto FS. ZFS si drží RAM cache a kdo ví kolik z předchozích zápisů ještě není na disku.
-
A neumi to uz dnes kazdy moderni filesystem viz "write barrier"?
-
Nějaká fakta na podporu takového tvrzení? Není li to redundantní pole, tak násilné trhání za chodu asi nebyl primární cíl tohoto FS. ZFS si drží RAM cache a kdo ví kolik z předchozích zápisů ještě není na disku.
To, že souborový systém přežije ztrátu napájení, byla klíčová vlastnost každého souborového systému, který nebyl určen jen na hraní. Řeší se to např. žurnálováním (ext3, ext4, XFS, JFS, HFS+, NTFS) nebo copy-on-write mechanismem (btrfs, ZFS).
-
To, že souborový systém přežije ztrátu napájení, byla klíčová vlastnost každého souborového systému, který nebyl určen jen na hraní. Řeší se to např. žurnálováním (ext3, ext4, XFS, JFS, HFS+, NTFS) nebo copy-on-write mechanismem (btrfs, ZFS).
Nejde mi ani tak o ztrátu napájení jako o možnost odpojení filesystému, pokud selže umount / eject a systém se dostane do stavu, kdy disk nelze bezpečně odebrat a z důvodu připojeného disku nelze systém ani vypnout standardním způsobem. Samozřejmě je namístě řešit důvod (např. chyba driveru), avšak v okamžiku kdy taková situace nastane a na vyřešení je asi tak 5 minut, je třeba také ochránit data.
-
umount -l ... a potom sync, nic vic s tim nejspis udelat nelze.
-
Nejde mi ani tak o ztrátu napájení jako o možnost odpojení filesystému, pokud selže umount / eject a systém se dostane do stavu, kdy disk nelze bezpečně odebrat a z důvodu připojeného disku nelze systém ani vypnout standardním způsobem. Samozřejmě je namístě řešit důvod (např. chyba driveru), avšak v okamžiku kdy taková situace nastane a na vyřešení je asi tak 5 minut, je třeba také ochránit data.
Což je ovšem úplně jiný problém. Takže neřešíte problém externího disku, který přežije odpojení, ale jak odmountovat souborový systém, kterému se ztratilo blokové zařízení, na kterém byl připojen.
Bylo by zajímavé vidět, co vám umount v takové situaci vypíše. Já bych zkusil umount -f.
-
Takže neřešíte problém externího disku, který přežije odpojení, ale jak odmountovat souborový systém, kterému se ztratilo blokové zařízení, na kterém byl připojen.
Přesněji: řeším problém externího disku, který přežije neodmountování souborového systému z libovolného důvodu.
Bylo by zajímavé vidět, co vám umount v takové situaci vypíše. Já bych zkusil umount -f.
Až se to příště stane, rád se o to podělím. Ale raději bych byl, kdyby se to už nestalo :-)
-
Přesněji: řeším problém externího disku, který přežije neodmountování souborového systému z libovolného důvodu.
Popisujete situaci, kdy dojde k přerušení komunikace mezi diskem a počítačem, ať už z jakéhokoli důvodu. To může způsobit problém na straně disku (poškození souborového systému) i na straně počítače (zůstane tam viset připojení k disku a systém čeká, zda se disk náhodou znovu neobjeví).
Na straně disku (předejít poškození souborového systému při náhlém odpojení disku) se to řeší souborovým systémem, který takovou situaci přežije bez poškození – žurnálovací souborové systémy, CoW souborové systémy…
Na straně počítače bych pro odpojení zkusil umount -f. Pravděpodobně pak bude možnost nastavit nějaký timeout pro odpojení – u externích disků má smysl při odpojení nějakou chvíli počkat, jestli se disk náhodou neobjeví zpět. Čekal bych, že někde půjde nastavit timeout, jak dlouho se čeká, než se ten disk prohlásí za definitivně odpojený.
-
Na straně disku (předejít poškození souborového systému při náhlém odpojení disku) se to řeší souborovým systémem, který takovou situaci přežije bez poškození – žurnálovací souborové systémy, CoW souborové systémy…
Měl byste tip na takový souborový systém? Měl by fungovat pod Linuxem i Windows bez instalace speciálních ovladačů.
Částečně by vyhovoval Media Transfer Protocol, ovšem to není souborový systém, musel by být v tom převodníku. Potřebuji aby se choval podobně jako disk v tom smyslu, že uvidím i další vlastnosti souborů a půjde s ním pracovat v běžném manageru jako je Total Commander nebo Altap Salamander. To už je pak lepší obyčejný FTP protokol, ale na něj je třeba klient a nevím že by fungoval na USB.
Kdyby byl nějaký emulátor souborového systému, který se zvenku bude chovat jako obyčejný disk a uvnitř nedovolí poškození souborového systému, když operační systém nějak zdechne. Asi by to bylo na úkor rychlosti, ale to by nebyl takový problém.
-
Lukas1500: Zeptám se jinak - co ti nefunguje? Co se ti rozbilo? Nebo řešíš jenom teoretickou situaci?
Před dávnými lety, když začínal BitLocker, tak jsme testovali externí USB disky na odpojení, odpojení během zápisu a podobně (odpojení USB, odpojení zdroje) a disk/NTFS byl v pohodě, problém byl jenom s nezapsanými daty.
luks+ext4 jsme testovali podobně.
Vyber si cestu windows nebo linux, nechtěj ale něco, co funguje v obojím - zúžíš si manévrovací prostor na fat a exfat (ntfs jsme i na nových ovladačích v linuxu rozbili).
-
Lukas1500: Zeptám se jinak - co ti nefunguje? Co se ti rozbilo? Nebo řešíš jenom teoretickou situaci?
Stalo se mi asi třikrát, že filesystém nešel odpojit (přístup z aplikace Thunar). USB flešky pak zlobily, ale ve Windows se podařilo je obnovit. Nevím už co tam bylo za FS, možná FAT32 nebo NTFS. Možná že s FAT32 kupodivu problém nebyl.
Horší to bylo s USB HDD, který měl NTFS a snad ani nebyl problém s odpojením v Linuxu, každopádně po připojení do Windows ho Windows nechtěl znát a chkdsk ho opravil tak, že našel a vymazal poškozená data a zůstal prázdný disk. Naštěstí byly k dispozici zálohy záloh, přesto bych se chtěl takové situaci v budoucnu vyhnout. Jednak z lenosti a potom, jak už to bývá, takové problémy nastávají, když je spěch a není čas se jimi zabývat.
Vyber si cestu windows nebo linux, nechtěj ale něco, co funguje v obojím - zúžíš si manévrovací prostor na fat a exfat (ntfs jsme i na nových ovladačích v linuxu rozbili).
To je právě problém, že potřebuji aby to spolehlivě fungovalo v Linuxu i ve Windows.
Zatím to spíše vypadá, že bych měl zapomenout na USB disk a použít nějaké domácí síťové úložiště. Nebo místo "flešky" používat mobil s MTP :-)
-
U flešky bych čekal fat32, nikdy ale nevíš jestli už ení na odchodu do křemíkového nebe
Skvěle, potvrzuješ mi, že podpora NTFS v Linuxu není důvěryhodná.
Nativní a fungující v Linuxu i ve Windows je bohužel stále dost utopické. Buďto chceš FUNGUJÍCÍ řešení, nebo chceš PŘENOSITELNÉ řešení, kde ale budeš mít větší chybovost.
-
Přesněji: řeším problém externího disku, který přežije neodmountování souborového systému z libovolného důvodu.
no tak jedině vfat nebo exfat a do fstabu dát parametr sync
-
Skvěle, potvrzuješ mi, že podpora NTFS v Linuxu není důvěryhodná.
No, moc skvělé to není, aspoň pro mne ;)
Možná jde o slavnou "NTFS3 error".
Nativní a fungující v Linuxu i ve Windows je bohužel stále dost utopické. Buďto chceš FUNGUJÍCÍ řešení, nebo chceš PŘENOSITELNÉ řešení, kde ale budeš mít větší chybovost.
:'(
-
Tak trochu jsem čekal, že to bude nabízet některý výrobce externích disků, jako "logicky" bezpečné úložiště. Jako "fyzicky" bezpečná úložiště, odolná proti pádu, se některá označují. Také existují zabezpečení před neoprávněným přístupem k datům, včetně zničení dat při opakovaném chybném zadání hesla. Ale bezpečná přenosná úložiště proti poškození systémem zřejmě nejsou :(
-
Lukas1500: Asi nechápeš, že tohle není věc výrobce disku - po hardwarové stránce vše funguje. Tohle se týká filesystemu
-
Lukas1500: Asi nechápeš, že tohle není věc výrobce disku - po hardwarové stránce vše funguje. Tohle se týká filesystemu
Měl jsem na mysli výrobce externích disků, kteří prodávají hotovou "krabičku s USB konektorem" a kdyby chtěli, mohli by do ní takový převodník s emulací filesystému přibalit.
-
Měl jsem na mysli výrobce externích disků, kteří prodávají hotovou "krabičku s USB konektorem" a kdyby chtěli, mohli by do ní takový převodník s emulací filesystému přibalit.
Proč by takový nesmysl někdo dělal? Neřeší to žádný problém, navíc by to bylo pekelně složité.
Počítač s diskem nekomunikuje na úrovni souborového systému. Komunikuje s ním na úrovni bloků. Vy byste chtěl něco, co z této komunikace na úrovni bloků uhodne, o jaký se jedná souborový systém (OK, to by se mohlo zjistit třeba při formátování, a někam uložit), pak z té komunikace uhodne, jaká operace nad tím souborovým systémem se provádí, a přeložilo by to do interního souborového systému, který by používal ten disk.
Takové práce by to bylo, a přidaná hodnota by byla čistá nula. Jen by s tím byly problémy, protože by ta emulace nefungovala 100%.
Pokud už někdo chce externí disk, který má svůj souborový systém, připojuje ho po síti jako NAS a komunikuje s ním některým z protokolů pro síťové souborové systémy.
-
To, že souborový systém přežije ztrátu napájení, byla klíčová vlastnost každého souborového systému, který nebyl určen jen na hraní. Řeší se to např. žurnálováním (ext3, ext4, XFS, JFS, HFS+, NTFS) nebo copy-on-write mechanismem (btrfs, ZFS).
No já bych spíš řekl svatý grál či zbožné přání. Pořád mi přijde, že rada nasadit ZFS, které je primárně pro velká/redundantní/zálohovaná řešení používající UPS/ECC/disky/řadiče které nelžou o SYNC zápisech, do situace "zrovna se to nechce nechat unmountnout, tak prostě vytrhnu dráty", není dobrá.
Pak tady bude bědovat, že to nejde mountnout, že to nemá checkdisk, že záloha je stará (v lepším případě) a že je to FS na ****.
-
To, že souborový systém přežije ztrátu napájení, byla klíčová vlastnost každého souborového systému, který nebyl určen jen na hraní. Řeší se to např. žurnálováním (ext3, ext4, XFS, JFS, HFS+, NTFS) nebo copy-on-write mechanismem (btrfs, ZFS).
No já bych spíš řekl svatý grál či zbožné přání. Pořád mi přijde, že rada nasadit ZFS, které je primárně pro velká/redundantní/zálohovaná řešení používající UPS/ECC/disky/řadiče které nelžou o SYNC zápisech, do situace "zrovna se to nechce nechat unmountnout, tak prostě vytrhnu dráty", není dobrá.
Pak tady bude bědovat, že to nejde mountnout, že to nemá checkdisk, že záloha je stará (v lepším případě) a že je to FS na ****.
Já jsem tam těch souborových systémů vyjmenoval víc. Pokud disk dělá zápisy v pořadí, v jakém je dostal, nevadí ani, když lže o SYNC – nebudou tam sice zapsaná nějaká data, která byla potvrzena, ale pořád to nenaboří souborový systém. Prostě to z hlediska souborového systému jen vypadá, jako by byl disk odpojen dřív.
Ty souborové systémy jsou opravdu stavěné na to, aby výpadek v kterémkoli okamžiku nenabořil souborový systém (pokud je tam žurnálování nebo CoW metadat) nebo ani obsah souborů (pokud je tam žurnálování dat nebo CoW na datech).