mieki256's diary



2017/02/01(水) [n年前の日記]

#1 [linux] Tiny Core Linuxを触った時のメモ

初期設定関係をメモ。

Frugalについての前提条件。 :

Frugalという仕組みでインストールした場合、何か作業をしても、その状態はメモリ上で持っているだけで、HDDには保存されてないらしい。なので、「現在の状態をHDDに保存せよ」と指示してやる必要がある。

Tiny Core Linux の場合は、以下を実行することで、/home と /opt の内容がHDDに保存される。
filetool.sh -b

あるいは、Exitアイコンをクリックして Shutdown や Reboot を選ぶ際、下のほうで「backup」を選んでおけば、現在の状態を保存してからシャットダウンやリブート(再起動)をしてくれる。
tce_exit_01.png

tce_exit_02.png

何を保存するかは、/opt/.filetool.lst 内で指定されていて、標準状態では home と opt が記述してある。

ということで、何か作業をするたびに、
filetool.sh -b
を実行するよう意識しておくこと、てな感じでいいのかなと。

キーボード配列について。 :

HDDにインストールした直後はキーボード配列が英語配列になってるので、日本語キーボード配列に設定し終わるまでは苦労する。以下のページを参考にしながら作業。

_キーボードUS配列の違いとか - palm84.hatenablog.com
_キーボード。日本語配列と英語配列。 - ツクモゲーム部
_USキーボードと日本のキーボードの違い

「~」の入力で悩んだけど、Shift + 半角/全角、で入力するのか…。

アプリのインストールの仕方。 :

画面下のドック?の中に Apps があるのでクリックして起動。
tce_apps_01.png

最初の実行時は、一番速いミラーサーバを探してくれるので少し待つ。

左上の「Apps」ボタンをクリックしてメニューを表示。Cloud (Remote) → Browse を選択。
tce_apps_02.png

左側に、インストールできるアプリがずらりと並ぶ。
tce_apps_03.png

上の検索欄(Search)に何か打ってEnterを叩けばリストアップされる。インストールしたいアプリ(*.tcz)をクリックして選択。下のほうにある Go ボタンを押せばインストールされる。
tce_apps_04.png

Goボタンの左側で、OnBoot、OnDemand などを選べるが…。
  • OnBoot は起動時からメモリに読み込むように指定。
  • OnDemand は、実行を指示してからメモリに読み込む。

とりあえず、ターミナル上で使える小さなエディタ、nano.tcz でもインストールして、ターミナル上で nano と打って、実行できるか試してみるとか。

ちなみに、nano 使用時、保存は Ctrl+O、終了は Ctrl+X。

起動オプションで日本語キーボード配列等にしてみる。 :

まずは kmaps.tcz をインストール。この中に日本語キーボード配列情報が入ってる、らしい。

/etc/sysconfig/tcedir/boot/extlinux/extlinux.conf を編集。
sudo editor /etc/sysconfig/tcedir/boot/extlinux/extlinux.conf
nanoエディタを使うと、長い行を編集した際に妙なところで改行が入ってしまうので、vi とか vim とか最初から入ってる editor とか、別のエディタを使って編集したほうがいいのかもしれない。ちなみに vi を使うとキーボード配列が英語配列になっているから「:」が入力できなくてハマるけど、英語配列では「Shift + ;」で「:」を入力できるよ。みたいな。

APPEND 行の適当な箇所に、
lang=ja_JP.utf8 tz=JST-9 noutc kmap=qwerty/jp106
だか、
lang=ja_JP.UTF-8 tz=JST-9 noutc kmap=qwerty/jp106
だかを追加。おそらく以下の指定をしている。
  • エンコードを ja_JP.utf8 (ja_JP.UTF-8 ?) に。
  • タイムゾーンを日本時間(JST-9)に。
  • UTCを無効に。
  • キーマップをjp106に。
ja_JP.utf8 と書くべきなのか、ja_JP.UTF-8 と書くべきなのか、どっちが正解なのでしょうか…?

キーボードの英語配列を日本語配列に変更。 :

前述の起動オプションで、キーボードが日本語配列になってるならそれでいいのだけど。xorgとやらで X を表示してる時は、キーボード配列が英語のままになってる時がある。別途設定をしないといけない。

