Para cambiar la acción de cerrar la tapa en Ubuntu:

Para cambiar la acción de cerrar la tapa en Ubuntu:

Estoy ejecutando Ubuntu 16.04 LTS en mi Lenovo G50 y todo va bien excepto que no puedo cerrar la tapa de mi computadora portátil sin necesidad de reiniciar después. Cuando cierro la tapa (o si ejecuto pm-suspend), la pantalla de mi computadora portátil se oscurece durante unos segundos y luego se vuelve a encender.

El problema es que cuando intento reanudarlo, mi portátil básicamente se convierte en una patata... Por alguna razón, el administrador de red (tanto wifi como ethernet) no funciona en absoluto, el terminal se vuelve extremadamente lento y no puedo ejecutar cualquier comando que use sudoporque quedará colgado allí para siempre.

Intenté cambiar el logind.confarchivo, intenté cambiar el archivo Power System Settings, actualicé mi controlador de gráficos Intel, instalé herramientas como pmio laptop-mode... Me estoy quedando sin ideas, pero haría cualquier cosa para solucionar este problema. .

Si hay alguna información del sistema que pueda ser útil, hágamelo saber y la agregaré a la publicación.

Respuesta1

Para cambiar la acción de cerrar la tapa en Ubuntu:

Abra el archivo /etc/systemd/logind.conf en un editor de texto como root, por ejemplo,

sudo nano /etc/systemd/logind.conf

Cambie esta línea:

#HandleLidSwitch=ignore

A esta línea:

HandleLidSwitch=suspend

Asegúrate de que esté comentado.

Alternativamente, también puedes agregar esta línea, pero prefiero la primera:

HandleLidSwitchDocked=suspend

Entonces corre :

sudo service systemd-logind restart

Oreiniciar.

Para solucionar problemas del modo de hibernación/suspensión, debe escribir el siguiente comando en la terminal:

dmesg|less

Por lo general, hay una entrada sobre qué aplicación provocó que fallara la suspensión:

[32467.560058] Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0):
[32467.560115] plasma-desktop D 0000000000000000 0 2065 1 0x00800004

Reparar suspensión en portátiles

sudo apt-get install uswsusp

Ahora prueba suspender con:

sudo s2ram

Si no funciona usa:

sudo s2ram --force

A continuación edite este archivo:

sudo nano /usr/lib/hal/scripts/linux/hal-system-power-suspend-linux

Cambiar código a:

#!/bin/sh

/sbin/s2ram --force

Editar: otra solución:

Coloque un script en ' /etc/pm/sleep.d/ ', los scripts allí se ejecutarán al suspender y reanudar. El nombre del archivo debe comenzar con un número de pedido, 00-49 para scripts de usuario (para obtener más detalles, consulte man pm-suspend).

El guión podría verse así

#!/bin/sh
(killall -9 mount.nfs; exit 0)

Si tiene problemas, consulte /var/log/pm-suspend.log que registrará el intento de suspender y ejecutar su script.

La suspensión de Ubuntu no funciona. REVISIÓN

Paso 1: abra una terminal y cree un archivo de script de la siguiente manera:

sudo nano /etc/pm/sleep.d/20_custom-ehci_hcd

Paso 2: Copie el script completo a continuación en el archivo que acaba de crear y guárdelo:

#!/bin/sh
 VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1
 unbindDev() {
  echo -n > $DEV_LIST 2>/dev/null
   for driver in $DRIVERS; do
    DDIR=$DRIVERS_DIR/${driver}_hcd
    for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
      echo -n "$dev" > $DDIR/unbind
      echo "$driver $dev" >> $DEV_LIST
    done
   #for bus in $EHCI_BUSES; do
     echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/unbind
 # done
   done
 }
 bindDev() {
  if [ -s $DEV_LIST ]; then
    while read driver dev; do
      DDIR=$DRIVERS_DIR/${driver}_hcd
      #for bus in $EHCI_BUSES; do
          echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/bind
      #done
      while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
          echo -n "$dev" > $DDIR/bind
          if [ ! -L "$DDIR/$dev" ]; then
            sleep $BIND_WAIT
          else
            break
          fi
          MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
      done
     done < $DEV_LIST
  fi
  rm $DEV_LIST 2>/dev/null
   chvt 1
  chvt 7
}
 EHCI_BUSES="0000:00:1a.0 0000:00:1d.0"
case "$1" in
    hibernate|suspend)
 unbindDev;;
     resume|thaw)
 bindDev;;
 esac

Paso 3: Otorgue permisos de ejecución al script escribiendo:

sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd

Respuesta2

Después de leer, descubrí que el problema estaba en la tarjeta WiFi Qualcomm Atheros QCA6164 utilizada en muchas computadoras portátiles Lenovo (G50-80 en mi caso). Ubuntu no parece tener el firmware adecuado para esta tarjeta, lo que hace que funcione mal.

También descubrí que apagar el Wifi antes de cerrar mi computadora portátil evitaría que todo fallara, así que puse eso y la solución de esto.correojuntos y crearon un archivo /etc/acpi/para manejar el evento de cierre de la tapa.

Agregue el siguiente código usando sudo nano /etc/acpi/lid.sh:

#!/bin/sh

grep -q closed /proc/acpi/button/lid/LID0/state
if [ $? = 0 ]
then
  nmcli radio wifi off
  pm-suspend
else
  nmcli radio wifi on
fi

A continuación, agregue las siguientes líneas usando sudo nano /etc/acpi/events/lm_lid:

event=button/lid.*
action=/etc/acpi/lid.sh

Ahora, descomente y configure la siguiente línea usando sudo nano /etc/systemd/logind.conf:

HandleLidSwitch=ignore

Finalmente, vaya a System Settings > Powery coloque todas las opciones de tapa de cierre en Do Nothing.

Ejecute lo siguiente para configurar los permisos y finalizar los cambios:

sudo chmod 755 /etc/acpi/lid.sh
sudo /etc/init.d/acpid restart
sudo service systemd-logind restart

¡Esperemos que funcione para usted!

información relacionada