Redhat

使用 autofs 掛載 CIFS 共享

  • May 21, 2018

我有一個執行 RHEL 5.5 的系統,我正在嘗試使用autofs. (由於網路在啟動時沒有準備好,我不想使用fstab。)我可以手動掛載共享,但autofs只是沒有掛載它們。

以下是我正在使用的文件:

在結束時/etc/auto.master,我有:

## Mount this test share:
/test    /etc/auto.test    --timeout=60

/etc/auto.test中,我有:

test    -fstype=cifs,username=testuser,domain=domain.com,password=password ://server/test

然後我重新啟動autofs服務。

但是,這不起作用。 ls-ing 目錄不返回任何結果。我已經遵循了網路上的所有這些指南,我要麼不理解它們,要麼它們只是不工作。

謝謝你

應該已經有一個 /etc/auto.smb,使用它,然後將以下行添加到 /etc/auto.master:

/cifs   /etc/auto.smb --timeout=60

現在所有 cifs 共享將顯示在 /cifs 下:

ls /cifs/<server>

將顯示所有可用的共享。您可能希望在 /etc/auto.smb 中放置一些選項以使用特定模式進行掛載。我有一個 auto.smb ,我在某處發現並對其進行了修改以完全做到這一點:

#!/bin/bash
# $Id: auto.smb,v 1.3 2005/04/05 13:02:09 raven Exp $
# This file must be executable to work! chmod 755!

key="$1"
credfile="/etc/auto.smb.$key"

opts="-fstype=cifs,file_mode=0644,dir_mode=0755,uid=eng,gid=eng"
smbclientopts=""

for P in /bin /sbin /usr/bin /usr/sbin
do
   if [ -x $P/smbclient ]
   then
       SMBCLIENT=$P/smbclient
       break
   fi
done

[ -x $SMBCLIENT ] || exit 1

if [ -e "$credfile" ]
then
   opts=$opts",credentials=$credfile"
   smbclientopts="-A "$credfile
else
   smbclientopts="-N"
fi

$SMBCLIENT $smbclientopts -gNL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- '
   BEGIN   { ORS=""; first=1 }
   /Disk/  {
             if (first)
                 print opts; first=0
             dir = $2
             loc = $2
             # Enclose mount dir and location in quotes
             # Double quote "$" in location as it is special
             gsub(/\$$/, "\\$", loc);
             print " \\\n\t \"/" dir "\"", "\"://" key "/" loc "\""
           }
   END     { if (!first) print "\n"; else exit 1 }
'

這將做你想要的。我自己用過。

引用自:https://serverfault.com/questions/219615