Не работает WiFi после просыпания или выхода из ждущего режима в Ubuntu 16.04

WiFi В Ubuntu 16.04 встречается ошибка, которая не зависит от того, как ОС попала на компьютер: была установлена с чистого листа или было обновление.

Суть ошибки заключается в том, что после выхода из ждущего режимы WiFi может не работать. Или, как вариант, работать, но через NetworkManager не понятно к какой сети подключён и какие сети доступны.

Как лечить?

Виртуальная машина VirtualBox, доступная с хост-машины, с доступом в интернет и к другим виртуальным машинам

Есть задача. Сделать возможным подключение к виртуальной машине VirtualBox по ssh при отсутствии «внешней сети» ( в данной заметке под «внешней сетью» подразумевается сеть «внешняя» по отношению к железу компьютера, то есть и внутренняя (домашняя/корпоративная) сеть ), при этом из виртуальной машины должна быть возможность подключиться к другим виртуальным машинам на этой же хост-машине. В случае, когда «внешняя сеть» доступна, должна быть возможность работы из виртуальной машины в этой сети.

Для чего такое нужно? Пример из жизни — виртуальная машина, как сервер для web-разработки в условиях отсутствия «внешней сети», например, на ноутбуке где-то далеко от сетевой цивилизации 🙂

Решение задачи

Настройка Ubuntu как bridge

Устанавливаем
sudo apt-get install bridge-utils
Создаём скрипт

#!/bin/bash
#Снимаем IP адреса с интерфейсов (Они нам не нужны)
ifconfig eth0 0.0.0.0
ifconfig eth1 0.0.0.0
#Создаём бридж интерфейс
brctl addbr bridge0
#Добавляем в наш бридж интерфейсы
brctl addif bridge0 eth0
brctl addif bridge0 eth1
#Поднимаем бридж
ifconfig bridge0 up

(Интерфесы можно и поменять, в примерах актуальные для меня интерфейсы)

Делаем его исполняемым
chmod +x file

При использовании usb сетевухи возможен автоматический запуск этого скрипта при конекте этой самой сетевухи. Для этого даём 1 раз определиться, после чего ищём её в файле /etc/udev/rules.d/70-persistent-net.rules и добавляем значение RUN=”file”

Теперь при подключении вашей сетвушки у вас будет автоматически настраиваться Bridge 🙂

Драйвер для сетевой карты Marvell 88E1116 phy

Данная сетевая карта достаточно распространена в качестве встроенной на материнских платах известных брендов типа ASUS и GIGABYTE. В частности она установлена на GIGABYTE GA-M57SLI-S4. Из коробки в Ubuntu Linux 9.10 она работать не хочет. В Интернете много старых (датированных 2005-2006 годами) форумных тем в которых рассказывается, что для неё нужно использовать драйвер sk98lin. В Ubuntu Linux 9.10 я такого драйвера найти не смог и через несколько часов гугления и осмысления прочитанного я попробовал использовать для Marvell 88E1116 вместо драйвера sk98lin драйвер sky2 и всё заработало отлично. У меня появилось подозрение, что в драйвер sk98lin был включён в драйвер sky2, но я могу и ошибаться.
Включить его проще простого:

sudo modprobe sky2

Ubuntu Server и сетевая карта

У меня дома есть небольшой сервер, работающий под управлением Ubuntu Server, который используется как торрент-клиент, файловое хранилище и выполняет ещё несколько задач. Естественно он работает круглыми сутками. Всё работало как часы, но недавно он начал вести себя очень странно: то не видит файлы на дополнительном жёстком диске, но при этом видит директории (примонтирован в домашнюю директорию пользователя), то после перезапуска выдаёт «The Bios does not be installed. Please press to continue!» (от этого я особенно офигиваю. Для страждущих: после нажатия g выдаёт сообщение что не с чего производить загрузку).

В результате я решился разобраться в чём же всё-таки проблема: в железе, в ОС или в программах. Для этого я снял жёсткие диски с него и установил на второй имеющийся у меня стационарный компьютер. При загрузке с жёсткого диска, снятого с сервера, всё заработало хорошо, но из двух имеющихся на материнской плате сетевых карт ни одна не определялась, точнее через lspci их было видно, а ifconfig говорил что есть только локальная петля. Выполнение /etc/init.d/networking restart вообще выводило что устройство eth0 не обнаружено. После нескольких дней разбирательств я понял в чём дело.

При переносе на новое железо Ubuntu добавил сетевые карты к списку имеющихся и они стали eth2 и eth3, а интерфейс у меня был настроен только для eth0. Для того чтобы объяснить Ubuntu какую сетевую карту нужно использовать для eth0 необходимо внести изменения в файл, отвечающий за сетевые карты:

sudo nano /etc/udev/rules.d/70-persistent-net.rules

Или же нужно создать новый интерфейс.

Теперь жёсткие диски работают на новом железе в том же режиме, что и на старом и если в течении недели всё будет работать отлично, то значит проблема именно в старом железе.

Сетевой адаптер Intel PRO/100 и Ubuntu Linux

На днях устанавливал Ubuntu на стационарный компьютер (Pentium 3). Ubuntu обнаружила и начала работать со всеми устройствами, кроме сетевой карты — Intel PRO/100. Я был очень удивлён этим фактом, но проблема, как оказалось, решается до гениальности просто.
Интересно как?

Как изменить MAC-адрес в Linux

Маленький и иногда очень полезный трюк, который делается проще простого:

ifconfig eth0 down
ifconfig eth0 hw ether 02:01:02:03:04:08
ifconfig eth0 up

Источник

Как узнать внешний IP из командной строки Linux

Если вы хотите узнать внешний IP адрес, полученный вашим роутером, из командной строки Linux, то достаточно найти в интернете сайт, который вернёт его на ваш запрос. Пример:

wget -O - -q icanhazip.com

Источник (eng).

Материалы распространяются под лицензией Creative Commons: Атрибуция — Некоммерческое использование — С сохранением условий (Attribution-NonCommercial-ShareAlike) 3.0 Unported.
Рейтинг@Mail.ru