「Wicd」の版間の差分
細 |
細 |
||
14行目: | 14行目: | ||
{{Related articles end}} |
{{Related articles end}} |
||
− | [https://launchpad.net/wicd Wicd] は有線・無線インターフェイスを管理することができるネットワーク接続マネージャであり、[[NetworkManager]] と似ています。Wicd は [[ |
+ | [https://launchpad.net/wicd Wicd] は有線・無線インターフェイスを管理することができるネットワーク接続マネージャであり、[[NetworkManager]] と似ています。Wicd は [[Python]] と [[GTK+]] で書かれています。また、[[Qt]] で書かれた、[[KDE]] 用の Wicd も [[Arch User Repository]] からインストールできます。Wicd は curses インターフェイスでターミナルから実行することもでき、X サーバーセッションやタスクパネルを必要としません ([[#テキストモードで Wicd を実行]] を参照)。 |
{{Note|現在、人材不足のために Wicd の開発は滞っています。詳しくは、[https://answers.launchpad.net/wicd/+question/227789 こちらの]バグレポートを見て下さい。活発に開発されているネットワークマネージャを使いたい場合は、[[Connman]] や [[netctl]] を選択してください。}} |
{{Note|現在、人材不足のために Wicd の開発は滞っています。詳しくは、[https://answers.launchpad.net/wicd/+question/227789 こちらの]バグレポートを見て下さい。活発に開発されているネットワークマネージャを使いたい場合は、[[Connman]] や [[netctl]] を選択してください。}} |
||
30行目: | 30行目: | ||
=== KDE クライアント === |
=== KDE クライアント === |
||
− | KDE フロントエンドを使いたい場合は、[[ |
+ | KDE フロントエンドを使いたい場合は、[[AUR]] から {{AUR|wicd-kde}} をインストールしてください。 |
=== 通知 === |
=== 通知 === |
||
36行目: | 36行目: | ||
ネットワークの状態に関する通知を有効にするには、{{Pkg|notification-daemon}} と {{Pkg|python2-notify}} パッケージをインストールする必要があります。 |
ネットワークの状態に関する通知を有効にするには、{{Pkg|notification-daemon}} と {{Pkg|python2-notify}} パッケージをインストールする必要があります。 |
||
− | [[ |
+ | [[GNOME]] を使ってない場合は、notification-daemon の代わりに、GNOME パッケージを必要としない {{Pkg|xfce4-notifyd}} を通知デーモンとしてインストールすると良いでしょう。 |
=== その他 === |
=== その他 === |
||
− | [[ |
+ | [[AUR]] には {{AUR|wicd-bzr}} ビルドスクリプトが入っており、最新の開発ブランチをビルドします。別のバージョンを使ったり自分でパッケージを作りたい場合は、[[ABS]] を使うことで簡単にビルドできます。 |
== 設定 == |
== 設定 == |
||
52行目: | 52行目: | ||
まず、(netctl, netcfg, dhcpcd, NetworkManager など) 前に使っていたネットワークデーモンを停止させます。 |
まず、(netctl, netcfg, dhcpcd, NetworkManager など) 前に使っていたネットワークデーモンを停止させます。 |
||
− | {{ic|netctl}}, {{ic|netcfg}}, {{ic|dhcpcd}}, {{ic|networkmanager}} などの既存のネットワーク管理サービスを無効化してください。[[Systemd |
+ | {{ic|netctl}}, {{ic|netcfg}}, {{ic|dhcpcd}}, {{ic|networkmanager}} などの既存のネットワーク管理サービスを無効化してください。[[Systemd#ユニットを使う]] を参照。 |
{{Note|''network'' サービスを置き換えている ''netctl'' ではなく、''network'' デーモンを停止・無効化する必要があるかもしれません。よくわからないならば、両方とも無効化してください。}} |
{{Note|''network'' サービスを置き換えている ''netctl'' ではなく、''network'' デーモンを停止・無効化する必要があるかもしれません。よくわからないならば、両方とも無効化してください。}} |
||
− | ''wicd'' [[ |
+ | ''wicd'' [[systemd]] [[デーモン]]を起動して、ブート時に起動するように有効化してください。 |
ユーザーを {{ic|users}} グループに追加してください: |
ユーザーを {{ic|users}} グループに追加してください: |
||
144行目: | 144行目: | ||
==== macchanger を使って MAC を変更 ==== |
==== macchanger を使って MAC を変更 ==== |
||
− | [[ |
+ | [[MAC アドレス偽装#macchanger]] を見て下さい。 |
以下のスクリプトを使うことでネットワークインターフェイスの MAC アドレスを変更することができます。 |
以下のスクリプトを使うことでネットワークインターフェイスの MAC アドレスを変更することができます。 |
||
170行目: | 170行目: | ||
== トラブルシューティング == |
== トラブルシューティング == |
||
− | 有線接続のトラブルシューティングについては[[ |
+ | 有線接続のトラブルシューティングについては[[ネットワーク設定#トラブルシューティング]]を、無線接続のトラブルシューティングについては[[ワイヤレス設定#トラブルシューティング]]を見てください。このセクションでは ''wicd'' に関する問題だけを取り扱います。 |
=== ハイバネート・サスペンドから復帰したときに自動接続 === |
=== ハイバネート・サスペンドから復帰したときに自動接続 === |
||
184行目: | 184行目: | ||
Type=oneshot |
Type=oneshot |
||
User=%i |
User=%i |
||
− | RemainAfterExit= |
+ | RemainAfterExit=no |
− | ExecStartPre=/usr/share/wicd/daemon/suspend.py |
||
ExecStart=/usr/share/wicd/daemon/autoconnect.py |
ExecStart=/usr/share/wicd/daemon/autoconnect.py |
||
2015年8月2日 (日) 17:29時点における版
Wicd は有線・無線インターフェイスを管理することができるネットワーク接続マネージャであり、NetworkManager と似ています。Wicd は Python と GTK+ で書かれています。また、Qt で書かれた、KDE 用の Wicd も Arch User Repository からインストールできます。Wicd は curses インターフェイスでターミナルから実行することもでき、X サーバーセッションやタスクパネルを必要としません (#テキストモードで Wicd を実行 を参照)。
インストール
基本パッケージ
公式リポジトリから wicd をインストールしてください。wicd デーモンを実行するのに必要な全てのプログラムと wicd-cli
と wicd-curses
インターフェイスが含まれています。
GTK+ クライアント
GTK+ フロントエンドを使いたい場合は、公式リポジトリの wicd-gtk をインストールしてください。wicd の GTK インターフェイスを実行するのに必要な全てのプログラムと、システムトレイにクライアントを表示させるための autostart ファイルが含まれています。
KDE クライアント
KDE フロントエンドを使いたい場合は、AUR から wicd-kdeAUR をインストールしてください。
通知
ネットワークの状態に関する通知を有効にするには、notification-daemon と python2-notify パッケージをインストールする必要があります。
GNOME を使ってない場合は、notification-daemon の代わりに、GNOME パッケージを必要としない xfce4-notifyd を通知デーモンとしてインストールすると良いでしょう。
その他
AUR には wicd-bzrAUR ビルドスクリプトが入っており、最新の開発ブランチをビルドします。別のバージョンを使ったり自分でパッケージを作りたい場合は、ABS を使うことで簡単にビルドできます。
設定
初期設定
Wicd にはデーモンがあり、それを起動する必要があります。
まず、(netctl, netcfg, dhcpcd, NetworkManager など) 前に使っていたネットワークデーモンを停止させます。
netctl
, netcfg
, dhcpcd
, networkmanager
などの既存のネットワーク管理サービスを無効化してください。Systemd#ユニットを使う を参照。
wicd systemd デーモンを起動して、ブート時に起動するように有効化してください。
ユーザーを users
グループに追加してください:
# gpasswd -a USERNAME users
ユーザーを新しいグループに追加したら、一度ログアウトして再ログインしてください。
デスクトップ環境で Wicd を実行
wicd-gtk をインストールしてデスクトップ環境がある場合、仮想ターミナルを開いて以下のコマンドを実行します。
- システムサービスとして Wicd を起動するには、次のコマンドを実行:
# systemctl start wicd
- Wicd をロードするには、次のコマンドを実行:
$ wicd-client
- 通知エリアに最小化させて起動するには、次のコマンドを実行:
$ wicd-client --tray
- デスクトップ環境に通知エリアが存在しない場合、または wicd のトレイアイコンを表示してほしくない場合、次のコマンドを実行:
$ wicd-client -n
テキストモードで Wicd を実行
wicd-gtk をインストールしていない場合、wicd-cli か wicd-curses を使います:
$ wicd-curses
自動起動
wicd-gtk パッケージは /etc/xdg/autostart/wicd-tray.desktop
ファイルを作成し、DE/WM のログイン時に wicd-client
を自動で起動します。その場合、wicd のシステムサービスを有効にするだけで十分です:
# systemctl enable wicd
/etc/xdg/autostart/wicd-tray.desktop
が存在しない場合、wicd-client を DE/WM のスタートアップに追加することでログイン時にアプリケーションを起動させることができます。
スクリプト
Wicd には接続プロセスの段階 (接続や切断の前後) ごとにスクリプトを実行することができる機能があります。/etc/wicd/scripts/
内のそれぞれの段階にスクリプトを置いて実行可能属性を付与してください。
スクリプトは3つのパラメータを受け取ることができます:
$1 - 接続タイプ (wireless/wired)。 $2 - ESSID (ネットワーク名)。 $3 - BSSID (ゲートウェイ MAC)。
ARP スプーフィング攻撃の防止
以下のスクリプトを使うことで静的な ARP が設定され、ARP スプーフィング攻撃の防止になります。case ステートメントの中の値を、静的な ARP エントリを設定したいネットワークに変更してください。root で実行します:
#!/bin/bash #Set the parameters passed to this script to meaningful variable names. connection_type="$1" essid="$2" bssid="$3" if [ "${connection_type}" == "wireless" ]; then #Change below to match your networks. case "$essid" in YOUR-NETWORK-NAME-ESSID) arp -s 192.168.0.1 00:11:22:33:44:55 ;; Netgear01923) arp -s 192.168.0.1 10:11:20:33:40:50 ;; ANOTHER-ESSID) arp -s 192.168.0.1 11:33:55:77:99:00 ;; *) echo "Static ARP not set. No network defined." ;; esac fi
macchanger を使って MAC を変更
MAC アドレス偽装#macchanger を見て下さい。
以下のスクリプトを使うことでネットワークインターフェイスの MAC アドレスを変更することができます。
ネットワークに接続するときに MAC を変更するには、スクリプトを /etc/wicd/scripts/preconnect/
下に配置してください。
macchanger コマンドは macchanger --help
を見て自由に変更してください。
#!/usr/bin/env bash connection_type="$1" if [[ "${connection_type}" == "wireless" ]]; then ip link set wlp2s0 down macchanger -A wlp2s0 ip link set wlp2s0 up elif [[ "${connection_type}" == "wired" ]]; then ip link set enp1s0 down macchanger -A enp1s0 ip link set enp1s0 up fi
トラブルシューティング
有線接続のトラブルシューティングについてはネットワーク設定#トラブルシューティングを、無線接続のトラブルシューティングについてはワイヤレス設定#トラブルシューティングを見てください。このセクションでは wicd に関する問題だけを取り扱います。
ハイバネート・サスペンドから復帰したときに自動接続
いくつかの理由で、ハイバネートやサスペンドからの復帰時の自動接続は自動的に動作しません。以下のサービスファイルを有効化することで Wicd を手動で再起動できます。
/etc/systemd/system/wicd-resume@.service
[Unit] Description=Restart Wicd autoconnect service on resume After=suspend.target [Service] Type=oneshot User=%i RemainAfterExit=no ExecStart=/usr/share/wicd/daemon/autoconnect.py [Install] WantedBy=suspend.target
pynotify のインポートが失敗して、通知が使えない
python2-notify パッケージが自動的にインストールされていません。公式リポジトリからインストールしてください。
D-Bus の接続エラーメッセージ
wicd が突然機能停止して D-Bus に関するエラーが表示される場合、設定ファイルも含めて wicd を完全に削除して、始めから再インストールする必要があります:
# pacman -R wicd # rm -rf /etc/wicd /var/log/wicd /etc/dbus-1/system.d/wicd* # pacman -S wicd
詳しくは次のリンクを見て下さい: https://bbs.archlinux.org/viewtopic.php?pid=577141#p577141
設定ファイルの問題によって wicd が動作しないときも Wicd-client は D-Bus の接続エラーのメッセージを吐きます ("Could not connect to wicd's D-Bus interface.")。空のアカウントが /etc/wicd/wired-settings.conf
に追加されているということも考えられます。その場合は
[]
を削除して wicd を再起動してください。
それでも動作しない場合は https://bbs.archlinux.org/viewtopic.php?pid=1268721 を読んで下さい。
パッケージを更新した後の問題
D-Bus のエラーによって、パッケージの更新後に wicd クライアントがロードできなくなることが時々あります。
/etc/wicd/
ディレクトリの設定ファイルを削除するのが解決方法です。
# systemctl stop wicd # rm /etc/wicd/*.conf # systemctl start wicd
sudo のグラフィカルプログラムについての注意事項
wicd がグラフィカルな sudo プログラムを見つけられないというエラーを表示する場合 gksu, ktsussAUR, kdebase-runtime のどれかをインストールして、適当なコマンドを実行してください:
$ ktsuss wicd-client -n
$ gksudo wicd-client -n
$ kdesu wicd-client -n
Eduroam
WPA2 Enterprise#Wicd を見てください。
Bad password using PEAP with TKIP/MS-CHAPv2
The connection template PEAP with TKIP/MS-CHAPv2 requires the user to enter the path to a CA certificate besides entering username and password. However this can cause troubles resulting in an error message of a bad password [1]. A possible solution is the usage of PEAP with GTC instead of TKIP/MS-CHAPv2 which does not require one to enter the path of the CA cert.
Wicd skips obtaining IP address on wlp
This can be caused by dhcpcd running alongside wicd as systemd service. A solution would be to stop/disable dhcpcd.
dhcpcd が動作しない
Normally it should not be required, nor recommended to run the dhcpcd service next to wicd. However, if you encounter the error message that dhcpcd is not running, then you can try running dhcpcd and see if you encounter any incompatibilities when using both services at the same time.
# systemctl start dhcpcd
Alternatively, as a workaround you might consider switching to dhclient in the Wicd settings.
参照
- Note on interfaces at the official site
- Forum post about two instances of wicd-client and
/etc/xdg/autostart
- Bug report mentioning /etc/xdg/autostart and wicd-client behavior