_Xのキーボード設定 - Akionux-wiki

terminal を開いて以下を打ち込めば、とりあえず即座に日本語配列にできる。が、セッションが終わると元に戻ってしまう。
setxkbmap -model jp106 -layout jp,us

起動時から反映させたい時は、
/etc/X11/xorg.conf.d/10-keyboard.conf
を作成して、その中で設定しておけばいいらしい。

cd /etc/X11
sudo mkdir xorg.conf.d
cd xorg.conf.d
sudo nano 10-keyboard.conf
以下を記述。
Section "InputClass"
  Identifier "system-keyboard"
  MatchIsKeyboard "on"
  Option "XkbLayout" "jp,us"
  Option "XkbModel" "jp106"
EndSection

このままだと件のファイルが保存されないらしいので、/opt/.filetool.lst に件のファイルパスを追加して、シャットダウン時等に保存するよう指定する。
nano /opt/.filetool.lst
以下を追加。
etc/X11/xorg.conf.d/10-keyboard.conf
最初のあたりは /etc ではなくて etc から始まること。

filetool.sh -b を実行してバックアップ(保存)。再起動して、キーボードが日本語配列になっていたら成功。

Firefoxのインストール。 :

日本語フォントをWeb経由で入手したいのだけど、そのためにはWebブラウザが必要になるわけで。何かしらをインストールしないと…。

とりあえず、Firefox をインストールすることにする。
  1. Apps で firefox_getLatest.tcz をインストール。
  2. terminal上で firefox_getLatest を実行。Firefoxの最新版がインストールされる。
  3. OnBoot.lst (/etc/sysconfig/tcedir/onboot.lst) に firefox.tcz を追記。
sudo nano /etc/sysconfig/tcedir/onboot.lst
一番最後に、以下を追記。
firefox.tcz

ちなみに、Tiny Core Linux では QtWebという軽量ブラウザもインストールできるので、そちらを使うのも手かも。

_QtWeb - Wikipedia

サイズがめちゃくちゃ小さいのでHDDに優しい。ただ、この QtWeb、2013年頃から開発停止している模様。

Firefox にしろ、QtWeb にしろ、最初は日本語フォントがインストールされてないので、あらゆる文字が豆腐になる。日本語フォントをインストールしないといけない。

日本語フォントをインストール。 :

まずは、zip-unzip.tcz をインストールして、zipファイルを解凍できるようにしておく。

とりあえず、各Linuxの日本語版で一般的によく使われてる Takaoフォント(TakaoFonts_00303.01.zip) を入手してインストールしてみる。ブラウザでアクセスして zip をダウンロード。

_Takao Fonts in Launchpad

mkdir ~/.fonts
unzip TakaoFonts_00303.01.zip
cd TakaoFonts_00303.01
mv *.ttf ~/.fonts
fc-cache -fv
filetool.sh -b
  • unzip を使えば zip ファイルを解凍できる。
  • Linuxでは、ユーザディレクトリ内に ~/.fonts というディレクトリを作って、そこにフォントファイル(.ttf等)を保存しておくのが一般的らしい。
  • fc-cache -fv で、~/.fonts 内のフォントを反映することができる。

表示だけでも日本語化。 :

各アプリのメニューが英語表示なので、できれば日本語表示にしたいわけで。以下のページを参考にしつつ作業。

_Tiny Core(8)ロケール設定|見よう見まねのブログ
_Tiny Core(12)日本語化インストール手順|見よう見まねのブログ

Apps で、以下をインストールしておく。
kmaps.tcz
getlocale.tcz

sudo nano /opt/bootlocal.sh
以下を追記して保存。
loadkmap < /usr/share/kmap/qwerty/jp106.kmap
mkdir -p /usr/lib/locale/

sudo nano /opt/.filetool.lst
以下を追記。
usr/lib/locale

sudo getlocale.sh
ja_JP.UTF-8 を選択して「OK」。

sudo localedef -i ja_JP -f UTF-8 ja_JP.UTF-8
Apps から Maintenance → OnBoard Maintenace で mylocale.tcz が登録されていることを確認してから、再起動。

locale -a
locale
ja_JP.UTF-8 に設定されていることを確認。

画面解像度の変更。 :

