Nexus4にUbuntuTouchインストール

Nexus7(2012年版)にUbuntu13.04を
インストールしました。今回は、Nexus4に
UbuntuTouchをインストールしようと思います。

※Nexus7(2013年版)でも同じ方法で
インストールできると思います。

まずは、リポジトリ設定をします。
sudo add-apt-repository ppa:phablet-team/tools

次に必要なものをインストールします。
sudo apt-get update
sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot

開発者向けオプションからUSBデバックを有効にします。
Nexus4(android5.1)の開発者向けオプションは、
表示されていないので、下記の操作で表示します。
・[端末情報]の[ビルド番号]を7回タップ

USBデバックを有効にします。
・[開発者向けオプション]-[USBデバック]

Nexus4のブートローダ設定画面を表示します
①電源をOFFする
②電源+ボリューム上+ボリューム下を同時に押します。
※しっかりと現象を確認できていませんが、Androidの初期設定を
行っていない、または、PCとNexus4を繋げた状態で②を実施すると
ブートローダ設定画面が表示されないような気がします。

bootloaderアンロックをします。
sudo fastboot oem unlock

bootloader設定画面でUbuntuTouchをインストールします。
ubuntu-device-flash touch --channel=devel --bootstrap

無事にインストールは完了しました。

Nexus7にUbuntu13.04インストール(4)

今回はUbuntu13.04をインストールした
Nexus7をandroidに戻したいと思います。

インストールする前に、Nexus7のブートローダーが
アンロックしておいて下さい。
アンロック方法はコチラ>>
Nexus7にUbuntu13.04インストール(2)

まずは、androidをダウンロードします。
今回はバージョン5.1.1をダウンロードしました。
androidは下記よりダウンロードできます。
https://developers.google.com/android/nexus/images#nakasi

ダウンロードしたファイルを解凍します。
tar zxvf nakasi-lmy47v-factory-b48bd71d.tgz

解凍したファイルに移動します。
cd nakasi-jro03d/

シェルを実行します。
sudo ./flash-all.sh

以上でインストール完了です。

セキュリティで考えるとできるだけ新しい
OSの方が良いと思われます。以前、
WebViewコンポートの脆弱性に関して、
話題にあがりました。android4.0~4.3までの
バージョンについて、WebViewの脆弱性に関して、
サポートされないという話もあったような
なかったような。

Nexus7にUbuntu13.04インストール(3)

前回、Nexus7(2012年版)にUbuntu13.04を
インストールしました。

早速Nexus7で端末を開いて、操作をして
みました。おぉ~、端末でファイル操作が
できる。Ubuntuをインストールしたので、
当然ではあるのですが、感動。

それでは、何かインストールしてみようと
「sudo apt-get update」を実行。
見事に「404 Not Found」エラーが発生。
ようするに、パッケージ・リストを
取得する為のサイトが存在していないと言う事です。
Ubuntu13.04はサポート期間が終了している為、
指定したアドレスにはサイトが存在しなくなって
しまっているわけです。

どこかに無いかと調査をしてみると、ありました。
良かったです。下記のサイトにあります。
http://old-releases.ubuntu.com/

よって、上記のサイトアドレスに書き換えて
しまえば、「sudo apt-get update」で、
パッケージ・リストを取得できます。

それでは、書き換えてみましょう。
下記のコマンドを実行して、アドレスtが
記載されているファイルを編集します。
sudo gedit /etc/pat/source.list

deb http://ports.ubuntu.com/ubuntu-ports/
deb-src http://ports.ubuntu.com/ubuntu-ports/
となっている箇所を全て下記のように書き換えます。
deb http://old-releases.ubuntu.com/ubuntu/
deb-src http://old-releases.ubuntu.com/ubuntu/

書き換えましたら、パッケージ・リストの取得を
実行してみましょう。
sudo apt-get update
正しく動作しました。「sudo apt-get install」も
試してみましたが、問題なく動作しました。

Nexus7にUbuntu13.04インストール(2)

前回、見事にNexus7へUbuntu13.04を
インストールしようとしたところ、失敗に
おわりました。

ubuntu-nexus7-installerを追加した
リポジトリから取得できなかったので、
別の所から、取得をこころみようと調べてみました。
結果、下記のサイトから取得できそうです!
http://ppa.launchpad.net/ubuntu-nexus7/ubuntu-nexus7-installer/ubuntu/

早速、下記のものをダウンロードします。
①ubuntu-nexus7-installer_1.7~q_all.deb
②android-tools-adb_4.1.1+git20120801-1ubuntu1~4~lucid1_amd64.deb
③android-tools-fastboot_4.1.1+git20120801-1ubuntu1~4~lucid1_amd64.deb

①のubuntu-nexus7-installerをインストールします。
sudo dpkg -i ubuntu-nexus7-installer_1.7~q_all.deb

②のandroid-tools-adbをインストールします。
sudo dpkg -i android-tools-adb_4.1.1+git20120801-1ubuntu1~4~lucid1_amd64.deb

③のandroid-tools-adbをインストールします。
sudo dpkg -i android-tools-fastboot_4.1.1+git20120801-1ubuntu1~4~lucid1_amd64.deb

