Difference between revisions of "Netctl (Русский)"

From ArchWiki
Jump to: navigation, search
(Один профиль)
(Несколько профилей)
Line 45: Line 45:
  
 
====Несколько профилей====
 
====Несколько профилей====
Whereas with {{ic|netcfg}} there was {{ic|net-auto-wireless.service}} and {{ic|net-auto-wired.service}}, {{ic|netctl}} uses {{ic|netctl-auto@<interface>.service}} for wireless profiles, and {{ic|netctl-ifplugd@<interface>.service}} for wired profiles. In order to make the {{ic|netctl-auto@<interface>.service}} work for wireless interfaces, the package {{pkg|wpa_actiond}} is required to be installed. In order to make the {{ic|netctl-ifplugd@<interface>.service}} work for wired interfaces, the package {{pkg|ifplugd}} is required to be installed. Configure {{ic|/etc/ifplugd/ifplugd.conf}} accordingly.
+
В то время как {{ic|netcfg}} использовал {{ic|net-auto-wireless.service}} и {{ic|net-auto-wired.service}}, {{ic|netctl}} использует {{ic|netctl-auto@<interface>.service}} для беспроводных соединений и {{ic|netctl-ifplugd@<interface>.service}} для проводных соединений. Для того, чтобы {{ic|netctl-auto@<interface>.service}} работал с беспроводными соединениями необходимо установить пакет {{pkg|wpa_actiond}}. Для того, чтобы {{ic|netctl-ifplugd@<interface>.service}} работал с проводными соединениями необходимо установить пакет {{pkg|ifplugd}}. Настройте {{ic|/etc/ifplugd/ifplugd.conf}} соответствующим образом.
  
Once your profiles are set and verified to be working, simply enable these services with
+
После того как ваши профили установлены и, судя по всему, работают, просто активируйте соответствующие сервисы, выполнив:
 
  # systemctl enable netctl-auto@<interface>.service  
 
  # systemctl enable netctl-auto@<interface>.service  
 
  # systemctl enable netctl-ifplugd@<interface>.service   
 
  # systemctl enable netctl-ifplugd@<interface>.service   
  
 +
 +
Если профиль, активированный через {{ic|netctl}}, выполните
 
If you have previously enabled a profile through {{ic|netctl}}, run  
 
If you have previously enabled a profile through {{ic|netctl}}, run  
  # netctl disable <profile>  
+
  # netctl disable <profile>
to prevent the profile from starting twice at boot, and possibly causing issues with wpa_supplicant.
+
чтобы предотвратить двойное включение профиля при загрузке и возможные неполадки с wpa_supplicant.
  
{{Note|If there is ever a need to alter a currently enabled profile, execute {{ic|netctl reenable <profile>}} to apply the changes.}}
+
{{Note|Если необходимо изменить уже существующий профиль, выполните {{ic|netctl reenable <profile>}}, чтобы применить изменения.}}
  
 
===Переход с Netcfg===
 
===Переход с Netcfg===

Revision as of 15:16, 9 May 2013

Template:Article summary start Template:Article summary text Template:Article summary end Netctl это новый Arch проект, который заменяет netcfg. Netctl это будущее (и настоящее) управления сетями из командной строки Arch Linux.

Установка

Пакет netctl доступен в Official Repositories. Установка netctl заменит netcfg.

Required reading

Для netctl доступны качественные man-страницы. Пользователям следует прочитать эти man-страницы, прежде чем начать использовать netctl:

netctl и netcfg - конфликтующие пакеты. Есть вероятность потери соединения после установки netctl, ЕСЛИ ваши профили некорректно настроены.

Настройка

netctl можно использовать для анализа и контроля за состоянием сервисов Systemd для менеджера сетевого профиля. Пользователи могут обратиться к примерам файлов конфигурации сетевых подключений. Примеры профилей расположены в /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/

Как только вы создали профиль, сделайте попытку установить соединение используя вновь созданный профиль, выполнив:

# netctl start <profile>

Если результат выполнения команды говорит о неудаче, выполните journalctl -xn и netctl status <profile> для более глубокого анализа причин неудачи. Выполните необходимую корректировку конфигурации и повторите попытку.

Automatic Operation

Один профиль

Если используется только один профиль, вы можете сделать его подключение автоматическим. После успешного запуска профиля выполните:

# 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  


Если профиль, активированный через netctl, выполните If you have previously enabled a profile through netctl, run

# netctl disable <profile>

чтобы предотвратить двойное включение профиля при загрузке и возможные неполадки с wpa_supplicant.

Note: Если необходимо изменить уже существующий профиль, выполните netctl reenable <profile>, чтобы применить изменения.

Переход с Netcfg

Warning: netctl conflicts with netcfg so disable existing netcfg@<profile> service before installing netctl.

netctl uses /etc/netctl to store its profiles, not /etc/network.d (netcfg's profile storage location).

In order to migrate from netcfg, at least the following is needed:

  • Move network profile files to the new directory.
  • Rename variables therein according to netctl.profile(5) (Most variable names have only UpperCamelCase i.e CONNECTION= becomes Connection=).
  • For static IP configuration make sure the Address= variables have a netmask after the IP (e.g. Address=('192.168.1.23/24' '192.168.1.87/24') in the example profile).
  • If you setup a wireless profile according in the wireless-wpa-configsection example, note that this overrides wpa_supplicant options defined above the brackets. For a connection to a hidden wireless network, add scan_ssid=1 to the options in the wireless-wpa-configsection; Hidden=yes does not work there.
  • Unquote interface variables and other variables that don't strictly need quoting (this is mainly a style thing).
  • Run netctl enable <profile> for every profile in the old NETWORKS array. 'last' doesn't work this way, see netctl.special(7).
  • Use netctl list / netctl start <profile> instead of netcfg-menu. wifi-menu remains available.

Password encryption (256-bit PSK)

Users not wishing to have their passwords stored in plain text have the option of generating a 256-bit Encrypted PSK.

If you have not done so already, install wpa_actiond from the Official Repositories.

Next, generate your 256-bit Encrypted PSK using wpa_passphrase:

Usage: wpa_passphrase [ssid] [passphrase]
$ wpa_passphrase archlinux freenode

In a second terminal window copy the example file wireless-wpa from /etc/netctl/examples to /etc/netctl.

# cp /etc/netctl/examples/wireless-wpa /etc/netctl/wireless-wpa

You will then need to edit /etc/netctl/wireless-wpa using your favorite text editor and add the Encrypted Pre-shared Key that was generated earlier using wpa_passphrase, to the Key variable of this profile.

Once completed your network profile wireless-wpa containing a 256-bit Encrypted PSK should resemble:

/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
Note: Make sure to use the special non-quoted rules for Key= that are explained at the end of netctl.profile(5).

Поддержка

Official announcement thread: https://bbs.archlinux.org/viewtopic.php?id=157670

Советы

As of April 2013 there is no netctl alternative to netcfg current. If you relied on it for something, like a status bar for a tiling window manager, you can now use:

# netctl list | sed -n 's/^\* //p'

or, when netctl-auto was used to connect:

# wpa_cli -i <interface> status | sed -n 's/^id_str=//p'