Xvesa とやらを使ってデスクトップが表示されている場合は、ControlPanel → Xvesa で設定できる。

が、おそらく xorg を使ってる場合は、該当ツールは使えない。

xrandr と打てば、現在接続されてるディスプレイや画面解像度が表示される。
$ xrandr
Screen 0: minimum 1 x 1, current 1024 x 768, maximum 8192 x 8192
Virtual1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1280x768      60.00 +  59.87
   2560x1600     59.99
   1920x1440     60.00
...
上記の例では、Virtual1 というディスプレイが接続されてる。

以下のように打てば画面解像度を変更できる。
xrandr --output Virtual1 --mode 1152x864
あるいは以下。
xrandr -s 1152x864

X起動直後に変更したいなら、~/.X.d/ 以下にそれらしいスクリプトを書けば処理してくれる。 *1

例えば、~/.X.d/10_resolution.sh というファイルを作成して…。
nano ~/.X.d/10_resolution.sh
以下を書いてみたり。
#!/bin/sh
xrandr -s 1152x864
スクリプトに実行権限をつける。
chmod +x ~/.X.d/10_resolution.sh
これで、X起動直後に画面解像度が変更される。

ただ、Tiny Core Linux は、画面解像度の変更を検知して壁紙サイズまで変更してくれたりはしないので、変更後は見た目がよろしくない。一応、~/.setbackground を実行すると壁紙を再設定するようではあるので、スクリプトの書き方次第でどうにかできるのかもしれないけれど…。

また、画面解像度を変更すると、ドック(wbarと呼ぶらしい)からアプリを起動した際、妙な場所にウインドウが作られてしまう。おそらくドック側が、画面解像度変更前の状態を覚えていて、以前のサイズで調整してウインドウを出してしまうのではないかと。

ちなみに、xorg利用時、lxrandr.tcz をインストールすれば、GUIで画面解像度を変更できるようになる。ただし、再起動すると元に戻ってしまう。

VMwareの共有フォルダ機能を使う :

以下のページを参考にして作業。

_installing Tiny Core Linux 7.2 on Vmware ESXi virtual machine
_VMware tools/Open VM tools problem (x86_64 port)

open-vm-tools と open-vm-tools-desktop をインストール。Xが動いてる状態でインストールすると画面がおかしくなって手が出せなくなるので、もしかするとコンソール(Ctrl+Alt+F1)を表示して、以下を打ち込んでインストールしたほうがいいのかもしれない。
tce-load -wi open-vm-tools
tce-load -wi open-vm-tools-desktop
ちなみに、-w は、ダウンロードの指定で、-i は、OnBootの指定。

_wiki:tce-load - Tiny Core Linux Wiki

どうしてインストール時に画面がおかしくなるのかと言えば…。おそらくだけど、open-vm-tools-desktop をインストールすることで、xvesa から xorg を使ってXを表示するようになるので、そこでおかしくなるのかなと。

運良くインストールできたら、以下を打って再起動。
filetool.sh -b
sudo reboot

共有フォルダを使えるように設定。

~/.profile に以下を追加。
[ $(which vmware-checkvm) ] && [ vmware-checkvm ] && [ -d /mnt/hgfs ] && vmhgfs-fuse /mnt/hgfs
これで、/mnt/hgfs/ 内に、VMware側で設定した共有フォルダが見えるようになる。

クリップボード共有、ウインドウドラッグで画面解像度を変えるための設定。

~/.xsession に以下を追加。
[ $(which vmware-checkvm) ] && [ vmware-checkvm ] && vmware-user &

これで、VMwareのウインドウをドラッグすることで画面解像度が変更できるようになる。

ただ、前述のページ内では、「ドック(wbar)を画面下に置いておくと画面解像度変更時にドックが見えなくなるから、上のほうに配置しておいたほうがいいよ」という話も出ている。wbar の表示位置は、ControlPanel → tcWbarConf で変更できる。

VMware上で動かすと起動時にエラーが出る。 :

起動時、「Host SMBus controller not enabled」というエラーが出る。

これは、i2c_piix4 なるモジュール?を読み込んでるのがよろしくないらしい。

