configurar permisos sudo:

configurar permisos sudo:

Tengo varios portátiles con Scientific Linux 6.3.

La función de suspensión funciona bastante bien, excepto por un problema:

Cuando una computadora portátil monta un recurso compartido Samba, reproduce algunos videos a través de este recurso compartido, la función de suspensión deja de funcionar y la computadora portátil de repente necesita5minutos para suspender.

Nuevamente, este problema solo ocurre si vieron videos a través del recurso compartido de samba.

PREGUNTA: ¿POR QUÉ? ¿Samba mantiene algo abierto y necesita un tiempo de espera de 5 minutos, justo después de que se haya involucrado la función de suspensión o qué?

Se agradecería cualquier sugerencia sobre dónde buscar para saber qué está pasando. O una forma de escribir un script bash para verificar cuándo se presiona el botón de suspensión para poder hacer algo xy* en la máquina.

(*xy=cualquier cosa que corrija este problema)

Respuesta1

Tuve la experiencia de que los recursos compartidos de samba reaccionan bastante mal si la conexión se interrumpe mientras están montados.

Posiblemente la red se esté cayendo antes que el almacenamiento, por lo que es posible que su sistema esté intentando hacer algo con el recurso compartido de samba que no es posible sin una conexión de red. Una solución alternativa sería desmontarlo automáticamente al suspenderlo (y tal vez volver a montarlo después):

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

Si lo coloca /etc/pm/sleep.d/y lo hace ejecutable, debería ejecutarse en cada suspensión. Realmente no puedo probar si sucede lo suficientemente pronto, solo dé su opinión en los comentarios. Sin embargo, tendrá problemas si los programas todavía acceden a los archivos del recurso compartido. -lAún así debería desmontarlo del árbol del sistema de archivos, -fse asegurará de que funcione cuando no se pueda acceder al servidor compartido.

Puede ampliarlo para que tenga estado e (intentar) restaurar sus montajes en el currículum.

No pude encontrar fuentes oficiales. Posiblemente, lo mejor es verificar la fuente del kernel de Linux y ver en qué orden se envían los dispositivos para suspender y ver qué intenta hacer cifs al suspenderse, etc.

Respuesta2

1)

configurar permisos 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)

con usuario normal:

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)

poner icono en el panel de GNOME:

gnome-terminal -x bash -c "/home/USERNAME/.mountsamba.sh mount"
gnome-terminal -x bash -c "/home/USERNAME/.mountsamba.sh umount"

==================================================== =====================
4)

si quieres usar 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

información relacionada