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

From ArchWiki
Jump to: navigation, search
(Required reading)
(Один профиль)
Line 40: Line 40:
===Automatic Operation===
===Automatic Operation===
====Один профиль====
====Один профиль====
If you are using only one profile, once that profile is started successfully, it can be {{ic|enabled}} using
Если используется только один профиль, вы можете сделать его подключение автоматическим. После успешного запуска профиля выполните:
  # netctl enable <profile>  
  # netctl enable <profile>  
This will create and enable a [[systemd]] service that will start when the computer boots.
Эта команда создаст и активирует сервис [[systemd]], который будет автоматически запускать профиль при загрузке компьютера.
====Несколько профилей====
====Несколько профилей====

Revision as of 15:00, 9 May 2013

zh-CN:Netctl 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, который будет автоматически запускать профиль при загрузке компьютера.

Несколько профилей

Whereas with netcfg there was net-auto-wireless.service and net-auto-wired.service, netctl uses netctl-auto@<interface>.service for wireless profiles, and netctl-ifplugd@<interface>.service for wired profiles. In order to make the netctl-auto@<interface>.service work for wireless interfaces, the package wpa_actiond is required to be installed. In order to make the netctl-ifplugd@<interface>.service work for wired interfaces, the package ifplugd is required to be installed. Configure /etc/ifplugd/ifplugd.conf accordingly.

Once your profiles are set and verified to be working, simply enable these services with

# systemctl enable netctl-auto@<interface>.service 
# systemctl enable netctl-ifplugd@<interface>.service  

If you have previously enabled a profile through netctl, run

# netctl disable <profile> 

to prevent the profile from starting twice at boot, and possibly causing issues with wpa_supplicant.

Note: If there is ever a need to alter a currently enabled profile, execute netctl reenable <profile> to apply the changes.

Переход с 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=('' '') 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:

Description='A simple WPA encrypted wireless connection using 256-bit Encrypted PSK'
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'