一般的には /etc/modprobe.d/blacklist.conf でブラックリスト登録するらしいが、Tiny Core Linux の場合は該当ファイルを読まないらしい。代わりに、起動オプションで指定するのだとか。

_modprobe blacklist not working

sudo vi /etc/sysconfig/tcedir/boot/extlinux/extlinux.conf
APPEND 行の途中に、以下を追加。
blacklist=i2c_piix4

他にインストールしたアプリ。 :

色々インストールしてみたり。
  • ファイラー : pcmanfm.tcz , pcmanfm-locale.tcz , rox-filer.tcz , xfe.tcz , emelfm2.tcz , emelfm2-locale.tcz
  • ターミナル : lxterminal.tcz , lxterminal-locale.tcz , urxvt.tcz
  • 軽量ブラウザ : QtWeb.tcz
  • エディタ : leafpad.tcz , leafpad-locale.tcz , vim.tcz , vim-locale.tcz
  • プログラミング用エディタ : geany.tcz , geany-locale.tcz , geany-plugins.tcz , geany-plugins-locale.tcz
  • OpenGL動作確認 : glxgears.tcz
  • 画面解像度変更 : lxrandr.tcz , lxrandr-locale.tcz
頻繁に使いそうなものは OnBoot でインストールして、頻繁に使うわけでもなさそうなものは OnDemand でインストール。

色を自由に変更できるターミナルソフトが欲しいのだけど、ちと見当たらず。

標準で入ってるターミナルは、おそらく aterm じゃないかと思うのだけど、これは ttfフォントを指定できないらしい。lxterminal なら ttfフォントも利用できる。が、コレも色を自由に変更できないので…。

日本語フォントを選ぶとアンダーバーが表示されない。 :

Takaoフォントを使うと、アンダーバー? アンダースコア? アンダーライン? ローライン? 正確にはなんと呼ぶのか分からんけど、「_」が表示されないことに気づいた。フォントサイズを11ぐらいにすると表示されるようになるけど、13等にすると表示されない。

ググってみたら、Takaoフォントに限った話ではなく、Xがフォントをレンダリングする基本部分の関係で、他のフォントでも起きてしまう問題なのだとか。

とりあえず、 _VLゴシック をインストールして使ってみたら表示されるようになったけど、これはこれで行間が大きいわけで…。

_Ricty Diminished をインストールしたら表示されるようになった。しばらくコレを使ってみようか…。

起動時間が遅くなった。 :

インストールしたばかりの状態なら数秒で起動したのだけど、色々インストールしていったら起動時間が30秒以上かかるように。うーん。

/homeと/optを圧縮保存しないようにする。 :

通常、filetool.sh -b を実行すると、/home と /opt の内容を圧縮保存するので、例えば /home 内に大量 or 巨大なファイルがあるとシャットダウン時に時間がかかるけど。

HDDにインストールした場合は、起動オプションに
home=sda1 opt=sda1
等を指定することで、/home , /opt の内容を、指定したHDDのパーティションに“圧縮せずに保存”してくれるそうで。

その場合、/opt/.filetool.lst 内から home と opt の記述を削除できるので、シャットダウンする前のバックアップ時、/home と /opt を、毎回圧縮保存しなくて済む ―― シャットダウンが早くなる、らしい。

試してみたところ、たしかにシャットダウンが早くなった。ただ、起動時間はさほど変わらなかった。おそらく .tcz を読み込むところで時間がかかってる、ような気がする。

日本語入力を(一部)可能にする。 :

日本語入力ができない点がちょっと気になったので、以下のページを参考にして試行錯誤してみたり。

_ほぼ素人がTiny Core Linux 7.2の日本語化に挑戦してみた - ネットの片隅で
_Tiny Core 7.0の日本語化|見よう見まねのブログ
_日本語入力 - FunMatrixWiki

Tiny Core Linux 日本語版の中から、日本語入力用の .tcz を持ってくることで、日本語入力ができるようになる、かもしれない、らしいので試してみる。

_Tiny Core Linux 5.1の日本語対応 - PukiWiki の一番下のリンクを頼りに、CorePlus-5.1-ja.iso を入手させてもらう。ただし、.iso のURLが現在は違っている模様。
http://www.asu.ac.jp/hachi/v3/attach/FrontPage/CorePlus-5.1-ja.iso
↓
http://www2.asu.ac.jp/hachi/v3/attach/FrontPage/CorePlus-5.1-ja.iso

