intel NUC NUC5CPYH にLinuxを入れて無線LANを使う
intel NUC NUC5CPYHで無線LANを利用した時のメモです。
※数カ月前にやったことなので場合によってはネタが古いかも。作業順序は特に最適化していないのでよしなにしてください。
※パスワードの暗号化について後述と書いておきながら書いていなかったので追記
環境
Fedora22 + intel nuc Network controller: Intel Corporation Wireless 3165 (rev 81)
最初はCentOSでやろうと思ったんですが、この機種に搭載されている無線LANのドライバは"kernel version +4.1 needed"なので、さくっと終わらせるためにFedora22に変更しました。
セットアップ
準備
Fedora22を自分の好みでインストールして、とりあえず有線LANを利用してお決まりのコマンドを実行して再起動します。
$ sudo dnf update $ sudo shutdown -r now
するとカーネルバージョンが上がるはずなので、カーネルバージョンを確認。
$ uname -a Linux fedora.localdomain 4.1.6-200.fc22.x86_64 #1 SMP Mon Aug 17 19:54:31 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
作業用にpciutilsを入れます。
$ sudo dnf install pciutils
ドライバのインストール
適当なディレクトリに無線LANドライバをダウンロードして展開後、ライブラリに追加してまた再起動します。
$ cd workdir $ wget https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-7265-ucode-25.30.13.0.tgz $ tar xvzf iwlwifi-7265-ucode-25.30.13.0.tgz $ cd iwlwifi-7265-ucode-25.30.13.0 $ sudo cp iwlwifi-7265* /lib/firmware/ $ sudo shutdown -r now
認識されドライバが読み込まれているか確認
$ lspci $ dmesg | grep iwl
以下のログが出ていればOKです。
[ 12.749723] iwlwifi 0000:02:00.0: enabling device (0000 -> 0002) [ 13.189540] iwlwifi 0000:02:00.0: loaded firmware version 25.30.13.0 op_mode iwlmvm [ 13.490190] iwlwifi 0000:02:00.0: Detected Intel(R) Dual Band Wireless AC 3165, REV=0x210 [ 13.490590] iwlwifi 0000:02:00.0: L1 Enabled - LTR Enabled [ 13.491211] iwlwifi 0000:02:00.0: L1 Enabled - LTR Enabled [ 13.689111] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs' [ 13.774546] iwlwifi 0000:02:00.0 wlp2s0: renamed from wlan0
インターフェースを有効化
インターフェースをUP状態に変更します。
$ sudo ip link set up wlp2s0
インターフェースが動作することを確認
次のコマンドでアクセスポイントがリストアップされることを確認します。
$ sudo iwlist wlp2s0 scan
WPA2のクライアントをインストール
wpa_supplicantをインストールします。
$ sudo dnf install wpa_supplicant
wpa_supplicantの設定ファイルを編集します。 "your said"の箇所に接続するAPのSSIDを設定し、yourwpa2keyにパスワードを設定します。
※pskの暗号化は後述
$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=wheel ap_scan=1 network={ ssid="your ssid" key_mgmt=WPA-PSK proto=WPA2 pairwise=CCMP TKIP group=CCMP TKIP WEP104 WEP40 psk=yourwpa2key }
使わなくてもwepのパスワード設定が必要らしいので適当な値を入れておく。
$ echo 'KEY="s:dummyKey"' > /etc/sysconfig/network-scripts/keys-ra0
接続テスト
手動で接続してみます。これで問題なく動けば一安心
$ sudo wpa_supplicant -c /etc/wpa_supplicant/wpa_supplicant.conf -i wlp2s0 -Dwext
次のようなログが出るはず
Successfully initialized wpa_supplicant wlp2s0: Trying to associate with x:x:x:x:x:x (SSID='your ssid' freq=5540 MHz) ioctl[SIOCSIWFREQ]: Device or resource busy wlp2s0: Association request to the driver failed wlp2s0: Associated with x:x:x:x:x:x wlp2s0: WPA: Key negotiation completed with x:x:x:x:x:x [PTK=CCMP GTK=CCMP] wlp2s0: CTRL-EVENT-CONNECTED - Connection to x:x:x:x:x:x completed [id=0 id_str=]
DHCPならdhclientを実行してIPをもらう
$ sudo dhclient wpl2s0 $ ip addr
パスワードを暗号化する(追記)
次のコマンドで暗号化されて出力された認証キーで "/etc/wpa_supplicant/wpa_supplicant.conf" の yourwpa2key(pskの値)を書き換える。 重要なポイントは"Your Wi-Fi Netowrk Name"のダブルクォート(")で囲まれた箇所をWi-Fiルータで設定されたSSID名にし、yourwpa2keyの箇所を先ほど接続に成功した平文のパスワードにすることです。
$ wpa_passphrase "Your Wi-Fi Network Name" yourwpa2key
ちなみに、パスワードをヒストリー(上キーを押すと出てくる履歴)に残したくない場合は、 一旦、ログアウトしてから再度ログインし、bashの場合はコマンドを実行したユーザーの~/.bash_historyから消したい履歴を削除して、 再度ログアウトしてから再ログインすると消すことが出来ます。
箇条書きにすると次の通り。
- ログアウト
- ログイン
- ~/.bash_history を編集
- ログアウト
- ログイン
何故ログアウトするのかというと、履歴がファイルに出力されるのが、ログアウトを実行したタイミングだからです。
手動で動作させた設定をコンフィグに登録する
インターフェースは-iの後ろにスペースを入れると動作しないので注意すること
$ sudo vi /etc/sysconfig/wpa_supplicant INTERFACES="-iwlp20a" DRIVERS="-Dwext"
systemdに自動起動登録する
$ sudo systemctl start wpa_supplicant.service $ sudo systemctl status wpa_supplicant.service
わからない人のためにsystemdのコマンド一覧
有効化 $ sudo systemctl enable wpa_supplicant 無効化 $ sudo systemctl disable wpa_supplicant 稼働中のサービス $ sudo systemctl list-units --type=service しぼらず確認 $ sudo systemctl list-unit-files 定義されているサービス一覧 $ sudo systemctl list-unit-files --type=service
NetworkManagerが起動しているとアドレス設定がうまくいかないので止める
systemdで完全に止める場合は次のコマンド
$ sudo systemctl disable NetworkManager
インターフェース毎に制御する場合はインターフェースのファイルを編集して、NM_CONTROLLED="no"を追記する
$ vi /etc/sysconfig/network-scripts/ifcfg-wlp2s0 NM_CONTROLLED="no"
NetworkManagerを停止した場合はboot時にnetworkが起動する様に設定
これ忘れると泣ける
sudo chkconfig --list sudo chkconfig network on sudo chkconfig --list
intel NUC NUC5CPYH は消費電力6Wで最高。
ただし、RAMは8Gまでなので重い処理は辛い。
- 出版社/メーカー: インテル
- 発売日: 2015/07/14
- メディア: Personal Computers
- この商品を含むブログを見る
おわり