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
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 …

Linux
Various helpful Linux commands for file manipulations

Change file name for all files that contains “[any text]” substring to the same name without that.