Personaggi Unicode in Ubuntu Server


10

Di recente sono migrato da Ubuntu Desktop 13.04 a Ubuntu Server 13.10 e ora il mio filesystem non sembra supportare i caratteri Unicode. Uso rsync per eseguire il backup / sincronizzazione dei file e mostra i caratteri corretti, ma vuole eliminare il nome file non corrispondente e creare una versione con escape.

Per esempio:

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

Inoltre, se copio un file unicode nel file system, viene visualizzato come:

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

Ho provato a installare librerie unicode tramite apt-get install unicodema ciò non sembra aver fatto nulla per quanto riguarda la risoluzione del problema.

Aggiornamento: ora potrebbe trattarsi di un problema del kernel. Sto copiando su samba / cifs e ho provato a specificare il set di caratteri utf8 tramite mount -t cifs //192.xxx.xxx.xxx/source/ /media/target/ -o iocharset=utf8ma questo genera un errore ...

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

Controllare il registro del kernel rivela questo piccolo gioiello:

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

Come ottengo il supporto utf8 nel kernel?

Qualche idea?

Risposte:


10

Ok, dopo la risoluzione dei problemi sopra e molto googling ... Ho trovato questa segnalazione di bug in cui viene spiegata la soluzione. Fondamentalmente, se esegui un'installazione minima di Ubuntu Server ottieni esattamente questo, driver minimi. Immagino che qualcuno abbia deciso che utf8 non era abbastanza importante da includere nel set minimo di driver. Pertanto, se è stato eseguito quel tipo di installazione, è necessario installare in seguito il linux-image-extra-virtualpacchetto per ottenere il supporto utf8. 232 MB di driver aggiuntivi per supportare il set di caratteri utf8 ... Efficiente. : - / Comunque questo risolto il problema.

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.

Test della copia del file utf8:

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

Quindi controllando:

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

Aggiornamento (22/02/2015):

Potresti riuscire a cavartela con un'installazione molto più leggera se usi l' --no-install-recommendsargomento per apt-get. Non l'ho provato , ma forse potresti farlo se riscontri questo problema.

Puoi provare:

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

Se non risolve il problema, basta reinstallare, ma con le raccomandazioni:

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

Questo ha aggiunto per me la maggior parte dei caratteri unicode, ma sto scoprendo che alcuni mancano ancora. Cose come le doppie virgolette speciali come questo "Principe" non funzionano.
thouliha,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.