私はScientific Linux 6.3を実行しているいくつかのラップトップを持っています。
一時停止機能は、1つの問題を除いて完全に機能します。
ノートブックがSamba共有をマウントし、その共有を通じていくつかのビデオを再生すると、一時停止機能が機能しなくなり、ラップトップに突然5しばらく止まる。
繰り返しますが、この問題はSamba共有を通じてビデオを見るときにのみ発生します。
質問:なぜ?一時停止機能が含まれた後、Sambaは何かを開いたままにして5分のタイムアウトなどを要求しますか?
何が起こっているのかを調べるためにどこを見なければならないかについての提案をいただきありがとうございます。あるいは、システムがxy *操作を実行できるように一時停止ボタンを押したことを確認するbashスクリプトを作成することもできます。
(* xy =この問題を解決するすべて)
答え1
私の経験によると、インストール中に接続が中断された場合、Samba共有は非常に適切に反応しません。
ネットワークがストレージの前にダウンする可能性があるため、システムがネットワーク接続なしで完了できない操作をSamba共有で実行しようとする可能性があります。回避策は、中断したときに自動的に削除して再インストールすることです。
#!/bin/bash
if [ $1 == "suspend" ]; then
umount -afl -t cifs
fi
これを入れて/etc/pm/sleep.d/
実行可能にしたら、中断されるたびに実行する必要があります。近いうちにこれが起こるかどうかを実際にテストすることはできません。コメントでコメントを送ってください。ただし、プログラムがまだ共有内のファイルにアクセスしている場合、問題が発生します。共有サーバーにアクセスできない場合でも正常に動作することを確認するには、-l
ファイルシステムツリーからアンマウントする必要があります。-f
これをステートフルに拡張し、復元時にマウントを復元できます。
正式なソースが見つかりません。最善の方法は、Linuxカーネルのソースコードを確認し、デバイスが中断されるように送信される順序を確認し、中断中にcifsが何を試しているかを確認することです。
答え2
1)
sudo 権限を設定します。
visudo
USERNAME ALL = NOPASSWD: /bin/mount //192.168.1.1/Share /home/USERNAME/Desktop/Share -t cifs*
USERNAME ALL = NOPASSWD: /bin/umount -f -a -t cifs
USERNAME ALL = NOPASSWD: /bin/umount -f -l -a -t cifs
USERNAME ALL = NOPASSWD: /sbin/modprobe -r -f cifs
================================================== =======================
2)
一般ユーザーの場合:
vi ~/.mountsamba.sh; chmod +x ~/.mountsamba.sh
#!/bin/bash
case $1 in
mount)
echo 'In progress...'
/usr/bin/sudo /bin/mount //192.168.1.1/Share /home/USERNAME/Desktop/Share -t cifs -o ro,bg,intr,soft,noexec,nosuid,nodev,password=,nolock
pkill nautilus
echo "MOUNTShare - `date`" | /usr/bin/logger
;;
umount)
echo 'folyamatban...'
/usr/bin/sudo /bin/umount -f -a -t cifs
/usr/bin/sudo /bin/umount -f -l -a -t cifs
sleep 5
/usr/bin/sudo /sbin/modprobe -r -f cifs
pkill nautilus
echo "UMOUNTShare - `date`" | /usr/bin/logger
;;
*)
exit 1
;;
esac
================================================== =======================
3)
GNOMEパネルにアイコンを配置します。
gnome-terminal -x bash -c "/home/USERNAME/.mountsamba.sh mount"
gnome-terminal -x bash -c "/home/USERNAME/.mountsamba.sh umount"
================================================== =======================
4)
autofs を使用するには:
vi /etc/auto.master
/- /etc/auto.samba --timeout=120
vi /etc/auto.samba
/home/USERNAME/Desktop/Share -fstype=cifs,bg,intr,soft,ro,noexec,nosuid,nodev,password=,nolock ://192.168.1.1/Share