UbuntuでファイルシステムのエンコーディングをUTF-8に変更する


8

現在のファイルシステムで使用されている文字セットエンコーディングを確認する方法と、UTF-8に変更する方法

編集:

これがmountの出力です:

/dev/sdb6 on / type ext3 (rw,relatime,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
/proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
varrun on /var/run type tmpfs (rw,nosuid,mode=0755)
varlock on /var/lock type tmpfs (rw,noexec,nosuid,nodev,mode=1777)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
lrm on /lib/modules/2.6.27-11-generic/volatile type tmpfs (rw,mode=755)
securityfs on /sys/kernel/security type securityfs (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)

これは「cat / etc / fstab」の出力です

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# /dev/sdb7
UUID=50d660f1-1948-41e1-96af-3cb9bca338dd /               ext3    relatime,errors=remount-ro 0       0
# /dev/sdb8
UUID=efaee412-8e29-4f65-927d-f57252451088 none            swap    sw              0       0

回答:


5

Unixライクなシステムでは、ファイル名のエンコーディングはファイルシステムレベルではなく、ユーザー環境で設定されます。の出力を確認しlocale、ドットの後の部分を確認してください。たとえば、私の場合LANG=en_US.UTF-8、環境内のファイル名がUTF-8として解釈されるようにします。これはUbuntuのデフォルト設定です。

デニスウィリアムソンから回答は、翻訳が必要な特殊なファイルシステムタイプに関連します。これの出力mountcat /etc/fstab表示があなたのケースではないため、私はこの問題を取り上げようとはしていません。


1
システムロケールはすでにen_US.UTF-8
ジャック

1
これは本当だとは思いません。私のLANG-en_US.UTF8ですが、Ubuntuはus_asciiとしてファイルを作成します。Ubuntuはエンコーディングファイルシステムレベルでは何もしていません。残念なことに
15年

3

どのファイルシステムかはわかりませんmountが、私のシステムの1つで現在iso9660ファイルシステムと、utf8である2つのvfatファイルシステムが表示されている出力を見ることができます。また、コンテンツを/etc/fstab設定した場所または既に設定されているコンテンツを確認することもできます。man mountNTFSとjfsがそのオプションを持つ2つ以上であることを示しているのを参照してください。


@ Dennis、mountと "cat / etc / fstab"の出力を投稿しました。そこにはcharsetエンコーディング情報がないようです。
ジャック、

それでも、解決しようとしているファイルシステム/デバイスや具体的な問題については述べていません。アミールは言った、あなたは明らかに私が言及したファイルシステムのいずれかを使用していないとあなたが言うlocaleすでに正しいです。問題は何ですか?
追って通知があるまで一時停止。

@デニス、あなたはあなたのマウント出力があなたがiso9660ファイルシステムを持っていることを示していると言いました。マウント出力を投稿しました。出力であなたが言及した「ファイルシステム」に関連するものは何も見つかりませんでした。分かりますか?
ジャック

ファイルシステムは、の出力のmount「type」列の下にある「type」の後に表示されるもの/etc/fstabです。表示される出力では、「ext3」が例です。iso9660ファイルシステムはCD-ROMを指します。具体的には、解決しようとしている問題は何ですか?
追って通知があるまで一時停止。

2

UbuntuはデフォルトでUTF-8エンコーディングを使用しており、変更していないようです。異なるエンコーディングのファイル名を使用できます。その場合は、convmvを使用して修正できます。


-1

要するに、あなたは本当にできない。

ファイル名のエンコーディングと、ファイル内のデータのエンコーディングの2つがあります。どちらの場合も、ファイルシステムは生のバイトを格納するだけです。それらがユーザーが望むエンコーディングであることを確認するのはユーザーの責任です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.