Начальная настройка системы Debian

Установка debian
Образец установки для начинающих
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 866
Стаж: 5 лет 9 месяцев
Откуда: Вологодская область
Поблагодарили: 41 раз
Контактная информация:

Начальная настройка системы Debian

Сообщение Артём Мамзиков »

На случай если вам досталось уже с установленной осью
Если вы не знаете какая у вас версия linux (вам дали удаленный доступ и сказали ставьте ) Можно проверить следующими командами
# Информация о системе
# Версия ОС

Код: Выделить всё

cat /etc/*-release
# версию ОС и архитектура

Код: Выделить всё

lsb_release -a
# О системе

Код: Выделить всё

cat /etc/issue
# Версия ядра и о системе

Код: Выделить всё

cat /proc/version
# Версия ядра, тип машины и тип процессора

Код: Выделить всё

uname -mrs
# Вся доступная системная информация, включая версию ядра, тип машины, тип процессора и имя ОС.

Код: Выделить всё

uname -a
# Оперативная память в ГБ # Диски, разделы и их размер # Использование диска системы, включая общий размер, используемый размер и доступный размер каждого диска # Информация о процессоре

Код: Выделить всё

cat /proc/cpuinfo
Установленные пакеты
# Имя Версия Архитектура Описание

Код: Выделить всё

dpkg-query -l
# Имя установленных пакетов

Код: Выделить всё

dpkg --get-selections | grep -v deinstall
# Имя пакетов

Код: Выделить всё

dpkg-query -f '${binary:Package}\n' -W
Информация о Системе больше команд можно посмотреть тут




Задаем статический (постоянный/фиксированный) IP адрес для Debian
Список всех сетевых интерфейсов просмотр командой ip a
команда просмотр ip a
Показать
root@ZABBIXSERVER:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:a0:02:72 brd ff:ff:ff:ff:ff:ff
inet 192.168.175.45/24 brd 192.168.175.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fea0:272/64 scope link
valid_lft forever preferred_lft forever

Интерфейс eth0 присвоен DHCP inet 192.168.175.45/24 brd 192.168.175.255 scope global eth0
ip a
ip a
если нужно вернуть dhcp команда на получение ip адреса по dhcp
dhclient
или
dhclient eth0
allow-hotplug eth0
iface eth0 inet dhcp

dhclient -r -сброс адресса

Так же можно добавить в этот же интерфейс eth0 еще один ip до перезагрузки командой
ip addr add 192.168.175.88/24 dev eth0
Просмотр шлюза ip r sh
Просмотр DNS nano /etc/resolv.conf
команда nano /etc/network/interfaces
Показать
Изначально файл у нас такого вида для DHCP и переводится примерное так:
--------------------------------------------------------------------------------------------------------------------
# This file describes the network interfaces available on your system
# Этот файл описывает сетевые интерфейсы, доступные в вашей системе
# and how to activate them. For more information, see interfaces(5).
# и как их активировать. Для получения дополнительной информации см. Интерфейсы (5).
source /etc/network/interfaces.d/*
# The loopback network interface
# Петлевой сетевой интерфейс
auto lo
iface lo inet loopback
# The primary network interface
# Основной сетевой интерфейс
allow-hotplug eth0
iface eth0 inet dhcp
--------------------------------------------------------------------------------------------------------------------
interfaces dhcp
interfaces dhcp
Что есть что
auto указанный интерфейс необходимо запускать автоматически при загрузке системы
iface интерфейс eth0 находится в диапазоне адресов IPv4 со статическим ip
address статический ip адрес
netmask маска сети
gateway шлюз по-умолчанию
Задаем статический IP адрес командой
nano /etc/network/interfaces
Прописываем статический ip должно получится так:
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.175.111
netmask 255.255.255.0
gateway 192.168.175.1

или ip и маску можно прописать одной строкой
address 192.168.175.111/24
interfaces static
interfaces static
Сохраняем нажав F2 и подтвердив Y
Перезапускаем командой /etc/init.d/networking restart
После перезапуска можно проверить все той же командой ip a

Задаем DNS сервер
Должна быть программа resolvconf
у кого нет устанавливаем apt-get install resolvconf -y
Настраиваем конфигурацию nano /etc/resolv.conf
прописываем в нем наши DNS
nameserver 192.168.175.1 - локальный
nameserver 77.88.8.1 - яндекс
nameserver 8.8.8.8 - гугл
Так же тут же можно прописать
nameserver # IP адрес DNS сервера
domain # Доменное Имя локального хоста
search # Какие Доменные Имена искать
Сохраняем нажав F2 и подтвердив Y
Применяем параметры командой resolvconf -u

Настройка ssh
Если нет устанавливаем apt-get install openssh-server
Разрешим удаленное подключение под root
для это отредактируем конфигурационный файл
nano /etc/ssh/sshd_config не перепутать с ssh_config!
Изменим строку на или прописать новую
PermitRootLogin yes
Закомментировать если прописали новую
# PermitRootLogin without-password
так же можно раскомментировать
PasswordAuthentication yes
У кого бывает не работает указать
UsePAM no
#StrictModes yes
Если нужно поменять 22 порт нужно исправить Port 22 на нужный вам Port **
Сохраняем изменения и перезапускаем сервер ssh
service sshd restart || service ssh restart
Команда для более новых
systemctl restart ssh || systemctl restart sshd
service ssh reload
Так же при желании можно Отключить IPv6 Я не отключал
Показать
Просмотр что использует IPv6 команда netstat -tulnp | grep :::
Далее dhclient для отключения ipv6 в конфигурации убираем все параметры в запросе request, начинающиеся с dhcp6
nano /etc/dhcp/dhclient.conf
Было

request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
dhcp6.name-servers, dhcp6.domain-search,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
Убрали dhcp6.name-servers, dhcp6.domain-search,
Стало
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, domain-search, host-name,
netbios-name-servers, netbios-scope, interface-mtu,
rfc3442-classless-static-routes, ntp-servers;
Перезапускаем service networking restart

Отключаем ipv6 в rpcbind
Закоментируем (отключим) 2 строки udp6 и tcp6
nano /etc/netconfig
# udp6 tpi_clts v inet6 udp - -
# tcp6 tpi_cots_ord v inet6 tcp - -
Перезапускаем службы командами
service rpcbind restart
service nfs-common restart
Так же отключим IPv6 в sysctl.conf
nano /etc/sysctl.conf
Прописав строки
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Перезапускаем командой sysctl -p
Более подробно можно почитать тут или к примеру тут
Если нужно Изменим имя хоста (hostname)
Проверка текущего имени командой hostname
Изменим nano /etc/hostname
ZABBIXSERVER
или что то так
127.0.0.1 localhost
192.168.175.111 ZABBIXSERVER.vas_domen.local ZABBIXSERVER
Сохраняем нажав F2 и подтвердив Y
Перезапускаем командой /etc/init.d/hostname.sh

После того как мы задали IP адрес, можно донастроить все на месте или подключится удаленно по SSH через PuTTY PORTABLE скачать можно здесь русская версия или здесь англиканская версия ; KiTTY модернизацией PuTTY скачать KiTTY; mindterm.jar или кому что нравится.
Так как у меня не находились некоторые пакеты для установки из репозиториев изменим источники
Показать
Команда для редактирования источников загрузки пакетов nano /etc/apt/sources.list
Я прописал следующие
#

# deb cdrom:[Debian GNU/Linux 9.9.0 _Stretch_ - Official amd64 DVD Binary-1 20190427-10:30]/ stretch contrib main

# deb cdrom:[Debian GNU/Linux 9.9.0 _Stretch_ - Official amd64 DVD Binary-1 20190427-10:30]/ stretch contrib main

#deb http://security.debian.org/debian-security stretch/updates main contrib
deb-src http://security.debian.org/debian-security stretch/updates main contrib

#deb http://ftp.us.debian.org/debian/ stretch main
#deb-src http://ftp.us.debian.org/debian/ stretch main

#deb http://ftp.us.debian.org/debian/ stretch-updates main contrib
#deb-src http://ftp.us.debian.org/debian/ stretch-updates main contrib

# deb http://repo.zabbix.com/zabbix/4.2/debian stretch main
# deb-src http://repo.zabbix.com/zabbix/4.2/debian stretch main

deb http://security.debian.org/debian-security stretch/updates main contrib non-free
deb http://deb.debian.org/debian/ stretch main contrib non-free
deb-src http://deb.debian.org/debian/ stretch main contrib non-free
deb http://deb.debian.org/debian/ stretch-updates main contrib non-free
deb-src http://deb.debian.org/debian/ stretch-updates main contrib non-free
deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free
deb-src http://security.debian.org/debian-security/ stretch/updates main contrib non-free
deb http://deb.debian.org/debian/ stretch-backports main contrib non-free

deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main

Код: Выделить всё

apt-get update
- загрузка списков пакетов из репозиториев и "обновление" их
apt-get upgrade - обновляет пакеты, которые уже установлены в системе и доставляет новые пакеты-зависимости

Автоматическая синхронизация времени с интернета, обновим часовые пояса

Код: Выделить всё

apt-get install tzdata ntp ntpdate net-tools
mcedit /etc/ntp.conf

Код: Выделить всё

mcedit /etc/ntpsec/ntp.conf

Код: Выделить всё

driftfile /var/lib/ntp/ntp.drift
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict 127.0.0.1
restrict 192.168.205.0 mask 255.255.255.0 nomodify notrap

pool 0.debian.pool.ntp.org iburst
pool 1.debian.pool.ntp.org iburst
pool 2.debian.pool.ntp.org iburst
pool 3.debian.pool.ntp.org iburst

logfile /var/log/ntp.log
После изменений перезапустим службу

Код: Выделить всё

systemctl restart ntp
проверка статуса

Код: Выделить всё

netstat -tulnp | grep ntp
ss -tulnp | grep ntp
Старт
systemctl start ntp
Автозагрузка

Код: Выделить всё

systemctl enable ntp
или

Код: Выделить всё

systemctl enable ntpd
если не доступна проверить командой

Код: Выделить всё

systemctl list-unit-files | grep -E 'ntp|ntpd'
ntpsec-systemd-netif.path enabled enabled
ntp.service alias -
ntpd.service alias -
включена и активна. Также видно, что ntp.service и ntpd.service являются псевдонимами.

Статус

Код: Выделить всё

systemctl status ntp
Посмотрим статус синхронизации если значение reach равно 0 что за последние 8 попыток связь не была установлена,
Столбцы delay, offset и jitter также показывают нулевые или очень низкие значения, что подтверждает, что синхронизация не происходит.
В данном случае разбираемся почему не проходит запрос или указываем новые сервера для синхронизации времени.
Синхронизация вручную

Код: Выделить всё

ntpdate pool.ntp.org
Усановка времение вручную
date ММДДЧЧММ
или через
timedatectl set-time "2024-06-25 15:47:00"

Если используеться timedatectl то отключить ntp и ntpdate

apt update && apt upgrade tzdata
Часовой пояс
timedatectl set-timezone Europe/Moscow
Просмотр
timedatectl
Включение
systemctl enable systemd-timesyncd
Статус
systemctl status systemd-timesyncd

и на оборот Если используеться ntp и ntpdate то нужно отключить
systemctl stop systemd-timesyncd
systemctl disable systemd-timesyncd


Установим пару утилит для удобства mc, htop, iftop
apt-get install mc htop iftop screen

mc - двух оконный графический файловый менеджер
htop - по сути это визуальный диспетчер задач
iftop - визуальная нагрузка сети
настройка screen
Показать

Можно запустить что-то удаленно в консоли, отключиться от сервера , или при сбое сети отключения и при этом все, что выполняется в консоли продолжит свою работу.
Позже повторно вы сможете вернутся в ту же сессию и продолжить работу
Переключение окон клавишами screen: ctrl+a 1, ctrl+a 2, ctrl+a 3
1 Main в каталог /
2 etc в /etc
3 logs в /var/log

Создаем файл
nano /root/.screenrc
Добавляем в него следующее

#Выводим строку состояния
hardstatus alwayslastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<"

# Добавляем некоторые настройки
startup_message off
defscrollback 1000
defutf8 on
shell -$SHELL

# Создаем несколько окон
chdir
screen -t Main 1
chdir /etc
screen -t etc 2
chdir /var/log
screen -t logs 3

# Активное первое окно после запуска
select 1

Источник screen

SCREEN
Некоторые моменты более подробно описаны тут
количество слов: 1162
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 866
Стаж: 5 лет 9 месяцев
Откуда: Вологодская область
Поблагодарили: 41 раз
Контактная информация:

Начальная настройка системы Debian

Сообщение Артём Мамзиков »

/etc/network/interfaces
man interfaces
Справка man interfaces RUS
Показать
ИНТЕРФЕЙСЫ(5) форматов файлов ИНТЕРФЕЙСЫ(5)

ИМЯ
/etc/network/interfaces - конфигурация сетевого интерфейса для ifup и ifdown

ОПИСАНИЕ
/etc/network/interfaces содержит информацию о конфигурации сетевого интерфейса для команд ifup(8) и ifdown(8). Здесь вы настраиваете
как ваша система подключена к сети.

ПРИМЕРЫ
В следующем примере настраиваются два сетевых интерфейса: eth0 запускается при загрузке и использует DHCP для IPv4 и SLAAC для IPv6, тогда как eth1
запускается при обнаружении сетевого оборудования и настраивается со статическими адресами IPv4 и IPv6.
auto eth0
allow-hotplug eth1

iface eth0 inet dhcp

iface eth0 inet6 auto

iface eth1 inet static
address 192.168.1.2/24
gateway 192.168.1.1

iface eth1 inet6 static
address fec0:0:0:1::2/64
gateway fec0:0:0:1::1

ФОРМАТ ФАЙЛА
Строки, начинающиеся с `#', игнорируются. Обратите внимание, что комментарии в конце строки НЕ поддерживаются, комментарии должны быть в отдельной строке.

Строка может быть расширена на несколько строк, сделав последний символ обратной косой чертой.

Файл состоит из нуля или более "iface", "mapping", "auto", "allow-", "source" and "source-directory" строк. Они будут описаны подробнее
подробно в следующих разделах.

ВЫБОР ИНТЕРФЕЙСА
Строки, начинающиеся со слова "auto", используются для определения физических интерфейсов, которые будут отображаться при запуске ifup с опцией -a.
(Это опция также используется сценариями загрузки системы, поэтому интерфейсы с пометкой "auto" отображаются во время загрузки.)
Имена физических интерфейсов должны следовать слово "auto" в той же строке.
Может быть несколько "auto" строф.
ifup выводит именованные интерфейсы в указанном порядке.

Строки, начинающиеся с "allow-", используются для определения интерфейсов, которые должны автоматически вызываться различными подсистемами.
Это может быть сделано с помощью команда, такая как "ifup --allow=hotplug eth0 eth1", которая вызовет eth0 или eth1 только в том случае, если она указана в строке "allow-hotplug".
Обратите внимание, что "allow-auto" и "auto" являются синонимами.
(Интерфейсы с пометкой "allow-hotplug" отображаются, когда udev их обнаруживает. Это может быть либо во время загрузки если интерфейс уже присутствует,
или позже, например, при подключении сетевой карты USB. Пожалуйста, обратите внимание, что это не имеет все, что связано с обнаружением подключенного сетевого кабеля.)

Строки, начинающиеся с "no-auto-down", используются для определения интерфейсов, которые не должны быть отключены командой "ifdown -a".
Его основное применение заключается в предотвращении отключения интерфейса во время выключения системы, например, если корневая файловая система является сетевой файловой системой, и
интерфейс должен работать до самого конца. Обратите внимание, что вы все равно можете отключить интерфейс, указав явное имя интерфейса.

Строки, начинающиеся с "no-scripts", используются для определения интерфейсов, для которых сценарии в /etc/network/if-*.d/ не следует запускать, когда эти интерфейсы в Ђђ
лица up или down.

ВКЛЮЧАЯ ДРУГИЕ ФАЙЛЫ
Строки, начинающиеся с "source", используются для включения строк из других файлов, поэтому конфигурацию можно разделить на множество файлов.
Слово "source" - это далее следует путь к файлу, который должен быть получен. Можно использовать подстановочные знаки оболочки. (Подробности см. в wordexp(3).)

Аналогично, ключевое слово "source-directory" используется для одновременного создания нескольких файлов, без указания их по отдельности или использования глобусов оболочки.
добавив Ђђ обычно, когда используется "source-directory", имена файлов проверяются на соответствие следующему регулярному выражению: ^[a-za-Z0-9_-]+$. В других
слова, имена должны полностью состоять из прописных и строчных букв ASCII, цифр ASCII, символов подчеркивания ASCII и символов ASCII с минусом дефиса.
В пути к каталогу также могут использоваться подстановочные знаки оболочки.

При поиске файлов или каталогов, если путь не имеет начальной косой черты, он считается относительно каталога, содержащего файл, в котором
ключевое слово помещено. В приведенном выше примере, если файл расположен в /etc/network/interfaces, пути к включенным файлам понимаются как находящиеся
в /etc/network.

В настоящее время "source-directory" не поддерживается network-manager и guessnet.

По умолчанию в недавно установленной системе Debian файл интерфейсов содержит строку с исходными файлами в каталоге /etc/network/interfaces.d.

СОПОСТАВЛЕНИЯ
Строфы, начинающиеся со слова "mapping", используются для определения того, как выбирается имя логического интерфейса для вызываемого физического интерфейса.
Первая строка строфы сопоставления состоит из слова "mapping", за которым следует шаблон в синтаксисе оболочки glob. Каждая строфа сопоставления mapping
должно содержать определение сценария script. Именованный сценарий script запускается с именем физического интерфейса в качестве аргумента и содержимым всех следующих
строки "карта map" (без ведущей "карты map") в строфе, предоставленной ему при стандартном вводе. Скрипт должен напечатать строку в своем стандартном выводе
перед выходом. Примеры того, что должен печатать скрипт, см. в файле /usr/share/doc/ifupdown/examples

Сопоставление имени состоит из поиска оставшихся шаблонов сопоставления и запуска сценария, соответствующего первому совпадению; сценарий выводит
имя, которому сопоставлен оригинал.

ifup обычно присваивается имя физического интерфейса в качестве первого аргумента, не являющегося опцией. if up также использует это имя в качестве начального логического имени для
интерфейса, если оно не сопровождается суффиксом вида =LOGICAL, в этом случае ifup выбирает LOGICAL в качестве начального логического имени для интерфейса.
Затем он сопоставляет это имя, возможно, несколько раз в соответствии с последовательными спецификациями сопоставления, до тех пор, пока дальнейшие сопоставления невозможны.
‐ бле.
Если результирующее имя является именем некоторого определенного логического интерфейса, то ifup пытается отобразить физический интерфейс в качестве этого логического интерфейс.
В противном случае ifup завершается с ошибкой.

ОПРЕДЕЛЕНИЯ ИНТЕРФЕЙСА
Строфы, определяющие логические интерфейсы, начинаются со строки, состоящей из слова "face", за которым следует название логического интерфейса.
В простом конфигурации без строф сопоставления это имя должно быть просто именем физического интерфейса, к которому оно должно быть применено.
(Значение по умолчанию сценарий сопоставления - это, по сути, команда echo.) За именем интерфейса следует имя семейства адресов, используемого интерфейсом.
Этот будет "one" для сетей TCP /IP, но также имеется некоторая поддержка сетей IPX ("ipx") и сетей IPv6 ("inet6").
Далее следует название метода, используемого для настройки интерфейса.

Дополнительные опции могут быть даны в последующих строках строфы. Доступные опции зависят от семейства и метода, как описано ниже.
Дополнительные опции могут быть доступны в других пакетах Debian. Например, пакет wireless-tools предоставляет ряд опций с префиксом "wireless-",
которые можно использовать для настройки интерфейса с помощью iwconfig(8). (Подробности см. в разделе Беспроводная связь(7).) Список пакетов‐
информация о предоставлении дополнительных опций указана в разделе "ОПЦИИ, ПРЕДОСТАВЛЯЕМЫЕ ДРУГИМ ПАКЕТОМ".

Параметры обычно имеют отступы для ясности (как в приведенном выше примере), но это не обязательно.

Для одного и того же интерфейса может быть задано несколько строф "iface", и в этом случае все настроенные адреса и параметры для этого интерфейса будут
применены при вызове этого интерфейса.
Это полезно для настройки адресов IPv4 и IPv6 в одном интерфейсе
(хотя, если noinet6 строфа присутствует, ядро обычно все равно будет выполнять автоконфигурацию адреса без состояния, если в сети есть демон рекламы маршрута IPv6).
Его также можно использовать для настройки нескольких адресов одного типа в одном интерфейсе.

ШАБЛОНЫ ИНТЕРФЕЙСОВ
Можно определить шаблоны определения интерфейса и расширить их с помощью ключевого слова inherits:

iface ethernet inet static
mtu 1500
hwaddress 11:22:33:44:55:66

iface eth0 inet static inherits ethernet
address 192.168.1.2/24

Это может быть полезно для разделения параметров уровня канала, совместно используемых несколькими интерфейсами, например, от настроек IP-адреса,
специфичных для каждого интерфейса.‐ face.

ИНТЕРФЕЙСЫ VLAN

Чтобы упростить настройку интерфейсов VLAN, интерфейсы, имеющие . (символ полной остановки) в имени настроены как виртуальная локальная сеть с тегом 802.1q
интерфейс. Например, интерфейс eth0.1 представляет собой виртуальный интерфейс, имеющий eth0 в качестве физического канала связи с идентификатором VLAN 1.

ВАРИАНТЫ IFACE
Следующие параметры "команда" доступны для каждой семьи и метода.
Каждый из этих параметров может быть задан несколько раз в одной строфе, и в этом случае команды выполняются в том порядке, в котором они появляются в строфе.
(Вы можете гарантировать, что команда никогда не выйдет из строя, добавив к ней суффикс "|| true".)

pre-up команда
Запустите команду перед запуском интерфейса.
Если эта команда завершается неудачно, то ifup прерывается, воздерживаясь от пометки интерфейса как настроенного,
выводит сообщение об ошибке и завершает работу со статусом 0.
Это поведение может измениться в будущем.

up команда
post-up команда
Запустите команду после открытия интерфейса.
Если эта команда завершается неудачно, то ifup прерывается, воздерживаясь от пометки интерфейса как настроенного
(даже если он действительно был настроен), выводит сообщение об ошибке и завершает работу со статусом 0.
Это поведение может измениться в будущем.

down команда

pre-down команда
Запустите команду перед отключением интерфейса.
Если эта команда завершается неудачно, то ifdown прерывается, помечает интерфейс как деконфигурированный
(даже если на самом деле он не был деконфигурирован) и завершается со статусом 0.
Это поведение может измениться в будущем.

post-down команда
Запустите команду после отключения интерфейса.
Если эта команда завершается неудачно, ifdown прерывается, помечает интерфейс как деконфигурированный и завершает работу с статус 0.
Это поведение может измениться в будущем.

описание имя
Псевдоним интерфейса по имени

Для каждого из вышеупомянутых параметров существует каталог /etc/network/if-<опция>.d/ сценарии, в которых выполняются (без аргументов)
использование частей выполнения(8) после обработки самого параметра.
Пожалуйста, обратите внимание, что, поскольку post-up и pre-down являются псевдонимами, никаких файлов в соответствующем
каталоги обрабатываются. Пожалуйста, используйте вместо этого каталоги if-up.d и if-down.d.

Все эти команды имеют доступ к следующим переменным среды.

IFACE Физическое имя обрабатываемого интерфейса или "--all" (смотреть ниже).

LOGICAL Логическое имя обрабатываемого интерфейса или "auto" (смотреть ниже).

ADDRFAM The address family of the interface, or "meta" (смотреть ниже).

METHOD Метод интерфейса (например, static), или "none" (смотреть ниже).

CLASS Класс обрабатываемых интерфейсов. Это копия значения, присвоенного --allow опция при запуске ifup или ifdown,
в противном случае она устанавливается на "auto" когда используется опция --all

MODE запуск, если запуск с ifup, остановка, если запуск с ifdown.

PHASE В соответствии с MODE, но с более тонкой детализацией, distinguishing the pre-up, post-up, pre-dawn and post-down phases

VERBOSITY Указывает, использовался ли --verbose; если да, установите значение 1, если нет, 0.

PATH Путь поиска команды: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Кроме того, все параметры, указанные в строфе определения интерфейса, экспортируются в среду в верхнем регистре с добавлением "IF_" и с
дефисы преобразуются в символы подчеркивания, а не буквенно-цифровые символы отбрасываются.

Когда ifupdown вызывается с опцией --all, прежде чем что-либо делать с интерфейсами, if вызывает все сценарии подключения (pre-up или down) с помощью
Я установил значение "--all", LOGICAL установил текущее значение параметра --allow (или "auto", если оно не установлено), ADDRFAM="meta" и METHOD="none".
После все интерфейсы были подняты или сняты, выполнены соответствующие сценарии (up или post-down).

ОПЦИИ, ПРЕДОСТАВЛЯЕМЫЕ ДРУГИМИ ПАКЕТАМИ
На этой странице руководства описаны параметры конфигурации, предоставляемые пакетом ifupdown.
Однако другие пакеты могут предоставлять другие доступные опции для использования в /etc/network/interfaces.
Вот список пакетов, которые предоставляют такие расширения:

arping, avahi-autoipd, avahi-daemon, bind9, bridge-utils, clamav-freshclam, controlaula, epoptes-client, ethtool, guidedog, hostap-utils, hostapd,
htpdate, ifenslave, ifmetric, ifupdown-extra, ifupdown-multi, ifupdown-scripts-zg2, initscripts, isatapd, linux-wlan-ng, lprng, macchanger,
miredo, nslcd, ntpdate, openntpd, openresolv, openssh-server, openvpn, openvswitch-switch, postfix, resolvconf, sendmail-base, shorewall-init,
slrn, slrnpull, tinc, ucarp, uml-utilities, uruk, vde2, vlan, vzctl, whereami, wide-dhcpv6-client, wireless-tools, wpasupplicant.

Пожалуйста, обратитесь к документации этих пакетов для получения информации о том, как они расширяют ifupdown.

СЕМЕЙСТВО АДРЕСОВ INET
В этом разделе описываются методы, доступные в семействе адресов inet.

Метод обратной связи Этот метод может использоваться для определения интерфейса обратной связи IPv4.

Опции

(Без вариантов)

Статический метод
Этот метод может быть использован для определения интерфейсов Ethernet со статически распределенными адресами IPv4.

Опции

address address
Требуется адрес (IP/маска сети)

netmask mask
Сетевая маска (dotted quad или CIDR)

broadcast broadcast_address
Широковещательный адрес (dotted quad, + или -). Значение по умолчанию: "+"

metric metric
Метрика маршрутизации для шлюза по умолчанию (целое число)

gateway address
Шлюз по умолчанию (IP-dotted quad)

pointopoint address
Адрес другой конечной точки (dotted quad). Обратите внимание на написание слова "point-to".

hwaddress address
Ссылка на локальный адрес или "random".

mtu size
Размер MTU

scope Address validity scope. Possible values: global, link, host
область действия Адрес Область действия. Возможные значения: глобальный, ссылка, хост

Ручной Метод
Этот метод может использоваться для определения интерфейсов, для которых по умолчанию настройка не выполняется.
Такие интерфейсы могут быть настроены вручную с помощью команд up и down или скриптов /etc/network/if-*.d.

Опции

hwaddress address
Ссылка на локальный адрес или "random".

mtu size
Размер MTU

Метод dhcp
Этот метод может быть использован для получения адреса через DHCP с помощью любого из инструментов: dhclient, pump, dhcpcd, dhcpcd.
(Они были перечислены в их порядке по старшинству.) Если у вас сложная настройка DHCP, вам следует отметить, что некоторые из этих
клиентов используют свои собственные файлы конфигурации и не получите информацию об их конфигурации через ifup.

Опции

hostname hostname
Имя хоста, которое необходимо запросить (pump, dhcpcd, udhcpc)

metric metric
Показатель для добавленных маршрутов (dhclient)

leasehours leasehours
Предпочтительное время аренды в часах (pump)

leasetime leasetime
Предпочтительное время аренды в секундах (dhcpcd)

vendor vendor
Идентификатор класса поставщика (dhcpcd)

client client
Идентификатор клиента (dhcpcd)

hwaddress address
Аппаратный адрес.

Метод bootp
Этот метод может быть использован для получения адреса через bootp.

Опции

bootfile file
Сообщите серверу использовать файл в качестве загрузочного файла.

server address
Используйте IP-адрес для связи с сервером.

hwaddr addr
Используйте addr в качестве аппаратного адреса вместо того, что это на самом деле.

Туннельный метод
Этот метод используется для создания туннелей GRE или IPIP. У вас должен быть двоичный ip-адрес из пакета iproute.
Для туннелей GRE вам нужно будет загрузить модуль ip_gre и модуль ipip для туннелей IPIP.

Опции

address address
Требуется местный адрес (dotted quad)

mode type
Требуемый тип туннеля (GRE или IPIP)

endpoint address
Требуется адрес другой конечной точки туннеля

dstaddr address
Удаленный адрес (удаленный адрес внутри туннеля)

local address
Адрес локальной конечной точки

metric metric
Метрика маршрутизации для шлюза по умолчанию (целое число)

gateway address
Шлюз по умолчанию

ttl time
TTL настройки

mtu size
MTU размер

Метод ppp
Этот метод использует pon/poff для настройки интерфейса PPP. Смотрите эти команды для получения подробной информации.

Опции

provider name
Используйте имя в качестве поставщика (из /etc/ppp/peers).

unit number
Используйте номер в качестве номера единицы измерения ppp.

options string
Передайте строку в качестве дополнительных опций для обдумывания.

Метод wvdial
Этот метод использует wvdial для настройки интерфейса PPP. Смотрите эту команду для получения более подробной информации.

Опции

provider name
Используйте имя в качестве поставщика (из /etc/wvdial.conf).

Метод
ipv4ll Этот метод использует avahi-autoipd для настройки интерфейса с адресом канального уровня IPv4 (семейство 169.254.0.0/16).
Этот метод также известен как APIPA или IPAC и часто в разговорной речи называется "Zeroconf address".

Опции

(Нет Опции)

СЕМЕЙСТВО IPX-АДРЕСОВ
В этом разделе описываются методы, доступные в семействе ipx-адресов.

Статический метод
Этот метод может быть использован для настройки интерфейса IPX. Для этого требуется команда ipx_interface.

Опции

frame type
тип используемых кадров Ethernet (например 802.2)

netnum id
Номер сети

The dynamic Method
Этот метод может быть использован для динамической настройки интерфейса IPX.

Опции

frame type
тип используемых кадров Ethernet (например 802.2)

СЕМЕЙСТВО АДРЕСОВ INET6
В этом разделе описываются методы, доступные в семействе адресов inet6.

Автоматический метод
Этот метод может использоваться для определения интерфейсов с автоматически назначаемыми адресами IPv6.
Использование этого метода само по себе не означает, что RDNSS варианты будут применены, чтобы. Чтобы это произошло, демон rdnssd должен быть установлен,
правильно настроен и запущен. Если поддержка DHCPv6 без состояния если он включен, то дополнительные параметры конфигурации сети,
такие как DNS и NTP-серверы, будут получены с DHCP-сервера. Пожалуйста, обратите внимание, что на ifdown аренда в настоящее время не выпущена (известная ошибка).

Опции

privext int
Расширения конфиденциальности(RFC4941) (0=off, 1=assign, 2=prefer)

accept_ra int
Принять router advertisements (0=off, 1=on, 2=on+forwarding). Значение по умолчанию: "2"

dhcp int
Использовать состояние DHCPv6 (0=off, 1=on)

request_prefix int
Запросить префикс через делегирование префикса DHCPv6 (0=off, 1=on). Значение по умолчанию: "0"

ll-attempts
Количество попыток ожидания ссылки - локальный адрес. Значение по умолчанию: "60"

ll-interval
Ссылка - интервал опроса локального адреса в секундах. Значение по умолчанию: "0.1"

Метод обратной связи Этот метод может использоваться для определения интерфейса обратной связи IPv6.

Опции

(Нет Опции)

Статический метод
Этот метод может использоваться для определения интерфейсов со статически назначенными адресами IPv6.
По умолчанию автоконфигурация без состояния отключена для этого интерфейс.

Опции

address address
Требуется адрес (colon delimited/маска сети)

netmask mask
Сетевая маска (количество битов, например 64)

metric metric
Метрика маршрутизации для шлюза по умолчанию (целое число)

gateway address
Шлюз по умолчанию (разделенный двоеточием)

media type
Средний тип, зависит от драйвера

hwaddress address
Аппаратный адрес или "случайный"

mtu size
Размер MTU

accept_ra int
Принимать router advertisements (0=off, 1=on, 2=on+forwarding)

autoconf int
Выполнить автоконфигурацию без сохранения состояния (0=off, 1=on). Значение по умолчанию: "0"

privext int
Расширения конфиденциальности (RFC3041) (0=off, 1=assign, 2=prefer)

scope Address validity scope. Possible values: global, site, link, host
область действия Адрес Область действия. Возможные значения: глобальный, сайт, ссылка, хост

preferred-lifetime int
Время, когда этот адрес остается предпочтительным

dad-attempts
Количество попыток установить DAD (0 для отключения DAD). Значение по умолчанию: "60"

dad-interval
DAD Интервал опроса состояния в секундах. Значение по умолчанию: "0.1"

Ручной метод
Этот метод может использоваться для определения интерфейсов, для которых по умолчанию настройка не выполняется.
Такие интерфейсы могут быть настроены вручную с помощью команд up и down или скриптов /etc/network/if-*.d.

Опции

hwaddress address
Аппаратный адрес или "случайный"

mtu size
Размер MTU

Метод dhcp
Этот метод может быть использован для получения конфигурации сетевого интерфейса через DHCPv6 с отслеживанием состояния с помощью dhclient.
В DHCPv6 с отслеживанием состояния DHCP-сервер отвечает за назначение адресов клиентам.

Опции

hwaddress address
Аппаратный адрес или "случайный"

accept_ra int
Принимать router advertisements (0=off, 1=on, 2=on+forwarding). Значение по умолчанию: "1"

autoconf int
Выполнить автоконфигурацию без сохранения состояния (0=off, 1=on)

request_prefix int
Запросить префикс через делегирование префикса DHCPv6 (0=off, 1=on). Значение по умолчанию: "0"

ll-attempts
Количество попыток ожидания ссылки - локальный адрес. Значение по умолчанию: "60"

ll-interval
Ссылка-интервал опроса локального адреса в секундах. Значение по умолчанию: "0.1"

Метод туннеля
Этот метод может быть использован для настройки туннеля IPv6 поверх IPv4.
Для этого требуется команда ip из пакета iproute.

Опции

address address
Требуется адрес (через двоеточие)

netmask mask
Сетевая маска (количество битов, например 64)

endpoint address
Требуется адрес другой конечной точки туннеля (четырехугольник с точкой IPv4)

local address
Адрес локальной конечной точки (четырехугольник с пунктиром IPv4)

metric metric
Метрика маршрутизации для шлюза по умолчанию (целое число)

gateway address
Шлюз по умолчанию (разделенный двоеточием)

ttl time
TTL настройки

mtu size
Размер MTU

preferred-lifetime int
Время, когда этот адрес остается предпочтительным

Метод 6to4
Этот метод может быть использован для создания туннеля 6to4. Для этого требуется команда ip из пакета iproute.

Опции

local address
Требуемый адрес локальной конечной точки (квадратичный IPv4)

metric metric
Метрика маршрутизации для шлюза по умолчанию (целое число)

ttl time
TTL настройки

mtu size
Размер MTU

preferred-lifetime int
Время, когда этот адрес остается предпочтительным

МОЖЕТ ОБРАТИТЬСЯ К СЕМЬЕ CAN ADDRESS FAMILY
В этом разделе описываются методы, доступные в семействе can-адресов.

Статический метод
Этот метод может быть использован для настройки интерфейса локальной сети контроллера (CAN). Для этого требуется команда ip из пакета iproute.

Опции

bitrate bitrate
требуемый битрейт (1..1000000)

samplepoint samplepoint
точка отсчета (0.000..0.999)

loopback loopback
циклический возврат сообщений CAN (on|off)

listenonly listenonly
режим только для прослушивания (on|off)

triple triple
активировать тройную выборку (on|off)

oneshot oneshot
режим одного выстрела (on|off)

berr berr
активировать отчет berr (on|off)

ИЗВЕСТНЫЕ ОШИБКИ/ОГРАНИЧЕНИЯ
Программы ifup и ifdown работают с так называемыми "физическими" именами интерфейсов. Эти имена присваиваются аппаратному обеспечению ядром.
К несчастью может случиться так, что ядро в разное время присваивает одному и тому же оборудованию разные имена физических интерфейсов;
например, то, что называлось "eth0", когда вы загружались в последний раз, теперь называется "eth1" и наоборот.
Это создает проблему, если вы хотите соответствующим образом настроить интерфейсы. A способ решения этой проблемы - использовать сценарии сопоставления,
которые выбирают имена логических интерфейсов в соответствии со свойствами аппаратного обеспечения интерфейса.
Увидеть get-mac-address.sh сценарий в каталоге примеров для примера такого сценария сопоставления.
Смотрите также ошибку Debian #101728.

АВТОР
Набор ifupdown был написан Энтони Таунсом <aj@azure.humbug.org.au >. Эта страница была создана Джоуи Хессом <joey@kitenet.net >.

смотрите также
ifup(8), ip(8), ifconfig(8), run-parts(8), resolvconf(8).

Для получения рекомендаций по настройке этого пакета ознакомьтесь с главой "Конфигурация сети" Справочного руководства Debian, доступного по адресу
http://www.debian.org/doc/manuals/debia ... 05.en.html или в пакете debian-reference-en.

Примеры настройки интерфейсов можно найти в /usr/share/doc/ifupdown/examples/network-interfaces.gz.

ifupdown 4 June 2016 INTERFACES(5)
Добавить маршрутизацию route

СТАТУС
systemctl status networking
ПЕРЕЗАПУСК
service network restart
/etc/init.d/networking restart
service networking restart
systemctl restart networking
systemd reboot networking

ПРОВЕРКА
ip route show
ip route
route
netstat -rn
ip ro sh

Применить изменения: перезапустить сетевую службу - это устарело, используйте ifup и ifdown
Данные параметры применяться после следующей инициализации сетевой карты.
Перезагружаем систему либо отключаем\включаем сетевой интерфейс:
ВЫКЛЮЧЕНИЕ:
ifdown Имя-интерфейса
Выполняются следующие команды:
pre-down - перед отключением интерфейса
down - отключения интерфейса
post-down - выхода из строя интерфейса

ifconfig Имя-интерфейса down
Нет команд на выполнение

ip link set Имя-интерфейса down

nmcli con up 'Имя-интерфейса'

ВКЛЮЧЕНИЕ:
ifup Имя-интерфейса
pre-up - до запуска интерфейса
post-up - после поднятия интерфейса
up - обновления интерфейса

ifconfig Имя-интерфейса up
Нет команд на выполнение

ip link set Имя-интерфейса up
Нет команд на выполнение

nmcli con up 'Имя-интерфейса'


Для выполнения команд:
up - Используйте следующую команду для обновления интерфейса вместо ifup.
pre-up - Действия до запуска интерфейса.
post-up - означает запустить команду после поднятия интерфейса
down - Используйте следующую команду для отключения интерфейса вместо ifdown.
pre-down - означает запустить команду перед отключением интерфейса
post-down - Действия, выполняемые сразу после выхода из строя интерфейса.
vlan-raw-device - На интерфейсе VLAN определяет своего «отца».
bridge_ports - На интерфейсе моста определите его членов.

Проверка выполнения команд была указана в блоке интерфейса и вывод текста в файл
post-up /bin/echo "после поднятия интерфейса" >> /root/enttest.txt
pre-up /bin/echo "до запуска интерфейса" >> /root/enttest.txt
up /bin/echo "обновления интерфейса" >> /root/enttest.txt
post-down /bin/echo "выхода из строя интерфейса" >> /root/enttest.txt
pre-down /bin/echo "перед отключением интерфейса" >> /root/enttest.txt
down /bin/echo "отключения интерфейса" >> /root/enttest.txt

# Сетевой интерфейс с обратной связью, петля
auto lo
iface lo inet loopback

# Основной сетевой интерфейс
allow-hotplug eno1
iface eno1 inet static
address 192.168.175.111/24
gateway 192.168.175.1
# параметры dns-* реализуются пакетом resolvconf, если он установлен
dns-nameservers 192.168.175.8
dns-search dns.local

Для блока auto lo
Все отработало хорошо ifdown lo и ifup lo

Для блока allow-hotplug eno1 команды не работают ifdown eno1 и ifup eno1
Получаем ошибку RTNETLINK answers: File exists ifup: failed to bring up eno1
При добавлении параметра auto eno1 получаем ошибку
/etc/init.d/networking restart
[....] Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.
See "systemctl status networking.service" and "journalctl -xe" for details.
failed!
systemd[1]: Failed to start Raise network interfaces.

Из интернета пишут:
"allow-hotplug говорит о том что этот интерфейс запускается не через /etc/init.d/networking а через что-то другое.
если Вы хотите управлять интерфейсами через скрипт /etc/init.d/networking - замените allow-hotplug на auto"

Маршрутизация команды работы до перезагрузки системы или переключения интерфейса
ip route add 168.95.110.21/24 via 192.168.175.4
ip route add 53.84.150.13 via 192.168.175.4
ip route add 88.189.172.244 via 192.168.175.4
ip route delete 168.95.110.21/24 - удалить маршрут
активны только до перезагрузки

Разные варианты прописания маршрутизации
настроить маршруты в файле /etc/network/interfaces
post-up ip route add default via 192.168.175.4

post-up route add -net 168.95.110.21 netmask 255.255.255.252 gw 192.168.175.4
post-up route add -net 53.84.150.13 netmask 255.255.255.252 gw 192.168.175.4
post-up route add -net 88.189.172.24 netmask 255.255.255.252 gw 192.168.175.4
pre-up /sbin/ip r add 88.189.172.24 via 192.168.175.4
up /sbin/ip r add 88.189.172.24 via 192.168.175.4
post-up /sbin/ip r add 88.189.172.24 via 192.168.175.4

pre-down route del -net 168.95.110.21 netmask 255.255.255.252 gw 192.168.175.4
pre-down route del -net 53.84.150.13 netmask 255.255.255.252 gw 192.168.175.4
pre-down route del -net 88.189.172.24 netmask 255.255.255.252 gw 192.168.175.4

route add [-net|-host] <IP/Net> netmask gw <Gateway IP> dev <Int>X
up route add -net 168.95.110.21 netmask 255.255.255.0 gw 192.168.175.4
up route add -net 88.189.172.24 netmask 255.255.255.0 gw 192.168.175.4

up ip route add 168.95.110.21/24 via 192.168.175.4 dev eno1
down ip route del 88.189.172.24/24 via 192.168.175.4 dev eno1

up ip addr add 192.168.1.43/24 dev $IFACE label $IFACE:0
down ip addr del 192.168.1.43/24 dev $IFACE label $IFACE:0

В итогге прописал маршрутизацию в крон при старте системы и раз в сутки

Прописать шлюз
route add default gw 192.168.175.1

Проверить
netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.175.1 0.0.0.0 UG 0 0 0 eno1
192.168.175.0 0.0.0.0 255.255.255.0 U 0 0 0 eno1
количество слов: 1543
Ответить Вложения 3 Пред. темаСлед. тема

Вернуться в «Установка Debian»