Обновление Netcfg до Netctl на сервере Arch

Сегодня пакет netcfg считается устаревшим и более не поддерживается; на его смену пришёл netctl. Данное руководство расскажет, как обновить пакет netcfg до netctl на виртуальном выделенном сервере.

Подготовка системы

Для начала создайте снапшот сервера (snapshot) через панель управления. Для этого сначала отключите VPS от SSH или VNC. Создав снапшот, подключитесь к серверу при помощи функции VNC в панели управления. Войдите как root или как обычный пользователь и откройте оболочку root:

su -

Если у вас есть пользователь с расширенными привилегиями sudo, используйте:

sudo -i

После этого появится запрос, который выглядит примерно так:

[root@www] #

Обновление

Для начала удалите netcfg:

pacman -R netcfg

Обновите базы данных пакета и установите netctl:

pacman -Sy netctl

При помощи любого текстового редактора откройте /etc/netctl/eth0:

nano /etc/netctl/eth0

Внесите в него следующий код, заменив YOUR.IP IP-адресом своего сервера, YOUR.GATEWAY – адресом шлюза. Как правило, эти адреса можно найти в контрольной панели

Примечание: не забудьте указать /24 после IP-адреса своего сервера.

Interface=eth0
Connection=ethernet
IP=static
Address=('YOUR.IP/24')
Gateway='YOUR.GATEWAY'
DNS=('8.8.4.4')

Примечание: Подробную информацию о профилях netctl можно найти здесь.

Этот блок кода состоит из следующих полей.

  • Interface: имя сетевого интерфейса, с которым связан этот профиль.
  • Connection: тип соединения (например, ethernet, wireless, bridge, tunnel).
  • IP: позволяет присвоить интерфейсу адрес IPv4.
  • Address: адрес(а) IPv4 и подсеть интерфейса.
  • Gateway: шлюз, используемый по умолчанию, когда профиль активен и IP=static.
  • DNS: DNS-серверы профиля.

Чтобы добавить DNS-серверы, используйте формат:

DNS=('8.8.4.4' '8.8.8.8')

Включите профиль:

netctl enable eth0

Перезапустите VPS:

systemctl reboot

Чистка системы

После перезапуска виртуального выделенного сервера подключитесь к нему через SSH:

ssh you@YOUR.IP

Если все прошло успешно, проверьте, может ли сервер разрешать адреса:

dig +short google.com

Если IP адрес возвращается, все должно работать должным образом, и теперь можно удалить старые файлы netcfg:

rm -r /etc/network.d/

Устранение неполадок

Если что-то пошло не так, попытайтесь сначала восстановить всё через VNC на панели управления.

Если устранить проблему через VNC не получается, можно временно настроить сеть. Для начала включите интерфейс:

ip link set dev eth0 up

Затем присвойте интерфейсу IP-адрес:

ip addr add YOUR.IP/24 dev eth0

Задайте маршрут к сети Интернет:

ip route add default via YOUR.GATEWAY

В завершение укажите DNS-сервер для разрешения адресов:

echo "nameserver 8.8.4.4" >/etc/resolv.conf

Теперь сервер снова подключён к сети.

Чтобы переустановить netcfg, нужно скомпилировать его из Arch User Repository. Для этого создайте временный каталог и откройте его:

mkdir /tmp/netcfg
cd /tmp/netcfg

Затем загрузите файл PKGBUILD, благодаря которому makepkg может найти исходный код и создать пакет:

curl https://aur.archlinux.org/packages/ne/netcfg/PKGBUILD -o PKGBUILD

В завершение используйте makepkg, чтобы установить зависимости, загрузить код, собрать и установить пакет:

makepkg -si

Конфигурационные файлы пакета netcfg остались на месте после его удаления, потому достаточно просто перезагрузить систему, чтобы восстановить её рабочее состояние.

Tags: ,

Добавить комментарий