32bit PCにインストールできるLinuxを探す

最近、Windowsを使用していることが多く、Linuxを使用することが少なかったため、また、Linuxを使用することにしました。使用していない32bit PCがあったので、この32bit PCを使用してみることにしました。CPUは1.86GHz、メモリは1GB、HDDはSDD64GBです。現在のPCと比べてると非力です。非力なので、どういう使い道にしようか考えたところ、アセンブリ言語のプログラミングに使用することにしました。

32bit PCにインストールできるLinuxのディストリビューションを探したところ、下記のようなディストリビューションがありました。

  • Lubuntu
  • Xubuntu
  • Linux Mint
  • Kali Linux
  • Debian

他にも、32bit PCにインストールできるディストリビューションはあると思いますが、こちらから選ぶことにしました。

まずは、ハードウェアのスペックです。ハードウェアのスペックで考えると、少々Kali Linuxは分が悪いです。メモリ1GBで動作しますが、1GBだと少々物足りないです。そのため、Kali Linuxは候補から外しました。そうなると候補は下記のようになります。

  • Lubuntu
  • Xubuntu
  • Linux Mint
  • Debian

この中から最初は、Lubuntu を選択しました。以前使用していたこともあり実績もあったので、導入しやすかったからです。しかし、調べていくと、Lubuntu は、18.04(LTS)が32bit OSとしては、最終版となっています。サポートも2021年の1月までです。現在のPCはだいたい64bit PCであるので、時代の流れを考えると、そうなってしまいますよね。ということで、各ディストリビューションのサポート期限を調べることにしました。Xubuntuは、Lubuntuと同じでした。Linux Mintは、19.3までは32bit版が存在しており、サポートも2023年4月と長いです。しかし、バージョン20 からは、64bit版のみになっております。最後に残ったのが、Debianです。Debianは最新のバージョンでも32bit OSをサポートしています。サポート期間も2024年です。

他にもいろいろと調べてみましたが、サポート期間の長さを考え、今回はDebianを使用することにしました。今回、Linuxを使用しようとした目的として、センブリ言語のプログラミングを考えております。アセンブリ言語を使用したプログラミングに関しては、下記のサイトに記載していく予定です。

プログラミングのあれこれ
https://progtech.device-mobile.com

2020年7月23日 | カテゴリー : Linux | タグ : , | 投稿者 : net_sec

Kali Linux(1)-Kali Linuxについて

Kali Linuxは、ぺネストレーションテスト用の機能などが含まれているLinuxのディストリビューションです。ぺネストレーションテストは、システムに脆弱性がないかどうかをテストする方法です。Kali Linuxには、多くのぺネストレーション用のプログラムが最初からインストールされています。

Kali Linuxは以前少し使用したことがあったのですが、Ubuntuを使うことが多かったのです。Ubuntuの方が書籍も多いですし、Windowsからの置き換えとしても使いやすかったからです。それでは、なぜ、Kali Linuxを使用してみたいなと思ったかというと、セキュリティについて学べるものがあるのではないかと思ったからです。学べるといっても、やはり基礎知識になってしまうかもしれませんが、すこしでも身につけていければと思います。

Kali Linuxは下記のサイトからダウンロードできます。
https://www.kali.org/

久々にKali Linuxのサイトを訪れてみると、Kali Linux NetHunterというものがありました。何かな?と思い覗いてみるとAndroidのカスタムROMの用です。ちょっとこちらも気になるので、動作させてみたいと思います。インストール方法は下記のページを参照して下さい。

Kali Linux(2)-Kali Linux NetHunterのインストール

Kali Linuxについては、下記のサイトに記載していこうと思います。
プログラミングのあれこれ

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の無線アクセスポイント化(無線ルーター化)の
構築は完了です。