印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux /mnt にディレクトリが作れない

Linux サーバにディスクを追加してマウントしようとしたら,/mnt にディレクトリが作れない。autofs を使っていたからだった。

■ ■ ■

Linux サーバにハードディスクを追加した。dmesg でハードディスクが認識されたのを確認。それではマウントポイントでも作ってみようかと,/mnt ディレクトリに hdnew ディレクトリを作ろうとしたら怒られた。

# mkdir /mnt/hdnew
mkdir: cannot create directory `/mnt/hdnew': Permission denied

root なのに Permission denied とはどういうことだよ! と叫んで,それではと /tmp には問題なくディレクトリが作れてマウントも OK。どうしてだよ!

$ ls -la /mnt
total 4
drwxr-xr-x  2 root root    0 Aug  9 01:58 ./
drwxr-xr-x 28 root root 4096 Aug  9 01:57 ../

何もない。しばらく悩んで,あらためて /mnt ディレクトリを見直すと,

$ ls -la /mnt
total 36
drwxr-xr-x  3 root   root       0 Aug  9 02:02 ./
drwxr-xr-x 28 root   root    4096 Aug  9 01:57 ../
drwxr-xr-x 10 apache apache 32768 Jan  1  1970 fat32/

あら? 何かできてる。このディレクトリ名には見覚えがある。autofs である。USB ハードディスクを引っこ抜いた途端にパニックになる危険を回避するために autofs にしたのだった。

/etc/auto.master には次のように書いてあった。

/mnt    /etc/auto.misc

「/mnt のことは /etc/auto.misc に聞け」である。そこで,/etc/auto.misc を見ると,

cd      -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
fat32   -fstype=vfat,rw,uid=48,gid=48,umask=022,codepage=932,iocharset=sjis,shortname=winnt     :/dev/sda1

あった。fat32 ディレクトリは,FAT32 でフォーマットされていて (vfat),ユーザとグループは apache (uid=48,gid=48),コードページは Shift_JIS 拡張 (932),入出力文字コードセットは Shift_JIS (sjis) だと指定されている。そうだったそうだった。

追加したディスクは ext3 フォーマットなので,以下のように /etc/auto.misc に追加した。

cd      -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
fat32   -fstype=vfat,rw,uid=48,gid=48,umask=022,codepage=932,iocharset=sjis,shortname=winnt     :/dev/sda1
hdc2    -fstype=ext3            :/dev/hdc2

「/etc/init.d/autofs restart」すれば設定が反映される。autofs の場合,マウントポイントとしてのディレクトリの作成は不要である。

アクセスしてみると,

$ ls /mnt/hdc2
bin/   dev/  home/    lib/    lost+found/  misc/  net/  proc/  sbin/     srv/  tftpboot/  usr/
boot/  etc/  initrd/  lib64/  media/       mnt/   opt/  root/  selinux/  sys/  tmp/       var/

そしてもう一度 /mnt を見ると,

$ ls -la /mnt
total 40
drwxr-xr-x  4 root   root       0 Aug  9 03:21 ./
drwxr-xr-x 28 root   root    4096 Aug  9 01:57 ../
drwxr-xr-x 10 apache apache 32768 Jan  1  1970 fat32/
drwxr-xr-x 28 root   root    4096 Aug  8 02:14 hdc2/

FAT32 をマウントしたポイントの日時は1970年1月1日で,ext3 のマウントポイントの日時はアクセスした日時になるのね。へー。

めでたしめでたし。

Posted by n at 2012-08-08 03:25 | Edit | Comments (0) | Trackback(0)
Trackbacks

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


(必須, 表示されます)


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


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


Confirmation Code (必須)


Remember info (R)?