Portál AbcLinuxu, 2. května 2024 01:59


Dotaz: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně

Poustevník avatar 8.2.2020 22:48 Poustevník
Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Přečteno: 578×
Odpovědět | Admin
Příloha:
Na Ubuntu mi nelze nakopírovat soubory s diakritikou v názvu. Potřebuji to pro přenos souborů z FTP, používám program Filezilla.

Některé soubory se nekopírují, přestože diakritiku v názvu nemají. Viz obrázek v příloze.

Co s tím?

Řešení dotazu:


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

Odpovědi

k3dAR avatar 8.2.2020 22:59 k3dAR | skóre: 62
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Odpovědět | | Sbalit | Link | Blokovat | Admin
ve FileZilla/SpravaMist u spojeni zkoukni list "Znakova Sada"
porad nemam telo, ale uz mam hlavu... nobody
Poustevník avatar 9.2.2020 00:02 Poustevník
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Ve znakové sadě mám zaškrtnutou autodetekci, protože na web si uživatelé ukládají svoje soubory v různých znakových sadách.

Jde mi jen o to, jak přenést všechny soubory aniž by se jakkoliv měnily. Ve windows tento problém není, ale zase je tam problém s kolizí stejnojmenných souborů s různou velikostí písma v názvu souboru.
Poustevník avatar 9.2.2020 00:06 Poustevník
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Jinak mám na podnět této rady vyzkoušeno několik znakových sad a výsledek se nijak nezměnil. Možná je problém jinde.
9.2.2020 07:53 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kvôli eliminácii takýchto problémov sa vyvinula a aj začala používať znaková sada Unicode. Poprosím detail o veku toho Ubuntu (v Ubuntu sa Unicode používa vo východzom stave pri všetkých podporovaných verziách, vrátane 12.04 + 14.04 ktoré sú podporované už len za peniaze), o nastavení kódovej stránky v tom FTP serveri a o nastavení kódovej stránky tých problematických windows FTP klientov.
k3dAR avatar 9.2.2020 18:00 k3dAR | skóre: 62
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
[...] vrátane 12.04 + 14.04 ktoré sú podporované už len za peniaze [...]
BTW: 14.04 ma moznost free rozsirene podpory, psal sem to nedavno na root ale protoze to "spadlo" do /dev/null, tak to sem radeji i zkopiruju :-)

Pokud nekdo z jakehokoliv duvodu pouzivate jeste *buntu 14.04.x, narazil sem na moznost zdarma (pro max 3 stroje) aktivovat rozsirenou podporu, diky ktere budou (nezkoumal sem do kdy) dorucovany v ramci "apt upgrade" bezpecnosti aktualizace...

k aktivaci staci mit UbuntuOne ucet a postupovat podle par kroku tam uvedenych: https://ubuntu.com/advantage

pro zajimavost, pred aplikovanim se mi aktualizace neukazala zadna, po aplikovani:
Načítají se seznamy balíků… Hotovo
Vytváří se strom závislostí       
Načítají se stavové informace… Hotovo
Propočítávám aktualizaci… Hotovo
Následující balík byl nainstalován automaticky a již není potřeba:
  linux-modules-extra-4.4.0-148-generic
Pro jeho odstranění použijte „apt-get autoremove“.
Následující NOVÉ balíky budou nainstalovány:
  linux-headers-4.4.0-173 linux-headers-4.4.0-173-generic
  linux-image-4.4.0-173-generic linux-modules-4.4.0-173-generic
  linux-modules-extra-4.4.0-173-generic
Následující balíky budou aktualizovány:
  apport apport-gtk aptdaemon aptdaemon-data aspell bash bind9-host bzip2 cpio
  dbus dbus-x11 dnsutils e2fslibs e2fsprogs file initscripts intel-microcode
  krb5-locales libarchive13 libaspell15 libavcodec54 libavformat54 libavutil52
  libbind9-90 libbsd0 libbz2-1.0 libc-bin libc-dev-bin libc6 libc6-dbg
  libc6-dev libcomerr2 libcurl3 libcurl3-gnutls libdb5.3 libdbus-1-3 libdns100
  libexpat1 libexpat1-dev libfreetype6 libfreetype6-dev libgcrypt11
  libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev libgssapi-krb5-2
  libisc95 libisccc90 libisccfg90 libk5crypto3 libkrb5-3 libkrb5support0
  libldap-2.4-2 liblwres90 libmagic1 libmp3lame0 libnss3 libnss3-1d
  libnss3-nssdb libpcap0.8 libpython2.7 libpython2.7-minimal
  libpython2.7-stdlib libpython3.4 libpython3.4-minimal libpython3.4-stdlib
  libsasl2-2 libsasl2-modules libsasl2-modules-db libsdl1.2debian libsmbclient
  libsqlite3-0 libss2 libssh2-1 libwbclient0 libxslt1.1
  linux-generic-lts-xenial linux-headers-generic-lts-xenial
  linux-image-generic-lts-xenial linux-libc-dev multiarch-support ntpdate
  patch python-apt python-apt-common python-aptdaemon
  python-aptdaemon.gtk3widgets python-samba python-urllib3 python2.7
  python2.7-minimal python3-apport python3-apt python3-aptdaemon
  python3-aptdaemon.gtk3widgets python3-aptdaemon.pkcompat
  python3-problem-report python3.4 python3.4-minimal samba samba-common
  samba-common-bin samba-dsdb-modules samba-libs samba-vfs-modules screen
  smbclient sudo sysv-rc sysvinit-utils tcpdump tzdata tzdata-java
  wpasupplicant
