あれこれ備忘録@はてなブログ

勉強したことやニュースや出来事を備忘録として書いていきます

このブログには広告が含まれます

古いマシンにXenialDog64をインストールしたら快適だった。Puppy Linux(TahrPup,XenialPup)からの乗り換えにも最適

2016年に販売されたノートパソコンDell Inspiron 1501にXenialDog64をインストールしてみた。

CPUはAMD Turion64 X2が搭載されている。

これはデュアルコアでしかも64bitに対応したCPUなので64bit版のOSがインストールできるのである。

以前、インストールしたときの記事を参考にしてインストールした。

arekorebibouroku.hateblo.jp

とはいうもののちょっと適当にやってしまったために当初、うまく動かなかった。

きちんと書いておく。

インストールし終わった後、GRUBを設定して再起動する。

このマシンは無線LANが内蔵されておらず、さらに使っているUSBの無線LANアダプタがそのままではうまく動かないのでまずインターネットが使えるようにする。

arekorebibouroku.hateblo.jp

Trusty(14.04)用だが、Xenialでも使える以下のパッケージをインストールするととりあえずは使えるようになる。

https://launchpad.net/~hanipouspilot/+archive/ubuntu/rtlwifi/+files/rtl8192cu-dkms_0.2~trusty_all.deb

しかし、そのままでは良く通信が切れたりするので自分で必要なドライバをビルドする。

無線LANをルータに接続する設定をしてインターネットにつながるようにする。

できたら

apt-get update

したあと、

apt-get install dkms

してDKMSをインストールする。

61-DEVX-XenialDog64-2017-01-18.squashfsをcasperディレクトリに置いてあり、起動時に読み込まれていることが前提である。

GitHub - pvaret/rtl8192cu-fixes: Realtek 8192 chipset driver, ported to kernel 3.11.

からソースをダウンロードし、解凍するとrtl8192cu-fixes-masterというディレクトリができる。

dkms add ./rtl8192cu-fixes-master
dkms install 8192cu/1.10

で最適化されたドライバーがインストールされる。

そのあと、元々XenialDogにあり、うまく動かないドライバが読み込まれなくなるように以下の操作をする。

cp ./rtl8192cu-fixes/blacklist-native-rtl8192.conf /etc/modprobe.d/

これでネット通信環境は整った。


2017/11/04 追記

Upgrade-KernelをするとWiFiが使えなくなってしまう。

どうやらlinux-image-genericについては新しいバージョンがあればアップデートするが、linux-headers-genericについてはインストールしてくれないようだ。

これがインストールされないとDKMSを使っている無線LANドライバは使えなくなってしまう。

そこで

/usr/local/bin/upgrade-kernel

の92行目にある。

apt-get install linux-image-generic -y --assume-yes | tee /tmp/aptout

の下に

apt-get install linux-headers-generic -y --assume-yes | tee /tmp/aptout

を追加して、linux-image-genericをインストールしたときにlinux-headers-genericも一緒にインストールされるようにしてみた。


2017/11/23追記

実際にはこれではダメでlinux-image-genericとともにlinux-headers-genericもaptでアップデートされないようにPinを設定しなくてはいけない。

diffを取ってみた。

--- /root/Downloads/upgrade-kernel  2016-11-26 20:58:26.000000000 +0900
+++ /usr/local/bin/upgrade-kernel   2017-11-23 21:26:10.658124229 +0900
@@ -74,6 +74,14 @@
 sed -i "/^.*"linux-image-generic"/,/1001/d" /etc/apt/preferences
 sed -i "/^.*"linux-image-generic"/,/1001/d" /var/lib/synaptic/preferences

+#remove pinned linux-headers
+echo "Remove pinned entries for package linux-headers-*"
+sleep 1
+sed -i "/^.*"linux-headers-$(uname -r)"/,/1001/d" /etc/apt/preferences
+sed -i "/^.*"linux-headers-$(uname -r)"/,/1001/d" /var/lib/synaptic/preferences
+sed -i "/^.*"linux-headers-generic"/,/1001/d" /etc/apt/preferences
+sed -i "/^.*"linux-headers-generic"/,/1001/d" /var/lib/synaptic/preferences
+
 echo OK

 echo "Update the package lists . . ."
@@ -89,7 +97,8 @@
 if [[ "$VERNEWKERNEL" != "$VERUNAME" ]]; then
 apt-get install --reinstall linux-image-generic -y --assume-yes | tee /tmp/aptout
 else
-apt-get install linux-image-generic -y --assume-yes | tee /tmp/aptout
+apt-get install linux-image-generic linux-headers-generic -y --assume-yes | tee /tmp/aptout
 fi
 ret=`echo $PIPESTATUS`
   if [ "$ret" -eq 100 ]; then
@@ -214,6 +223,23 @@
 Pin: version '$VERSION'
 Pin-Priority: 1001
 ' >> /var/lib/synaptic/preferences
+
+# Pin the new version of linux-headers-generic
+echo "Adding new entry (pin) of package 'linux-headers-generic' in preferences files..."
+VERSION=$(dpkg -s linux-headers-generic | grep "Version:" | awk '{ print $2 }')
+echo '
+
+Package: linux-headers-generic
+Pin: version '$VERSION'
+Pin-Priority: 1001
+' >> /etc/apt/preferences
+
+echo '
+
+Package: linux-headers-generic
+Pin: version '$VERSION'
+Pin-Priority: 1001
+' >> /var/lib/synaptic/preferences

 echo "Fixing preferences files... (e.g. required to remove first empty line(s) )"
 # no empty lines allowed at the top of preferences files, delete them