CorePlus-5.1-ja.iso を何かでマウントして、/cde/optional/ の中から以下を取り出す。
anthy.tcz
anthy.tcz.md5.txt
libiconv.tcz
libiconv.tcz.md5.txt
mplus-fonts.tcz
mplus-fonts.tcz.dep
mplus-fonts.tcz.md5.txt
scim.tcz
scim.tcz.dep
scim.tcz.md5.txt
scim-anthy.tcz
scim-anthy.tcz.dep
scim-anthy.tcz.md5.txt
これらを、Tiny Core Linux の /mnt/sda1/tce/optional/ 内にコピー。

Tiny Core Linux 4.7.7 や 5.1 の頃は、gtk2.tcz , libxcb.tcz , libpng12.tcz 等も取り出して使ったらしいけど、7.2 でソレをやると(上書きしてしまうと)色々と壊れてしまってターミナルその他が動かなくなったりするので注意。というか、一度そういう状態になってしまって、VMware上でのインストールから全部やり直したり。トホホ。

コピー後は以下の作業をする。

Apps を起動して、Apps → Load App Locally。

scim , scim-anthy , anthy , libiconv , mplus-fonts を、それぞれクリックして選んでから、下のほうにある Load ボタンをクリック。上手くいけば右側に「〜 OK」と表示された、ような気がする。

Apps → Maintenance → OnBoot Maintenance で、左側の一覧の中から、先ほど選んだそれぞれをクリックして Add Item。

これで、起動時にそれぞれが読み込まれるようになった、はず。

さらに、Apps → Cloud (Remote) → Browse で、libffi5.tcz をインストール。

Appsを終了。

~/.profile を編集。startx を呼び出す箇所よりも前のほうで、以下を追加。
export XMODIFIERS=@im=scim
export GTK_IM_MODULE=scim
export  QT_IM_MODULE=scim
# scim -d
export G_FILENAME_ENCODING=@locale
本来は scim -d を実行すべきだけど、これで本当に動くのか確認するために、ひとまずコメントアウトしておく。

バックアップ(filetool.sh -b) をしてからOS再起動。

terminal を開いて、scim -d と打ってみて、何か色々出てきたらインストールはできている、のだろうと思う。自分の環境では以下のような表示になった。
$ scim -d
Smart Common Input Method 1.4.9

Launching a SCIM process with x11...
Loading socket Config module ...
Creating backend ...
Loading x11 FrontEnd module ...
Failed to load x11 FrontEnd module.
Failed to launch SCIM.
何かが失敗(Failed)してるっぽい…。

leafpad というエディタをインストールして起動。半角/全角キーを押すと、右下のほうにIMEツールバーっぽいものが表示されて、日本語入力ができた。

しかし、この状態では QtWeb 等で日本語入力できない。

色々ググってみたけど、Tiny Core Linux 7.x では、今のところ日本語入力は上手くいかないところがあるらしい…。

ちなみに、scim とやらの設定は、scim-setup を実行するとできる模様。

HDDインストール時は5秒待たなくていい。 :

Tiny Core Linux を、HDD or USBメモリにインストールした時は、起動時に5秒ほど待つようになっている。USBメモリが認識されるまでに時間がかかる時があるから、という理由らしい。

しかし、HDDにインストールした際はわざわざ待たなくてもいいので、5秒待つ処理を省くことができる。

_wiki:install_hd - Tiny Core Linux Wiki

/etc/sysconfig/tcedir/boot/extlinux/extlinux.conf を編集して、APPEND行の waitusb=5:UUID="long-number" を削除。これで5秒ほど起動時間を短縮できる。はず。

*1: Tiny Core Linux の場合、~/.xsession の中で、~/.X.d/ 以下にスクリプトがあったら実行するように処理が書かれている。

この記事へのツッコミ

Re: Tiny Core Linuxを触った時のメモ by 名無しさん    2018/02/21 00:02
ごくろうさまでした
https://www.google.com/intl/ja/inputtools/try/
日本語入力ツール

これで、回避してます

以上、1 日分です。

過去ログ表示

Prev - 2017/02 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project