また、Ubuntuのイメージファイルもダウンロードします。
④ubuntu-13.04-preinstalled-desktop-armhf+nexus7.bootimg
⑤ubuntu-13.04-preinstalled-desktop-armhf+nexus7.img.gz

⑤のubuntu-13.04-preinstalled-desktop-armhf+nexus7.img.gz
ファイルを解凍します。
sudo gunzip ubuntu-13.04-preinstalled-desktop-armhf+nexus7.img.gz

これで、必要なものはそろいました。
早速インストール作業に移ろうと思います。

Nexus7タブレットPCとPCをUSBケーブルでつなげます。
Nexus 7の電源を切った上で,「電源ボタン+ボリュームダウン」を
同時に押して,ブートローダーの画面を表示させます。

Nexus7をアンロックします。
sudo fastboot devices
sudo fastboot oem unlock
sudo fastboot reboot-bootloader

次にUbuntuのイメージファイルを書き込みます。
sudo fastboot erase boot
sudo fastboot erase userdata
sudo fastboot flash boot ubuntu-13.04-preinstalled-desktop-armhf+nexus7.bootimg
sudo fastboot flash userdata ubuntu-13.04-preinstalled-desktop-armhf+nexus7.img
sudo fastboot reboot

これで、Nexus7タブレットPCのUbuntuにインストール完了です。
無事インストールすることができました。

Nexus7にUbuntu13.04インストール(1)

Nexus7にUbuntu13.04がインストールできるという
情報があったので、早速試してみようと思います。

使用したもの
①Nexus7(2012年モデル)
②Ubuntu14.04搭載PC

まずは、Ubuntu搭載PCへ必要なソフトウェアを
インストールします。

下記のコマンドを実行します。
①sudo add-apt-repository ppa:ubuntu-nexus7/ubuntu-nexus7-installer
②sudo apt-get update
③sudo apt-get install ubuntu-nexus7-installer

①のリポジトリの追加は問題なく可能。

②を実施して、サーバーからパッケージリストを
入手すると、「いくつかのインデックスファイルの
ダウンロードに失敗しました。これらは無視されるが、
古いものが代わりに使われます。」とエラーが発生。
もう少し上の行を見ていくと、「404 Not Found」が
見受けられます。ようは存在しないサイトが存在する
という事です。まじですか・・・。

③を実施すると、もちろん「パッケージが
見つかりません」とエラーが発生しました。

出だしを挫かれるとは思いませんでした。
残念・・・・・。
とは言ってもあきらめきれないので、
何とか手段はないかと調べていくと
別の手段で必要なソフトウェアを用意すれば
よいとの事なので、何とか用意していこうと
思います。

Linuxのデーモンについて(2)

前回のLinuxのデーモンのお話の続きで、

今回は、ランレベルとは何なのか?考えていきたいと

思います。

ランレベルとは、Linuxの動作モードです。

0~6の番号があり、Linuxの動作モードが

定義されております。

0:システムを停止するモード
※シャットダウン

1:シングルユーザーモード
※rootがメンテナンスを行うときに利用

2:マルチユーザーモード
※Ubuntuでは、通常「2」を利用

3:マルチユーザーモード

4:マルチユーザーモード

5:マルチユーザーモード

6:システムを再起動を行うモード
※リブート

2~5は同じモードとなっていますが、

上記に示した例は、Debian系のLinuxの

場合のものとなります。

RedHat系Linuxの場合は、2~5のモードは

各々違うモードとなっております。

UbuntuはDebian系のLinuxです。

apacheやhostapdの場合、インストールを

実施すると、2~5のモードがONの状態に

なっているので、2~5のモードをOFFに

する事で、起動時にデーモンが立ち上がらない

ようにする事ができます。

Linuxのデーモンについて(1)

Linuxを使用していると、よくデーモンという

言葉が出てきます。デーモンとはなんなんでしょう?

デーモン(daemon)とは、Linuxを立ち上げた時に

自動で起動して、バックグラウンドで稼動し続ける

プログラムの事を言います。例えば、apacheも

通常デーモンとして動作させています。前回、

お話させて頂いたhostapdやisc-dhcp-serverも

通常デーモンとして動作させます。

下記のコマンドで起動デーモンの確認ができます。

$ps ax

ではでは、動作を停止させる為にはどうしたら

よいのかというと、Ubuntuの場合は、sysv-rc-confを

使用すると便利です。

sysv-rc-confのインストールは下記のコマンドで行います。

$sudo apt-get install sysv-rc-conf

sysv-rc-conf下記コマンドで実行します。

$sudo sysv-rc-conf

ランレベルによって制御されており、チェックボックスを

外すと無効化されます。

それでは、ランレベルとは何なのか、次回お話します。

PCを無線ルーター化(4)(ipforward編)

PCを無線ルーター化(1)~(3)で

無線アクセスポイントの構築~ipのわりふりを

取り組んできました。

PCを無線ルーター化(1),(3)でお話しましたが、

PCを無線ルーター化には、下記の3点の

導入・設定が必要です。

