2008/6/27 (金)

RHEL5 に入ってる /etc/auto.smb なんだけど、これってスクリプトだってのが
まずびっくり。/etc/auto.master にスクリプトを指定できるらしい。

/smb /etc/auto.smb

上記のように /etc/auto.master に指定すると、/smb ディレクトリ以下にホスト名
で cd して ls すると、そのホストの samba 共有フォルダが見える。例えば Win
のホスト名が mywin だったとすると、その名前がそのままディレクトリになる。

cd /smb/mywin
ls

で、さらにディレクトリを掘っていこうとすると、No such file or directory
となってしまう。samba の共有フォルダにアクセスするパスワードを指定してないん
だから仕方ない。これは、/etc/auto.smb の opts 変数に以下のように設定した。

 opts="-fstype=cifs,rw,iocharset=utf8,credentials=/etc/winpass"

cifs のオプションの credentials を使った。ただこの方法だと、ホスト毎にパス
ワードが違ってた場合に×でスクリプトを修正する必要があるが、今回はその要件は
ないからいいや。

と、それ以前に C$ とかそういう $ で終わっているフォルダをサーバが共有していた
場合、このスクリプトがうまく動かず以下のエラーが吐かれてしまうことを発見。

Jun 27 10:17:54 myhost automount[11623]: parse_mount: parse(sun): failed to expand map entry

2ちゃんに情報があった。とりあえず以下のように、スクリプトの出力に $ で終わる
共有フォルダが含まれないようにした。

--- auto.smb.orig       2006-10-17 01:03:44.000000000 +0900
+++ auto.smb    2008-06-27 10:20:08.000000000 +0900
@@ -5,7 +5,8 @@
 # This file must be executable to work! chmod 755!

 key="$1"
-opts="-fstype=cifs"
+credfile=/etc/sysconfig/auto.smb.pass
+opts="-fstype=cifs,rw,iocharset=utf8,credentials=$credfile"

 for P in /bin /sbin /usr/bin /usr/sbin
 do
@@ -18,9 +19,10 @@

 [ -x $SMBCLIENT ] || exit 1

-$SMBCLIENT -gNL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- '
+$SMBCLIENT -A $credfile -gNL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- '
        BEGIN   { ORS=""; first=1 }
-       /Disk/  { if (first) { print opts; first=0 }; sub(/ /, "\\ ", $2); print " \\\n\t /" $2, "://" key "/" $2 }
+       /Disk/  { if (first) { print opts; first=0 }; sub(/ /, "\\ ", $2);
+       if (match($2, "\\$$")==0 ) { print " \\\n\t /" $2, "://" key "/" $2 } }
        END     { if (!first) print "\n"; else exit 1 }
        '

あと、なんか RHEL5 の autofs (5.0.1-0.rc2.55) で

automount[16387]: umount_autofs_offset: attempt to umount busy offset

とか

automount[16387]: umount_autofs_offset: ioctl failed: Inappropriate ioctl for device

なんていうエラーが自動アンマウント時に出て、その後自動マウントできないんだけど、
autofs をアップデート(5.0.1-0.rc2.88)したら直ったかも?

2008/6/24 (火)

CentOS5 で yum install gcc すると、以下のエラー。

Error: No Package Matching glibc.i686

Web で調べたら、以下に情報あり。

http://www.linuxquestions.org/questions/linux-newbie-8/error-no-package-matching-glibc.i686-608948/

/etc/yum.repos.d/CentOS-Base.repo に以下を追加して、

[c5-base32]
name=CentOS-5
mirrorlist=http://mirrorlist.centos.org/?release=5&arch=$i386&repo=os
gpgcheck=0
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5

yum install gcc glibc glibc.i686

とすればいいみたい。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-11-15 (土) 16:55:50 (3081d)