Difference between revisions of "Netctl (Русский)"
m (→Настройка) |
m (→Настройка) |
||
Line 38: | Line 38: | ||
# cp /etc/netctl/examples/wireless-wpa /etc/netctl/ | # cp /etc/netctl/examples/wireless-wpa /etc/netctl/ | ||
− | {{Tip|Для создания профиля беспроводного соединения в {{ic|/etc/netctl/}} можно | + | {{Tip|Для создания профиля беспроводного соединения в {{ic|/etc/netctl/}} можно выполнить {{ic|wifi-menu -o}}.}} |
Как только вы создали профиль, попробуйте установить соединение: | Как только вы создали профиль, попробуйте установить соединение: |
Revision as of 23:11, 18 August 2013
zh-CN:Netctl Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary end netctl - это инструмент командной строки, используемый для настройки и управления сетевыми подключениями через профили. Это нативный проект, призванный заменить устаревшую утилиту netcfg.
Contents
Установка
Пакет netctl доступен в официальном репозитории. Установка netctl заменит netcfg.
netctl и netcfg - конфликтующие пакеты. Есть вероятность потери соединения после установки netctl, если ваши профили некорректно настроены.
systemctl --type=service
, чтобы убедиться, что не запущены другие сервисы по настройке сети. Различные сетевые сервисы будут конфликтоватьОбязательно к прочтению
Перед началом использования netctl желательно прочитать следующие страницы:
Настройка
Для управления сетевыми соединениями netctl
использует профили, которые расположены в /etc/netctl/
. Примеры профилей расположены в /etc/netctl/examples/
. В общую конфигурацию включены:
- ethernet-dhcp
- ethernet-static
- wireless-wpa
- wireless-wpa-static
Чтобы использовать пример конфигурации просто скопируйте один из них из /etc/netctl/examples/
в /etc/netctl/
и отредактируйте необходимым образом:
# cp /etc/netctl/examples/wireless-wpa /etc/netctl/
/etc/netctl/
можно выполнить wifi-menu -o
.Как только вы создали профиль, попробуйте установить соединение:
# netctl start profile
Если результат выполнения команды говорит о неудаче, выполните journalctl -xn
и netctl status profile
для выяснения причин. Выполните необходимую корректировку конфигурации и повторите попытку.
Автоматизация
Один профиль
Если используется только один профиль, вы можете сделать его подключение автоматическим. После успешного запуска профиля выполните:
# netctl enable <profile>
Эта команда создаст и активирует сервис systemd, который будет автоматически запускать профиль при загрузке компьютера.
Несколько профилей
В то время как netcfg
использовал net-auto-wireless.service
и net-auto-wired.service
, netctl
использует netctl-auto@<interface>.service
для беспроводных соединений и netctl-ifplugd@<interface>.service
для проводных соединений. Для того, чтобы netctl-auto@<interface>.service
работал с беспроводными соединениями необходимо установить пакет wpa_actiond. Для того, чтобы netctl-ifplugd@<interface>.service
работал с проводными соединениями необходимо установить пакет ifplugd. Настройте /etc/ifplugd/ifplugd.conf
соответствующим образом.
После того как ваши профили установлены и, судя по всему, работают, просто активируйте соответствующие сервисы, выполнив:
# systemctl enable netctl-auto@<interface>.service # systemctl enable netctl-ifplugd@<interface>.service
Key=
, соответствующий юнит не активируется при загрузке.Если у вас уже есть профиль, активированный через netctl
, выполните
# netctl disable <profile>
чтобы предотвратить двойное включение профиля при загрузке и возможные неполадки с wpa_supplicant.
netctl reenable <profile>
, чтобы применить изменения.Переход с Netcfg
netctl
конфликтует с netcfg
, поэтому отключите существующие netcfg@<profile>
сервисы перед установкой netctl
.Профили netctl
находятся в /etc/netctl
, а не в каталоге /etc/network.d
, который использовал netcfg
.
Чтобы перейти с netcfg, необходимо выполнить по крайней мере следующие шаги:
- Переместите файлы профилей сетевых подключений в новую директорию.
- Переименуйте переменные в них в соответствии с netctl.profile(5) (Большинство имен переменных всего лишь изменят стиль на UpperCamelCase, например CONNECTION= становится Connection=)
- Для соединений со статическим IP удостоверьтесь в том, что переменная Address= имеет маску подсети после IP (например Address=('192.168.1.23/24' '192.168.1.87/24') в примере профиля)
- Если вы установили беспроводное соединение в соответствии с примером
wireless-wpa-configsection
, учтите, что значения в секцииWPAConfigSection=
переопределят соответствующие опцииwpa_supplicant
в/etc/wpa_supplicant/wpa_supplicant.conf
. Для подключения к скрытой беспроводной сети добавьтеscan_ssid=1
к параметрам вwireless-wpa-configsection
;Hidden=yes
не работает здесь. - Удалите кавычки у значений переменных, для которых они не обязательны (в основном это дело вкуса).
- Выполните
netctl enable <profile>
для каждого профиля в старом массиве NETWORK. Он не работает в этом случае, смотрите netctl.special(7). - Используйте
netctl list
/netctl start <profile>
вместо netcfg-menu. wifi-menu остается доступным.
У пользователей, не желающих, чтобы их пароль хранился в простом тексте, есть возможность использовать 256-bit Encrypted PSK.
Если это еще не сделано, установите wpa_actiond из Official Repositories.
Далее, сгенерируйте ваш 256-bit Encrypted PSK используя wpa_passphrase:
Usage: wpa_passphrase [ssid] [passphrase]
$ wpa_passphrase archlinux freenode
Во втором окне терминала скопируйте файл примера wireless-wpa
из /etc/netctl/examples
в /etc/netctl
.
# cp /etc/netctl/examples/wireless-wpa /etc/netctl/wireless-wpa
Далее вам будет необходимо отредактировать /etc/netctl/wireless-wpa
, используя ваш любимый текстовый редактор, и добавить Encrypted Pre-shared Key, который был сгенерирован ранее с использованием wpa_passphrase, в переменную Key
этого профиля.
Профиль wireless-wpa
, включающий 256-bit Encrypted PSK будет выглядеть примерно так:
/etc/netctl/wireless-wpa
Description='A simple WPA encrypted wireless connection using 256-bit Encrypted PSK' Interface=wlp2s2 Connection=wireless Security=wpa IP=dhcp ESSID=archlinux Key=\"64cf3ced850ecef39197bb7b7b301fc39437a6aa6c6a599d0534b16af578e04a
Key=
, которые описаны в конце netctl.profile(5).Поддержка
Официальная страница обсуждения: https://bbs.archlinux.org/viewtopic.php?id=157670
Советы
По состоянию на апрель 2013 в netctl
нет альтернативы netcfg current
. Если вы использовали эту возможность для чего-то, вроде статус-бара тайлового оконного менеджера, теперь вы можете использовать следующее:
# netctl list | sed -n 's/^\* //p'
или, если для подключения использовался netctl-auto
:
# wpa_cli -i <interface> status | sed -n 's/^id_str=//p'