こんな感じで良いと思う。


なお、もっと簡単なのは有線LANに接続する方法だ。

といっても有線ではルータが対応していなくてはいけないし、ルータのそばにいなくてはいけなくて不便だろう。

有線から無線に変換するアダプタがあると便利だ。

また、ルータの有線LANとUSBを接続して使うことができるものもある。

これでインターネットに繋いだ後、色々設定し、そのあとで無線LANが使えるように設定するのが簡単だ。

さて

apt-get dist-upgrade

としてパッケージをアップグレードする。

その後、日本語が表示、入力できるように設定する。

apt-get install fonts-takao

Takaoフォントだけをインストールした。

apt-get install language-pack-ja-base language-pack-ja

このあと、

locale-gen ja_JP.UTF-8
update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
source /etc/default/locale

以下が必要になる場合がある。

apt-get install locales
dpkg-reconfigure locales

うまくいけば、次回起動時、あるいはWindows Managerを再起動するとメニューなどを日本語化される。

ただし、JWMのみ。

しかし、そのままでは日本語フォントが豆腐状態だ。

rootフォルダにある「.jwmrc」で「DejaVu Sans -12」となっている箇所を「Sans -12」に変更するとフォントを削除しなくてもメニューの文字化けは解消される。

キーボードやタイムゾーンの設定はメニューからできる。

日本語入力をするためにfcitxとAnthyをインストールする。

Mozcでも良いがメモリの消費量が大きいので、古いマシンではAnthyの方がおすすめ。

コマンドラインでもできるが、Synapticパッケージマネージャを利用した。

im-configも忘れずインストールする。

起動しなかったので、/etc/X11/xinitディレクトリにxinputrcというファイルがあるので中に

run_im fcitx

と書いて解決したのだが、どうやら

im-config -n fcitx

とすると良いようだ。

また、/root/.profileに以下を追加したほうが良いと思われる。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export QT4_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

しかし、タスクバーにfcitxのアイコンが出てこないので、以下の操作をする。

/etc/apt/preferences
/var/lib/synaptic/preferences

にある

Package: jwm
Pin: version 2.1.0+svn579-2ubuntu1
Pin-Priority: 1001

となっていて、このバージョンのままJWMがアップデートできなくなっている。

このうち、Pin-Priorityの値を100にして

apt upgrade

とすると、一番最初に他のものはアップグレードしているので、JWMのみがアップデートされるはずである。

アップデートされたら、それ以上アップデートされないようにPin-Priorityの値を再び1001へ戻し、バージョンをインストールしたもの(現在は2.3.5-2)に書き換える。

Package: jwm
Pin: version 2.3.5-2
Pin-Priority: 1001

これで再起動すると、JWMのタスクバーにfcitxのアイコンが出ているはずだ。

arekorebibouroku.hateblo.jp

Anthyはそのままでは頭が悪く変換効率が悪いので、辞書を強化する。

今回は上の記事に書かれているもののうち、Google強化辞書をAnthy用に変換したもの顔文字を

~/.anthy/imported_words_default.d/

に置くだけにした。

これだけでもある程度、マシになる。

Firefoxのバージョンが古いのでSynapticパッケージマネージャでfirefox-portableを削除し、firefoxと日本語パッケージのfirefox-locale-jaをインストールする。

また、現在のFirefoxではPulseAudioが必要なので、pulseaudioと音量調節をするpavucontrolもインストールする。

さらにAbemaTVが見られるようにffmpegもインストールすると良いと思う。

そのままではPC起動時にPulseAudioは起動されないので、/root/Startupディレクトリにpulseaudio_start.shを作り、

#!/bin/bash

pulseaudio --start

と書く。

ファイルマネージャーでpulseaudio_start.shに実行権限を加える。

chmod 755 pulseaudio_start.sh

でも良い。

これで一通り設定が終わった。

XenialPupよりもメモリ消費量が少ない。

起動直後で120MB程度である。

Anthyを起動しても150MBくらいか。

Firefoxを起動すると1GB近くになるが、元々のメモリ消費量が少ないので2GBメモリがあれば余裕で動作する。

アプリ起動速度はPuppy Linux系のXenialPupの方が速い場合もある。

起動時にメモリにファイルが読み込まれるからだ。

しかし、Firefoxなどを新たにインストールしている場合、それはディレクトリや個人設定ファイルに保存されるのであまり変わらないだろう。

起動した後は、コアなメモリ消費量が少ないこともあり、かなり動作は軽い。

Puppy Linuxではメモリに限界が来てスワップが生じ、動作が遅くなる状況でも、XenialDogではまだ余裕がある。

とても使いやすい。

また、Puppy Linux系と違って、カーネルがアップグレードできる利点がある。

aptコマンドも使えるし、Synapticパッケージマネージャも使える。

Puppy Linuxではエラーが出るアプリやライブラリも多くがインストール可能だ。

デメリットとしてはやはり、インストール直後に行う設定が少し面倒なことだ。

Puppy Linux系では日本語化するSFSファイルを読み込めば日本語化はすぐにできる。

試してみてPuppy Linuxなど他の軽量Linuxと比べて利点を感じられれば乗り換えを考えてみることもおすすめする。