Вручную Отключите Wi-Fi, прежде чем приостановят

я работаю, Ubuntu 18.10 с Gnome - Приостанавливают для Трамбовки, не работает. мой системный журнал сказал мне, что wpa_supllicant отказывается замораживаться. Я уже попробовал пару, фиксирует, но ни один не работает. Большинство из них является различными изменениями этого. Я Также пытался использовать другую Версию микропрограммного обеспечения, как указано здесь. Хотя это немного чрезмерно, так как Wi-Fi хорошо работает, и моя идея состоит в том, чтобы запустить скрипт при нажимании приостановить кнопки, которая выключает Wi-Fi, прежде чем фактические приостановят действие, происходит.

Приостановите для Трамбовки, работает, если я отключаю Wi-Fi вручную перед приостановкой. Существует ли способ автоматизировать его?

Беспроводной чипсет:

description: Wireless interface
       product: QCA6174 802.11ac Wireless Network Adapter
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:04:00.0
       logical name: wlp4s0
       version: 20
       serial: c0:38:96:2f:a8:1f
       width: 64 bits
       clock: 33MHz
       capabilities: bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath10k_pci driverversion=4.18.0-13-generic firmware=SW_RM.1.1.1-00157-QCARMSWPZ-1

Обновление № 1: поскольку @GAD3R указал, что Сценарий в/lib/systemd/system-sleep добьется цели. Однако это, кажется, не работает. Я создал Сценарий

killwpa

в

/lib/systemd/system-sleep

и сделанный этим исполняемое использование

sudo chmod +x

Я все еще наклоняюсь, приостанавливают с Wi-Fi на, вот вывод моего системного журнала:

Freezing user space processes ... 
Freezing of tasks failed after 20.002 seconds (9 tasks refusing to freeze, wq_busy=0):
wpa_supplicant  D    0  1013      1 0x00000004

Обновление 2: Я изменил Сценарий для разгрузки использования драйвера modprobe и остановка администратора сети - все еще замораживание.

Сценарий:

 #!/bin/bash
if [ "${1}" == "pre" ]; then

modprobe -rv ath10k_pci
systemctl stop NetworkManager.service 

elif [ "${1}" == "post" ]; then

modprobe -v  ath10k_pci
systemctl start NetworkManager.service

fi

системный журнал ouput:

Feb  1 09:13:25 aaron-GACK kernel: [ 1350.265251] Freezing user space processes ... 
Feb  1 09:13:25 aaron-GACK kernel: [ 1370.272019] Freezing of tasks failed after 20.006 seconds (3 tasks refusing to freeze, wq_busy=0):
Feb  1 09:13:25 aaron-GACK kernel: [ 1370.274617] wpa_supplicant  D    0  1036      1 0x00000004

Обновление 3: Я пытался упростить его, и используйте единственный сценарий, чтобы разгрузить драйвер и уничтожить wpa, как рекомендуется GAD3R:

!/bin/bash
if [ "${1}" == "pre" ]; then
modprobe -rv ath10k_pci
/usr/bin/pkill wpa_supplicant
fi

Боже мой - это работало! Назад после приостановки и Wi-Fi вернулся на также.

Обновление 4: Nevermind. Испытанная Приостановка снова после успешной попытки... aaaand замораживается снова. Системный журнал:

Feb  1 09:27:30 aaron-GACK kernel: [  421.558759] Freezing user space processes ... 
Feb  1 09:27:30 aaron-GACK kernel: [  441.561752] Freezing of tasks failed after 20.002 seconds (10 tasks refusing to freeze, wq_busy=0):
Feb  1 09:27:30 aaron-GACK kernel: [  441.564343] wpa_supplicant  D    0  1082      1 0x00000004
2
задан 1 February 2019 в 11:30

1 ответ

Я хотел сделать почти такой же, прежде чем приостановят и попробовал Ваши сценарии, обе формы. Системный журнал показал ошибки формата и сбой сценария. Действительно ли systemd требователен в отношении формата сценария?

Это работало на меня, протестировав вручную, что просто разгрузка драйвера позволила успешную приостановку.

!/bin/sh case $1/$2 in pre/*) modprobe -rv ath10k_pci ;; post/*) modprobe -v ath10k_pci ;; esac

0
ответ дан 2 December 2019 в 06:35

Другие вопросы по тегам:

Похожие вопросы: