Wicd (简体中文)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Tango-preferences-desktop-locale-modified.png这篇文章或章节的翻译不反映原文。Tango-preferences-desktop-locale-modified.png

原因:Last updated in 2013(在 Talk:Wicd (简体中文)# 中讨论)

Wicd是一个既能管理有线网络又能管理无线网络的网络接入管理器,是 NetworkManager 的一个功能相似的替代。Wicd是用PythonGTK+写成的。另外,一个用Qt写成的在KDE中工作的版本,可以从 Arch User Repository得到。Wicd 也可以从终端中用 curses 界面运行,不需要 X server 会话或者任务面板 (参见 #运行 Wicd)。

安装

开发版本请 安装 wicd-gitAUR。这个软件包包含了运行 wicd 守护进程所需程序和 wicd-cliwicd-curses 界面。

官方 GTK 前端 wicd-gtk-gitAUR.

通知

要获得网络状态变化的通知,请安装 notification-daemonpython2-notifyAUR

如果你没有使用 GNOME,可以安装 xfce4-notifyd 已避免安装不需要的 GNOME 依赖程序。

开始使用

初始设置

Wicd 提供了一个需要启动的守护进程。

警告: 使用多种网络管理工具容易产生各种问题,因此,请只用一种网络管理工具来管理网络连接。所以,在使用wicd前,必须先关闭其他网络管理工具

首先,使用以下命令手动关闭network、dhcpbd和networkmanager这些守护程序。

# systemctl stop netcfg
# systemctl stop dhcpcd@.service
# systemctl stop NetworkManager.service

然后,禁用各种网络管理守护进程,包括network, dhcdbd, 和 networkmanager

# systemctl disable netcfg
# systemctl disable dhcpcd@.service
# systemctl disable NetworkManager.service

添加服务

# systemctl enable wicd.service

把你帐号加入到users组中,把$USERNAME替换成你自己帐号名称。

gpasswd -a $USERNAME users
注意: 可以访问wicd的用户组是能更改的,可能不是 users. 检查/etc/dbus-1/system.d/wicd.conf中指定的用户组,并将你的用户加入该组。

最后,启动wicd :

# systemctl start wicd

如果你添加了自己的用户到新组中,登出再登入。

运行 Wicd

命令行输入:

$ wicd-client

如果你不需要wicd出现在通知区,使用下面命令:

$ wicd-client -n
注意: 这只有在你安装了 wicd-gtk 之后才可以使用。如果你没有安装 wicd-gtk 那么可以使用 wicd-cli 或者 wicd-curses

你也可以把wicd-client添加到你所使用的DE/WM 自启动列表中,这样每次登录就能自动启动图形管理界面。

注意: 一些用户当使用这种方法会遇到运行两个 wicd-client 进程的问题。在 Arch forums 和 Arch bug reports 有关于此的讨论(参见 #相关链接)。貌似是 wicd 包会在 /etc/xdg/autostart/wicd-tray.desktop 放置一个文件,这会在登入桌面环境/窗口管理器时自动启动 wicd-client。如果是这个问题,如果你在桌面环境/窗口管理器的启动文件中添加了一个 wicd-client 的话你会有两个 wicd-client 同时运行。如果发生这种情况,确认 wicd-tray.desktop 文件存在于 /etc/xdg/autostart; 如果是,只需要在守护进程列表中有 wicd 就可以了。

你也可以在终端中运行 wicd 作为一个 curses 程序:

$ wicd-curses
注意: Wicd 不会向你请求密码。要使用加密连接 (WPA/WEP),展开你想访问的网络,点击高级然后输入必要的信息。

常见问题解决方法

GUI 图形界面

如果在你点击了wicd的状态栏图标后,wicd的GUI没有出现,那么请你确保你是单击了图标而不是双击,因为单击一下图标是显示GUI,再单击一个图标就是关闭GUI,双击正好被程序误认为是开了又关了。

Hidden Wireless Networks and Autoconnection HACK

I had problems with my hidden network and the autoconnection function of wicd. It seems that the essid of my hidden network is not "<hidden>", but an empty string. Connect manually to the network and run:

$ iwlist scan

Output of my hidden network:

...
wlan0     Scan completed :
          Cell 01 - Address: xx:xx:xx:xx:xx:xx
                    ESSID:""
                    Mode:Master
                    Channel:11
...

If you have the same problems and your iwlist output shows ESSID:"", change /usr/lib/wicd/networking.py:

cd /usr/lib/wicd
sed -i.orig -e 's/if CurrentNetwork\["essid"\] == "<hidden>":/if CurrentNetwork\["essid"\] \
== "<hidden>" or CurrentNetwork\["essid"\] == "":/' networking.py

This changes /usr/lib/wicd/networking.py and saves a backup of the original file to /usr/lib/wicd/networking.py.orig.

Based on wicd version 1.4.1-4

相关链接