2011-11-23 6 views
0

私はLinuxで、ドライブをマウントするBASHシェルスクリプトを持っています。私はいつも 'root'として実行しています。でも... sudoを持っているか、suコマンドがインストールされ、場合に重要BASH /シェルスクリプトが正しくUFT-8をマウントできない(私は思う!)

私の問題は、私はのための正しいオプションで各パーティションタイプをマウントするにはどうすればよい...特にVFATパーティション上で、UTF-8のファイル名やディレクトリで

ですUTF-8ファイル名

TYPE="$(guess_fstype /dev/"${1}" 2>/dev/null)" 
    # create mount point if it does not exist 
    [ ! -e /mnt/$1 ] && mkdir -p /mnt/$1 
    case $TYPE in 
     vfat) /bin/mount -t vfat /dev/$1 /mnt/$1 -o shortname=mixed,quiet,utf8 
      success=$? ;; 
     iso9660) mount -t iso9660 /dev/$1 /mnt/$1 -o utf8 
      success=$? ;; 
     ntfs) mount -t ntfs /dev/$1 /mnt/$1 
      success=$? ;; 
     unknown) mount /dev/$1 /mnt/$1 -o utf8 
      success=$? ;; 
     *) mount -t $TYPE /dev/$1 /mnt/$1 
      success=$? ;; 
    esac 
+0

'man mount'にはvfatのセクションにiocharsetがあります。 – thiton

答えて

1

正確には機能しないものはありますか?それはマウントされているのか、それとも後でファイルをリストしていますか?あなたのロケールをチェックしてください。そして、私は多かれ少なかれ、すべてのファイルシステムが文字セットを設定するための特定のオプションを持っていても、utf8オプションを受け入れると思う。チェックman mount

+0

あなたはコメントとして質問を投稿できますか?これは答えではありません – sehe

+0

さて、あなたのロケールをチェックしてください。本当に質問ではありません。私はいくつかの提案を投稿しました、なぜそれが問題を解決するのに十分かもしれない場合、それは答えではありませんか? –

+0

ハハ。今や、当初よりもいくつかの選択肢があります。当初、あなたは何がうまくいかないのか分からずに「暴言」をしていました。のみ。それは少し答えが薄いです:) – sehe