Символы Юникода в Ubuntu Server


10

Я недавно мигрировал с Ubuntu Desktop 13.04 на Ubuntu Server 13.10, и теперь моя файловая система, похоже, не поддерживает символы Юникода. Я использую rsync для резервного копирования / синхронизации файлов, и он показывает правильные символы, но хочет удалить несоответствующее имя файла и создать экранированную версию.

Например:

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

Кроме того, если я копирую файл Unicode в файловую систему, он отображается как:

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

Я попытался установить библиотеки Unicode через, apt-get install unicodeно это, похоже, ничего не решило.

Обновление: теперь это может быть проблема с ядром. Я копирую через samba / cifs и пытался указать кодировку utf8 через, mount -t cifs //192.xxx.xxx.xxx/source/ /media/target/ -o iocharset=utf8но это выдает ошибку ...

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

Проверка журнала ядра показывает этот маленький драгоценный камень:

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

Как получить поддержку utf8 в ядре?

Любые идеи?

Ответы:


10

Хорошо, после устранения неполадок, приведенных выше, и большого количества поисков ... Я нашел этот отчет об ошибке, в котором объясняется решение. По сути, если вы выполняете минимальную установку Ubuntu Server, вы получаете именно это, минимальные драйверы. Думаю, кто-то решил, что utf8 недостаточно важен для включения в минимальный набор драйверов. Таким образом, если вы сделали этот тип установки, вам необходимо установить linux-image-extra-virtualпакет позже , чтобы получить поддержку utf8. 232 МБ дополнительных драйверов для поддержки набора символов utf8 ... Эффективно. Во всяком случае это решило проблему.

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.

Тестирование копии файла utf8:

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

Затем проверка:

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

Обновление (22.02.2015):

Возможно, вам удастся избежать более легкой установки, если вы используете --no-install-recommendsаргумент для apt-get. Я не пробовал , но, возможно, вы могли бы, если у вас возникла эта проблема.

Вы можете попробовать:

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

Если это не решит проблему, просто переустановите, но с рекомендациями:

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

Это добавило большинство символов Юникода для меня, но я обнаружил, что некоторые все еще отсутствуют. Такие вещи, как специальные двойные кавычки, такие как «Принц», не работают.
Тулиха
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.