Portál AbcLinuxu, 25. dubna 2024 22:01

Oprava názvů souborů zapsaných pomocí IFS driveru

27.5.2013 22:43 | Přečteno: 1115× | Linux

V dřívějších dobách, kdy Linux neuměl dobře pracovat s NTFS se na externí zařízení používal souborový systém Ext3, protože do Windows existovaly ovladače.

Jedním z nich byl i Ext2 Installable File System for Windows, který jsem používal i já. Žel výsledkem jsou problémy s kódováním názvů souborů, protože první verze neuměly UTF-8, stejně jako toto kódování nepoužíval ani GNU/Linux. Dost jsem se s tím natrápil a o některá data dokonce přišel, protože místo některých znaků (typicky ž) se zobrazoval znak otazníku, se kterým je v názvu souboru problém (např. je přesunout).

Konečně jsem našel řešeni:

sudo convmv -r -f cp852 -t utf8 --notest *

který je potřeba spustit v kořenu disku. Dost mi dalo zabrat než jsem zjistil, že je to v CP852, protože jsem myslel, že to je Latin2.

Po spuštění se potvrdilo to, že některé názvy jsou v UTF-8 a jiné ne, protože občas se objevilo: "Skipping, already UTF-8:"

       

Hodnocení: 100 %

        špatnédobré        

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

Komentáře

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

Vložit další komentář

28.5.2013 07:12 disorder | blog: weblog
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Odpovědět | Sbalit | Link | Blokovat | Admin
cp1250
28.5.2013 11:10 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Jsem nepochopil Tvůj příspěvek.
gtz avatar 28.5.2013 22:13 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Většina externích NTFS systémů, disků apod. bývá převážně v kódování CP1250. Nikdo, ale NIKDO nepoužívá na EXTERNÍ disky kódování LATIN2 (problémy typu : české znaky, délka souborů apod.). Stránka CP1250 je podobná jako CP852, raději bych při exportu volil CP1250 než 852.
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
28.5.2013 22:40 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru

Tak tento příspěvek jsem nepochopil už vůbec :).

1) Na disku nebyl NTFS, ale Ext3.

2) Neexportovalo se do cp852, ale z cp852.

gtz avatar 28.5.2013 22:57 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Myslel jsem tím to, že bych nedával na externí disk Ext3 FS. Už jen kvůli problémům v českém kódování. NTFS-3G funguje už myslím hodně dlouho a celkem bez problémů. Problém tehdy býval i v možném použití disku jinde kde nebylo Ext3 driver (existoval i v RO pro TC), ale všude nebyla možnost něco instalovat etc. Tehdy v minulosti jsem to také řešil a raději jsem na externí disk volil raději VFAT než Ext3 systém (VFAT se na Widlích vždy přečetl celkem správně).

Ohledně toho exportu je jedno zda je to odtud nebo tam. V minulosti se používala cp852, kterou nahradila právě ta cp1250. 1250 obsáhne myslím více znaků než konverze z/do cp852. Latin2 se používala jen u fontů jako EE a většinou to byla česká lokalizace EN Windows.
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
28.5.2013 23:19 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru

Asi jsi hodně mladý :). Wikipedie uvádí: "NTFS-3G byl představen programátorem Szabolcsem Szakacsitsem v červenci 2006. První stabilní verze 1.0 byla vydána 21. února 2007."

My jsme to řešili v roce 2005. Pamatuji se, že napřed ten ovladač uměl jenom z disku číst a teprve pak zapisovat a bylo to označováno za experimentální.

Proč jsme nepoužili FAT si nepamatuji - nějak si nevybavuji, že bychom ho vůbec zvažovali. Mám pocit, že na tom disku byl operační systém GNU/Linux a že to mělo bootovat.

gtz avatar 29.5.2013 10:15 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Asi jsi hodně mladý
No spíše toho hodně pamatuji == ročník 1964, pamatuji si ještě SMEP :)

