web-dev-qa-db-ja.com

UbuntuサーバーのUnicode文字

最近、Ubuntu Desktop13.04からUbuntuServer 13.10に移行しましたが、ファイルシステムがUnicode文字をサポートしていないようです。 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/

apt-get install unicodeを介してUnicodeライブラリをインストールしようとしましたが、問題を解決するまでは何もしなかったようです。

更新:これはカーネルの問題である可能性があります。 samba/cifsをコピーしていて、mount -t cifs //192.xxx.xxx.xxx/source/ /media/target/ -o iocharset=utf8を介して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
James

さて、上記のトラブルシューティングと多くのグーグルの後...私はこれを見つけました バグレポート 解決策が説明されています。基本的に、Ubuntu Serverの最小インストールを実行すると、まさにその最小限のドライバーが得られます。 utf8は、最小限のドライバーセットに含めるほど重要ではないと誰かが判断したと思います。したがって、そのインストールタイプを実行した場合、utf8サポートを取得するには、後でlinux-image-extra-virtualパッケージをインストールする必要があります。 utf8文字セットをサポートするための232MBの追加ドライバー...効率的。 :-/とにかくこれは問題を修正しました。

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/

更新(2015年2月22日):

--no-install-recommendsapt-get引数を使用すると、はるかに軽いインストールで回避できる場合があります。 私はそれを試していません、しかし多分あなたがこの問題を抱えているならあなたはすることができます。

あなたは試すことができます:

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

それでも問題が解決しない場合は、再インストールするだけですが、次のことをお勧めします。

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