文字セット変換を使用して、CIFS 非 Unicode Samba サーバー経由でマウントする方法は?

文字セット変換を使用して、CIFS 非 Unicode Samba サーバー経由でマウントする方法は?

昔の smbfs ではコードページと iocharset オプションを使用していましたが、cifs ではコードページがサポートされていません。どうすればよいでしょうか?

答え1

問題は、NTFS 共有のファイル名が奇妙な文字で表示されることにあると思います。

によるNTFS に関するよくある質問マウント コマンドは NTFS の iocharset パラメータをサポートしています。セクション 4 に特に注意し、そこに記載されているマウント コマンドを試してください。

別の記事では:smbfs & cifs; アクセント付き文字; 解決済み著者は、このようなシェアをマウントするための 3 つの可能性を提案しています。

mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8
mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8,codepage=cp437
mount //192.168.15.123/a /home/b/c -t cifs -o username=d,password=e,uid=f,gid=g,iocharset=utf8,codepage=cp850

詳細については、上記の記事で、著者がこれを機能させるまでに繰り返した試行とロジックについて説明しています。

答え2

念のため言っておきますが、ssh 設定が誤って設定されていないことを確認してください。

これを解決する方法を見つけるのに一晩中費やしました。フランス語の文字 (é,è) を含む Windows 8.1 NTFS フォルダーをマウントすると、ls に次のように表示されました。

  • N° 093 - Déepense.xls
    の代わりに
  • N° 093 - 貯蓄.xls

    問題はPuttyのデフォルトだったウィンドウ->翻訳->リモート文字セット設定されたISO-8859-1UTF-8 に変更したら、すべてが正しく表示されるようになりました。

    私のように常にリモート接続する場合は、これを念頭に置いてください。 楽しい夜を過ごし、Microsoft NTFS コード ページの技術ドキュメントを読み、調べて、ローカル Windows NTFS パーティション コード ページが何に設定されているかを把握し、iocharset cifs 引数で正しいコード ページを設定できるようにする前に、ローカル シェルで 5 秒ほどテストしてください。

  • 関連情報