No to jsi mě dostal s tím rokem NTFS-3G (nějak jsem zapomenul na roky jak běží ..), já jsem to řešil podobně někdy 2004/2005 když zákazník chtěl připojit na linuxový systém FS s něčím od Windows. Tehdy si jen pamatuji, že se to ve spojení se Suse nějak vyřešilo (už si ani nevzpomenu jak).
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
29.5.2013 11:11 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Tak to jsem o 10 let mladší :). Já už taky přesně nevím, proč jsme to dělali tak a tak - každopádně jsem rád, že jsem to vyřešil, protože jsem už potřeboval ten disk předělat na NTFS a tím, že jsem to z něho nemohl rozumně dostat se nedal přeformátovat.
gtz avatar 29.5.2013 13:49 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Já jsem si s těmi exporty taky užil své a nakonec vždy byla výhodnější ta cp1250, která zachovala na 99% kódování. No stalo se mi, že na disku byl mix kódování - byl tam mix ISO8559 a nějakého EE čehosi. A úplně nejhorší situace je když na disku je mix východní Evropy/Ruska/Západní Evropy. Dostal se mi do rukou disk a díval jsem se půlka disku totálně nečitelná (azbuka) a druhá půlka občas čitelná. Nakonec se to nějak podařilo zkopírovat, ale byl to boj na pár dní :)
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
29.5.2013 14:33 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Já jsem tam měl taky mix, ale naštěstí ten driver časem přešel na utf-8 a ten příkaz ty soubory pozná a neopravuje, takže soubory s názvem v azbuce, které jsem nahrával už s novějším driverem jsou v pohodě. Měl jsem problém jen s jedním souborem a u toho jsem ty otazníky přeměnil ručně.
gtz avatar 29.5.2013 15:33 gtz | skóre: 27 | blog: gtz | Brno
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Názvy bývají nějak v pohodě, ale horší věc je kódování mezi Win-Linuxu na úrovni nějakých webových služeb.

Párkrát jsem narazil na: Non-ISO extended-ASCII text, with very long lines, with CRLF line terminators což je něco co leze z MS věcí a čeština je tam totálně nečitelná. Hrál jsem si s tím a nakonec mi nezbylo než to načíst ve Windowsech a v nich pře-uložit do UTF-8.
- nejhorší jsou trpaslíci ... Ti Vám vlezou úplně všude
pavlix avatar 28.5.2013 10:35 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Odpovědět | Sbalit | Link | Blokovat | Admin
Jojo, UTF-8 má výhodu, že se docela dobře detekuje.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
28.5.2013 12:29 Honz
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Odpovědět | Sbalit | Link | Blokovat | Admin
Je docela škoda, že vývojáři neudělali ovladače do Uindousů i pro další filesystémy, aspoň pro Ext4. Nebo mi něco ušlo?
28.5.2013 12:48 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
A proč?
28.5.2013 13:27 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Spíš by bylo lepší, kdyby byly k dispozici informace o FS, které používá Windows, aby se jednodušeji dělaly drivery pro Linux.
30.5.2013 19:33 michal
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
www.ext2fsd.com/ A je na rozdíl od v blogu zmíněného dokonce open source.
29.5.2013 08:56 Jiří Lisický | skóre: 31 | blog: JIL_blog | Olomouc
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Odpovědět | Sbalit | Link | Blokovat | Admin
CP852 se říká opravdu Latin2 a ISO-8859-2 zas ISO-Latin2
Na můj vkus je to poněkud zmatečné....
Josef Kufner avatar 30.5.2013 23:36 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Oprava názvů souborů zapsaných pomocí IFS driveru
Odpovědět | Sbalit | Link | Blokovat | Admin
Ono ten otazník není problém, pokud ho umíš nenapsat. Linuxu je úplně putna jaké znaky má v názvu souboru – funguje vše vyjma '\0' a '/'. To jen ty programy, které vypisují názvy souborů tam místo podivných netisknutelných bajtů nasází otazníky.
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

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