顯示具有 SAMBA 標籤的文章。 顯示所有文章
顯示具有 SAMBA 標籤的文章。 顯示所有文章
2012-04-29 21:16

[Linux] 檢查 SAMBA 與 NFS Server 是否存在

通常會透過 /etc/fstab 來處理掛載的設定,然後再使用 mount -a 來重新確認掛載,最好在排程的程序用到掛載目錄時也執行一次 mount -a,掛載目錄在斷線後是不會自動回復的,mount -a 的 Timeout 其實還蠻久的,尤其是 Server 不存在的時候,所以最好還是用對應的 client 先確認 server 是否存在。

而檢查 NFS 的 client 可以用 showmount 來處理,在 Ubuntu 上的安裝方式如下:
sudo aptitude install nfs-common

而 SAMBA 的 client 則是用 smbclient,在 Ubuntu 上的安裝方式如下:
sudo aptitude install smbclient


檢查 NFS Server 是否存在的流程

以 Shell 的方式檢查
# 先以 client 確認 server 是否存在
/sbin/showmount 192.168.0.6 >/dev/null 2>&1
if [ "j$?" != "j0" ]; then  
    echo "NFS Server is not exist"
    exit 1
fi

# 重新確認掛載 
mount -a >/dev/null 2>&1
if [ "j$?" != "j0" ]; then
    echo "NFS Server mount failed"
    exit 1;
fi

以 PHP 的方式檢查
/*先以 client 確認 server 是否存在*/ 
$state = shell_exec('/sbin/showmount 192.168.0.6 >/dev/null 2>&1; echo $?');
if(trim($state)!='0'){
    echo "NFS Server is not exist";
    exit;
}

/*重新確認掛載*/ 
if(shell_exec('mount -a 2>&1')){
    echo "NFS Server mount failed"
    exit;
}



檢查 SAMBA Server 是否存在的流程

以 Shell 的方式檢查
# 先以 client 確認 server 是否存在
smbclient -NL //192.168.0.6 >/dev/null 2>&1
if [ "j$?" != "j0" ]; then  
    echo "SAMBA Server is not exist"
    exit 1
fi

# 重新確認掛載 
mount -a >/dev/null 2>&1
if [ "j$?" != "j0" ]; then
    echo "SAMBA Server mount failed"
    exit 1;
fi

以 PHP 的方式檢查
/*先以 client 確認 server 是否存在*/ 
$state = shell_exec('smbclient -NL //192.168.0.6 >/dev/null 2>&1; echo $?');
if(trim($state)!='0'){
    echo "SAMBA Server is not exist";
    exit;
}

/*重新確認掛載*/ 
if(shell_exec('mount -a 2>&1')){
    echo "SAMBA Server mount failed"
    exit;
}
2011-12-14 15:26

[Ubuntu] 掛載 Windows 分享目錄

  • 安裝 smbfs 套件
    sudo apt-get install smbfs
  • 建立掛載目錄
    sudo mkdir /mnt/windows_share
  • 開放最大權限
    sudo chmod 777
  • 測試掛載
    sudo mount -t cifs //192.168.0.10/my_share /mnt/windows_share -o username=jax,password=1234,noacl,noperm,codepage=cp950,iocharset=big5,file_mode=0666,dir_mode=0777
    
  • 察看是否成功
    df -h
    Filesystem Size Used Avail Use% Mounted on
    //192.168.0.10/my_share 7.9G 208K 7.9G 1% /mnt/windows_share
  • 卸載
    sudo umount /mnt/windows_share
  • 修改開機掛載設定檔
    sudo vim /etc/fstab
    /mnt/windows_share was on //192.168.0.10/my_share
    //192.168.0.10/my_share /mnt/windows_share cifs username=jax,password=1234,noacl,noperm,codepage=cp950,iocharset=big5,file_mode=0666,dir_mode=0777 0 0
    
  • 套用開機設定檔
    mount -a
  • 再次察看是否成功
    df -h
    Filesystem Size Used Avail Use% Mounted on
    //192.168.0.10/my_share 7.9G 208K 7.9G 1% /mnt/windows_share

參考資料:
在 ubuntu 中 mount windows 分享的目錄
載掛(Mount)遠端資料夾的應用
ubuntu的几个技巧: 自动连接Windows共享文件夹, 定时文件同步备份