Montowanie katalogu z użyciem innego kodowania znaków.

  • By :
  • Category : Linux

Technika przydaje się w różnych warunkach. Dzięki niej nazwa pliku może mieć inne kodowanie w zależności od tego w jakim katalogu jest listowany.

Sposób wykorzystałem  do łatwego robienia kopii bezpieczeństwa katalogów samby.
Jakiś czas temu przez niedopatrzenie w pliku konfiguracyjnym smb.conf zostawiłem następujące wpisy: unix charset = ISO8859-2; dos charset = CP852. Użytkownicy (którzy generują niestety dużo polskich znaków diakrytycznych)  zaczęli zapisywać na dyskach sieciowych pliki przy wykorzystaniu kodowania ISO w ich nazwach. Ponieważ system (debian 5) wykorzystuje kodowanie utf-8 to odczyt tych nazw z poziomu konsoli systemu powodował wyświetlenie znaków zapytania. Chociaż sama samba odczytywała nazwy plików poprawnie, to już robienie kopii zapasowej pliku (tar, 7z) powodowało utratę polskich literek.

Szukając prostego sposobu rozwiązania tego problemu natrafiłem na dwa pakiety dostępne w repozytorium debiana: convmv, fuse-convmvfs. Pierwszy służy do przekształcania nazw plików z jednego formatowania do drugiego. Drugi pakiet umożliwia montowanie (w przestrzeni użytkownika) katalogu w taki sposób aby moduł w locie tłumaczył kodowanie nazw plików.

Konfiguracja fuse-convmvfs:

  • aptitude install fuse-convmvfs
  • modprobe fuse (można dodać do pliku: /etc/modules)
  • convmvfs /home-utf8 -o srcdir=/home, icharset=ISO_8859-2, ocharset=UTF-8 (katalog /home z nazwami plików w iso jest montowany w katalogu /home-utf8 z kodowaniem utf8, polskie znaki są ładnie wyświetlane przez system) – wpis ten można dodać do

Minusy – dodatkowe wykorzystanie procesora przez pakiet.

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Linux
Nginx configuration for joplin note taking app

Introduction Joplin may not be the most perfect note-taking application, but it is open-source, well-known, has a long release history, works on multiple operating systems, and supports plugins. It’s not perfect, but it’s good enough and highly usable. In case of this type of application, it is important to have …

Linux
podcast

All podcast applications I have tested were quite OK(ish) – but I have always struggled with organizing podcasts, creating playlists, etc. It has always been challenging. Therefore, for me, it is more convenient to download podcasts as MP3s and manage them myself (in VLC, for example). There are many ways to do that, but my favorite …

Linux
jellyfin configuration in lxc container

Jellyfin is extremely useful software providing home streaming system. I am using it since a while for streaming my old ripped DVD, which I love to watch again and again. Jellyfin is opensource, cross platform as a server and as a client, including client for android and iOS. It is …