印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux autofs なんぞコレ

Linux サーバで,ブロードバンドルータに接続されているディスクを autofs でマウントしたい。ネットワーク経由でアクセスできたが,そこからがどうもおかしい。なんぞコレ。

■ ■ ■

Linux サーバのデータを定期的にバックアップしたい。自宅にはブロードバンドルータに接続されているハードディスクが NAS として動作しているので,これを使いたい。必要なときだけアクセスできればいいので,autofs を使う。NAS は Windows でのアクセスが前提となっている仕様なので,Linux からは Samba クライアントを使ってアクセスする。

サーバの OS は VineLinux 4.2 で文字コードは EUC-JP だが日本語名ファイルの文字コードは Shift_JIS,Samba 3.0.23d,NAS 用のブロードバンドルータは corega CG-WLR300NNH (nlog(n): CG-WLR300NNH を購入したがレビュー)。NAS のディスクのファイルシステムは FAT32 である (nlog(n): 1.5 TB ハードディスクの FAT32 フォーマット) である。

Linux サーバに autofs と smbclient がインストールされているか確認する (autofsを使ってsambaを自動マウント | ブーログ)。Vine Linux 4.2 では,smbclient は samba-common パッケージに入っている。

# apt-get install autofs samba-common

/etc/auto.master に次の行を追加する。/mnt/nas には /etc/auto.smb を使ってアクセスするという意味である。

/mnt/nas /etc/auto.smb

/etc/auto.master を編集したら autofs を再起動する。

# /etc/init.d/autofs restart

/etc/auto.smb はスクリプトになっている。オプションを設定する箇所があるので次のように書いておく (smbfs autofs: OS tips)。ファイルシステムが FAT32 なので "-fstype=vfat",その文字コードは Shift_JIS なので "codepage=932"となる (smbmount)。Linux サーバの文字コードは EUC-JP だが,Linux で作るファイル名は全て半角英数字で,日本語ファイル名のものは Windows で作ったファイルだけなので "iocharset=Shift_JIS" を指定している (nlog(n): Samba 3 が文字化けする)。

opts="-fstype=vfat,codepage=932,iocharset=Shift_JIS"

ブロードバンドルータの自宅内 IP アドレスは 192.168.0.99 を割り当ててある。したがって,autofs でのアクセスでは /mnt/nas/192.168.0.99 となる (もちろん 192.168.0.99 を名前解決してもよい)。

# cd /mnt/nas/192.168.0.99
# ls
public/

よーし,やった。

しかし,これはぬか喜びだった。

# cd public
# ls
public/
# cd public
# ls
public/
# cd public
# ls
public/
# pwd
/mnt/nas/192.168.0.99/public/public/public

public ディレクトリは1階層しかないはず。なんぞコレwwwwww。

2012年2月22日追記:
次のように設定することで解決しました。auto.smb の代わりに auto.misc を使いました。

/etc/auto.master の記述:

/mnt    /etc/auto.misc

/etc/auto.misc の記述:

nas             -fstype=smbfs,rw,codepage=932,iocharset=sjis   ://192.168.0.99/public
Posted by n at 2011-03-05 14:18 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?