Имя карты не обязательно должно отображаться в /etc/network/interfaces, вы можете просто ввести его вручную. Как только процесс загрузки обнаружит совпадение 1 :1 между именем в файле интерфейсов и фактическим интерфейсом, он применит конфигурацию. Вот очень простая строфа, очевидно, замените имена интерфейсов своими собственными. Либо вниз/вверх, либо перезагрузка.
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.254
Вы также можете установить статический IP-адрес «на лету» из bash, используя эту команду, однако он не сохранится после перезагрузки.
sudo ifconfig eth0 192.168.1.1 netmask 255.255.255.0
, а затем добавить маршрут по умолчанию
sudo route add default gw eth0
еще раз, не забудьте поменять местами "eth0" на фактическое имя вашего интерфейса.
Даже после исправления сообщения об ошибке, когда шина USB не была отключена во время приостановки, проблемы остаются: вы не можете отправить команду WiFi во время приостановки.
Диспетчер сети — это первая служба, которая отключается во время приостановки/гибернации и выключения. Если вы хотите отправить радиосигнал WiFi на устройство в это время, вам нужно прочитать это .
Чтобы решить мою проблему, я создал скрипт:
/etc/NetworkManager/dispatcher.d/pre-down.d/smartplug_off
Скрипт должен быть помечен как исполняемый(chmod a+x scriptname
)и у меня он содержит:
#!/bin/bash
# NAME: smartplug_off
# PATH: /etc/NetworkManager/dispatcher.d/pre-down.d
# DESC: Turn off smartplug light power for TV light
# DATE: March 7, 2020.
# CALL: Called by Network Manager before going down. Network manager in turn
# is called by systemd during suspend/hibernate/shutdown
# NOTE: myisp.sh and hs100.sh must be installed for hs100 tp-link power plug.
# https://developer.gnome.org/NetworkManager/stable/NetworkManager.html
PlugName="192.168.0.15"
status=$(hs100.sh -i "$PlugName" check | cut -f2)
if [ $status == "OFF" ] ; then
: # Nothing to do already off
elif [ $status == "ON" ] ; then
hs100.sh -i "$PlugName" off
else
echo Error hs100.sh not responding check connection and IP "$PlugName".
fi