115 aktualizováno, 5 nově instalováno, 0 k odstranění a 0 neaktualizováno.
Nutno stáhnout 118 MB archivů.
Po této operaci bude na disku použito dalších 259 MB.
porad nemam telo, ale uz mam hlavu... nobody
Poustevník avatar 10.2.2020 04:47 Poustevník
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Poprosím detail o veku toho Ubuntu

Jak zjistím věk toho ubuntu? Mám verzi 19.10 a dnes po aktualizacích problém přetrvává stále. Na FTP je web nastavený na UTF-8, ale uživatelé si tam mohou ukládat libovolné soubory.
10.2.2020 09:08 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Pokiaľ je to Ubuntu, tak verzia určuje rok a mesiac vydania. V prípade 19.10 je to verzia z desiateho mesiaca roku 2019. Teda je to ani nie pol roka staré. Síce to má podporu Unicode, ale klienti čo nahrávajú dáta na FTP server ju nemusia mať.

No, toto je jeden z príkladov že prečo malo FTP zomrieť v minulom tisícročí. Nemá príkaz ktorým by klient povedal serveru "Teraz ti poviem názov súboru v kódovej stránke Windows 1250", alebo ISO-8859-2 (Latin 2), alebo v kóde Kamenických. Jednoducho to tam strelí. A zblbne to.

Odporučil by som použiť iný protokol prenosu. Niečo, z tohoto tisícročia.
Řešení 1× (Poustevník (tazatel))
9.2.2020 16:01 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Odpovědět | | Sbalit | Link | Blokovat | Admin
Skus gftp a pokud i tam to bude zmršené tak vidím problém asi na tom ftp serveru.

Pak zkusit všude nastavit natvrdo unicode co to bude dělat.
Poustevník avatar 10.2.2020 05:42 Poustevník
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Tak gFTP částečně pomohlo. Vypadá to, že soubory s diakritikou jsou staženy. V rámci toho ftp lkienta se názvy kritických souborů nezobrazují vůbec a v systému Ubuntu jsou znaky s diakritikou zastoupeny otazníkem v černém kosočtverci a navíc pod názvem je napsáno "neplatné kódování".

Bohužel se moc v tom gFTP neorientuji a nedokáži posoudit, zda se přeneslo vše a ani netuším, zda se data stáhla bezezměny. Pokud takto zálohovaná data nahraji zpět na server, bude to identické s "předlohou" nebo je to kódování pro přenos/zálohy fatální problém?
10.2.2020 08:45 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Diakritika - FTP soubory s diakritikou v názvu se nezobrazují správně
Pokud se někde během přenosu ty neplatné znaky změní nebo nahradí, což je dost pravděpodobné, budete mít v té záloze špatně pojmenované soubory a po obnovení ze zálohy je nenajdete pod původním jménem. Pokud je to záloha webu, přestanou např. fungovat odkazy.

Není žádný standard pro ukládání názvů souborů v linuxu, názvy se ukládají jako bajty a záleží na konkrétním softwaru, jakým způsobem je bude interpretovat – obvykle použije aktuální nastavení locale. FTP server může deklarovat, že pro přenos názvů souborů používá UTF-8, ale samozřejmě pak musí vědět, v jakém kódování jsou uložené názvy na disku. Takže jediná možnost je používat na celém serveru jedno nastavení (doporučuju UTF-8) a pak při přenosu z klienta v klientovi nastavit, že názvy souborů na serveru jsou v kódování UTF-8 (pokud to klient neumí detekovat automaticky). Pozor na to, že je to něco jiného, než kódování obsahu textových souborů – to může FTP klient také překládat, a klidně může být v jiném kódování obsah souboru a v jiném jeho název.

Vzhledem k tomu, že teď už máte nějaké soubory na disku a mohou být špatně pojmenované, až si nastavíte to jedno kódování pro všechny aplikace na serveru, možná budete muset soubory přejmenovat, aby měly názvy v tomto správném kódování. K tomu se může hodit utilita convmv.

Založit nové vláknoNahoru

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

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