PHP とシェルの実装は、SAMBA と NFS サーバーが存在するかどうかを確認します、sambanfs
通常、マウント設定は /etc/fstab を通じて処理され、マウントを再確認するために mount -a が使用されます。スケジュールされたプログラムがマウント ディレクトリを使用してディレクトリをマウントする場合は、mount -a を 1 回実行するのが最善です。切断後に自動的に応答します。mount -a のタイムアウトは、特にサーバーが存在しない場合には非常に長いため、対応するクライアントを使用してサーバーが存在するかどうかを確認することをお勧めします。
NFS クライアントの確認は showmount で行うことができます。 Ubuntu でのインストール方法は次のとおりです。
コードをコピーします コードは次のとおりです:
sudo aptitude インストール nfs-common
SAMBAのクライアントはsmbclientを使用します。 Ubuntuでのインストール方法は以下の通りです。
コードをコピーします
コードは次のとおりです:
sudo aptitude smbclient をインストールします
NFSサーバーが存在するかどうかを確認するプロセス
シェルで確認する
コードをコピーします
コードは次のとおりです:
# まずクライアントを使用してサーバーが存在するかどうかを確認します
/sbin/showmount 192.168.0.6 >/dev/null 2>&1
if [ "j$?" != "j0" ];
エコー「NFSサーバーが存在しません」
1番出口
はい
#取り付けを再確認
マウント -a >/dev/null 2>&1
if [ "j$?" != "j0" ];
echo "NFS サーバーのマウントに失敗しました"
1番出口
はい
PHP をチェックインする
コードをコピーします
コードは次のとおりです:
/*最初にクライアントを使用してサーバーが存在するかどうかを確認します*/
$state = shell_exec('/sbin/showmount 192.168.0.6 >/dev/null 2>&1; echo $?');
if(trim($state)!='0'){
echo "NFS サーバーが存在しません"
出る
}
/*マウントを再確認*/
if(shell_exec('mount -a 2>&1')){
echo "NFS サーバーのマウントに失敗しました"
出る
}
SAMBAサーバーが存在するかどうかを確認するプロセス
シェルで確認する
コードをコピーします
コードは次のとおりです:
# まずクライアントを使用してサーバーが存在するかどうかを確認します
smbclient -NL //192.168.0.6 >/dev/null 2>&1
if [ "j$?" != "j0" ];
echo "SAMBA サーバーが存在しません"
1番出口
はい
#取り付けを再確認
マウント -a >/dev/null 2>&1
if [ "j$?" != "j0" ];
echo "SAMBA サーバーのマウントに失敗しました"
1番出口
はい
PHP をチェックインする
コードをコピーします
コードは次のとおりです:
/*最初にクライアントを使用してサーバーが存在するかどうかを確認します*/
$state = shell_exec('smbclient -NL //192.168.0.6 >/dev/null 2>&1; echo $?');
if(trim($state)!='0'){
echo "SAMBA サーバーが存在しません"
出る
}
/*マウントを再確認*/
if(shell_exec('mount -a 2>&1')){
echo "SAMBA サーバーのマウントに失敗しました"
出る
}
http://www.bkjia.com/PHPjc/939419.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/939419.html技術記事 PHP とシェルは、SAMBA と NFS サーバーが存在するかどうかのチェックを実装します。通常、sambanfs は /etc/fstab を介してマウント設定を処理し、マウント -a を使用してマウントを再確認するようにスケジュールするのが最善です...