Aktualisierung (22.02.2015):

Aktualisierung (22.02.2015):

Ich bin vor Kurzem von Ubuntu Desktop 13.04 auf Ubuntu Server 13.10 migriert und nun scheint mein Dateisystem keine Unicode-Zeichen mehr zu unterstützen. Ich verwende rsync zum Sichern/Synchronisieren von Dateien und es zeigt die richtigen Zeichen an, möchte aber den nicht übereinstimmenden Dateinamen löschen und eine maskierte Version erstellen.

Zum Beispiel:

root@ubuntu-server:~# rsync -avh --progress --delete --dry-run --exclude \$RECYCLE.BIN /media/source/ /media/target/

deleting Tiësto - Ten Seconds Before Sunrise.mp3
Ti\#353sto - Ten Seconds Before Sunrise.mp3

Wenn ich eine Unicode-Datei in das Dateisystem kopiere, wird sie außerdem folgendermaßen angezeigt:

drwxr-xr-x 3 root root      4096 Jan 21  2013 DJ Ti?sto/

Ich habe versucht, Unicode-Bibliotheken über zu installieren, apt-get install unicodeaber das hat das Problem anscheinend nicht gelöst.

Update: Dies könnte nun ein Kernelproblem sein. Ich kopiere über Samba/CIFS und habe versucht, den UTF-8-Zeichensatz anzugeben, mount -t cifs //192.xxx.xxx.xxx/source/ /media/target/ -o iocharset=utf8aber dies erzeugt einen Fehler ...

mount error(79): Can not access a needed shared library
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

Bei der Überprüfung des Kernel-Protokolls wird dieses kleine Juwel sichtbar:

root@ubuntu-server:~# tail /var/log/kern.log
Nov 30 03:51:33 ubuntu-server kernel: [ 1756.518222] CIFS VFS: CIFS mount error: iocharset utf8 not found

Wie erhalte ich UTF-8-Unterstützung im Kernel?

Irgendwelche Ideen?

Antwort1

Ok, nach der oben beschriebenen Fehlerbehebung und viel Googeln ... habe ich dies gefundenFehlerberichtwo die Lösung erklärt wird. Wenn Sie eine Ubuntu Server Minimal-Installation durchführen, erhalten Sie im Grunde genau das: minimale Treiber. Ich schätze, jemand hat entschieden, dass UTF-8 nicht wichtig genug ist, um es in den minimalen Treibersatz aufzunehmen. Wenn Sie also diese Installationsart gewählt haben, müssen Sie das linux-image-extra-virtualPaket später installieren, um UTF-8-Unterstützung zu erhalten. 232 MB zusätzliche Treiber zur Unterstützung des UTF-8-Zeichensatzes ... Effizient. :-/ Jedenfalls hat das das Problem behoben.

root@ubuntu-server:~# apt-get install linux-image-extra-virtual
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
    crda iw libnl-3-200 libnl-genl-3-200 linux-firmware linux-image-3.11.0-13-generic
    linux-image-extra-3.11.0-13-generic linux-image-generic wireless-regdb
The following NEW packages will be installed:
    crda iw libnl-3-200 libnl-genl-3-200 linux-firmware linux-image-3.11.0-13-generic
    linux-image-extra-3.11.0-13-generic linux-image-extra-virtual
    linux-image-generic wireless-regdb
0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded.
Need to get 73.5 MB of archives.
After this operation, 232 MB of additional disk space will be used.

Testen der UTF-8-Dateikopie:

root@ubuntu-server:~# cp -a /media/source/DJ* /media/target/.

Anschließend prüfen:

root@ubuntu-server:~# ll
drwxr-xr-x 3 root root      4096 Jan 21  2013 DJ Tiësto/

Aktualisierung (22.02.2015):

--no-install-recommendsWenn Sie das Argument to verwenden, können Sie möglicherweise eine wesentlich einfachere Installation durchführen apt-get.Ich habe es nicht probiert, aber vielleichtSie könntenwenn Sie dieses Problem haben.

Du könntest es versuchen:

apt-get install --no-install-recommends linux-image-extra-virtual

Wenn das Problem dadurch nicht behoben wird, führen Sie eine Neuinstallation durch, allerdings mit den folgenden Empfehlungen:

apt-get install --reinstall linux-image-extra-virtual

verwandte Informationen