Scientific Linux 6.3 зависает при приостановке, если используется доля samba

У меня есть несколько ноутбуков под управлением Scientific Linux 6.3.

Функция приостановки работает достаточно хорошо, за исключением одной проблемы:

Когда ноутбук монтирует долю Samba, он воспроизводит несколько видеороликов через эту долю, после чего функция приостановки перестает работать, а ноутбуку вдруг требуется 5 минут для приостановки.

Опять же, эта проблема возникает только в том случае, если они смотрят видео по акциям samba.

ВОПРОС : ПОЧЕМУ? samba держит что-то открытое и требует тайм-аута 5 минут, сразу после того, как функция приостановки была задействована или что?

Любые предложения о том, где искать, чтобы узнать, что происходит, будут оценены. Или способ, которым я мог бы написать скрипт bash, чтобы проверить, когда нажата кнопка suspend, чтобы я мог делать xy * вещь на машине.

(* xy = все, что исправляет эту проблему)

2 Solutions collect form web for “Scientific Linux 6.3 зависает при приостановке, если используется доля samba”

Я сделал опыт, что доля самбы реагирует довольно плохо, если соединение прерывается, пока они установлены.

Возможно, сеть идет вниз перед хранилищем, поэтому может быть, что ваша система пытается что-либо сделать с помощью доли samba, которая невозможна без сетевого подключения. Обходным путем было бы автоматическое размонтирование его при приостановке (и, возможно, его последующее обновление):

 #!/bin/bash if [ $1 == "suspend" ]; then umount -afl -t cifs fi 

Если вы поместите это в /etc/pm/sleep.d/ и сделаете его исполняемым, он должен выполняться при каждом приостановлении. Я не могу проверить, но если это произойдет достаточно быстро, просто дайте отзывы в комментариях. Однако у вас возникнут проблемы, если программы по-прежнему будут обращаться к файлам в общем доступе. -l должен по-прежнему отключить его из дерева файловой системы, -f будет убедиться, что он работает, когда сервер общего доступа недоступен.

Вы можете продлить это до состояния с сохранением состояния и (попытаться) восстановить свои крепления при возобновлении.

Я не смог найти официальных источников. Лучше всего проверить исходный код ядра Linux и посмотреть, в каком порядке устройства отправляются на приостановку и посмотреть, какие cifs пытаются приостановить и т. Д.

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 
Linux и Unix - лучшая ОС в мире.