導入・設定したもの
(1)hostapdの導入
(2)isc-dhcp-serverの導入
(3)ipforwardの設定(ufwから設定)

今回は、(3)ipforwardの設定を行い、

インターネットなどのネットワークに

繋げれるようしていきます。

まずは、IPフォワーディングを有効にします。

sudo gedit /etc/default/ufw
下記の内容に変更します。
DEFAULT_FORWARD_POLICY=”ACCEPT”

sudo gedit /etc/ufw/sysctl.conf
下記の内容に変更します。
net/ipv4/ip_forward=1

hostapd、isc-dhcp-serverで構築された
無線アクセスポイントから外部(eth0)に
アクセスできるように設定を行います。
※今回、無線子機をアクセスポイントとして、
 無線子機とは別途LANケーブル(eth0)を
 PCに繋げてあります。
sudo gedit /etc/ufw/before.rules
先頭に以下の記述を追加します。
# nat Table rules
*nat
:POSTROUTING ACCEPT [0:0]
# Forward traffic from eth1 through eth0.
-A POSTROUTING -s 192.168.110.0/24 -o eth0 -j MASQUERADE
# don’t delete the ‘COMMIT’ line or these nat table rules won’t be processed
COMMIT

ufwの再起動を行います。
sudo ufw disable && sudo ufw enable

これで、PCの無線アクセスポイント化(無線ルーター化)の
構築は完了です。

PCを無線ルーター化(3)(dhcp-server編)

PCを無線ルーター化(1)でお話しましたが、

PCを無線ルーター化には、下記の3点の

導入・設定が必要です。

導入・設定したもの
(1)hostapdの導入
(2)isc-dhcp-serverの導入
(3)ipforwardの設定(ufwから設定)

今回からはisc-dhcp-serverの

導入・設定に取り組んでいこうと思います。

(2)isc-dhcp-serverの導入

まずは、isc-dhcp-serverをインストールする前に、
ネットワークの設定をします。
sudo gedit /etc/network/interfaces
下記の内容を追記します。
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.110.1
netmask 255.255.255.0

続いて、isc-dhcp-serverをインストールします。
sudo apt-get install isc-dhcp-server

isc-dhcp-serverの設定ファイルを変更します。
sudo gedit /etc/dhcp/dhcpd.conf
下記の内容をコメント化します。
#option domain-name “example.org”;
#option domain-name-servers ns1.example.org, ns2.example.org;
下記の内容を追記します。
authoritative;
subnet 192.168.110.0 netmask 255.255.255.0 {
range 192.168.110.100 192.168.110.199;
option broadcast-address 192.168.110.255;
default-lease-time 600;
max-lease-time 7200;
option routers 192.168.110.1;
option domain-name “local”;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}

DHCPサーバの起動設定をします。
sudo gedit /etc/default/isc-dhcp-server
下記内容に変更します。
INTERFACES=”wlan0″

DHCPサーバを起動します。
sudo service isc-dhcp-server start
(終了はstop、再起動は、restart)

この状態で、hostapdを起動してみて下さい。

hostapdで無線アクセスポイントが構築され、

isc-dhcp-serverによって、IPアドレスを

わりふる事ができているかと思います。今回の例では、

192.168.110.100~192.168.110.199の

IPアドレスがわりふられると思います。

PCを無線ルーター化(2)(hostapd編)

PCの無線ルータ化 hostapd編の続きです。

前回の内容はコチラから参照できます。

前回、hostapdの動作確認を実施しましたが、

私の場合、残念ながらエラーが発生しました。

その際に実施した対処方法は次の2点になります。

(1)無線機器のソフトブロックの無効化
(2)無線子機の無効化

(1)無線機器のソフトブロックの無効化

まずは、WiFiをOFFの状態にします。
sudo nmcli nm wifi off

次に、無線子機の状態を確認します。
sudo rfkill list
すると、下記のような情報が表示されます。
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no

Soft blocked: yesとなっているので、
このブロックをアンブロックします。
sudo rfkill unblock wifi

また、無線子機の状態を確認してみましょう。
sudo rfkill list
すると、下記のような情報に変更されていればOKです。
0: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no

※Soft blocked: yesは、無線子機が
ディアクティベートされている状態
(再アクティベートできる状態)です。

(2)無線子機の無効化

NetworkManagerで無線子機を管理しないように
設定します。
sudo gedit /etc/NetworkManager/Networkmanager.conf

ファイルが開かれるのの下記の2行を追加して下さい
[Keyfile]
unmanaged-devices=mac:**:**:**:**:**:**
※「*」の部分は、無線子機のMACアドレスを入力して下さい)

PCを再起動させて、hostapdを実行してみます。
sudo hostapd /etc/hostapd/hostapd.conf

下記のようなメッセージが出てきたので、正しく
動作したかと思われます。
Configuration file: /etc/hostapd/hostapd.conf
nl80211:・・・・省略・・・・・
Using interface wlan0 ・・・・省略・・・・・
wlan0: interface state UNINITIALIZED->ENABLED
wlan0: AP-ENABLED

次回は、DHCPサーバーのセットアップです。