SlideShare a Scribd company logo
無印Pentiumマシン
Debian Installの記録
かごしまLinux勉強会-第02回
2014/06/28(Sat)
サンエールかごしま 4F 中研修室 3
2014/6/28 1
自己紹介
2014/6/28 2
吉本工業
ETロボコン
準優勝 (^ ^)v
Yukiyoshi yoshimoto
geckosjp
• 石川県小松市出身
• 1966年8月生まれ(A型、乙女座)
• 高校卒業後上京⇒福岡⇒鹿児島
• 組み込みエンジニア(自称)
• 1995年Slackwareと出会う。
2013
※イメージ
目標!
2014/6/28 3
• 古い無印PentiumをLinuxで活用!
• Lowスペックマシンに現行Debianを入れる!
– 課題:現行ディストリではスペックが低すぎて
インストラーが対応していない!(T T)
• Kernelは3.0系にする!
• X Window Systemは諦める!
– 理由:昔、動かしていたけど実用的で無い!
• jfbtermでCUI端末化を目指す!
当然、日本語対応!
そんなこと、何の意味があるの?
何故DebianをInstallするのか?
2014/6/28 4
有効活用
そこに山があるから
意 地
無印Pentiumマシンの諸言
2014/6/28 5
2000年頃、中古を鹿児島のアプライドで購入。
(確か19,800-で購入)
DebianをInstallするマシン
2014/6/28 6
• 2000年頃、中古を鹿児島
のアプライドで購入。
(確か19,800-で購入)
• 2年位我が家でルーター兼
サーバーとして稼働
• 元々搭載されていたHDD
は小容量なので10G品に
換装済
• Ethernet無しモデルだった
ので、PCMCIAスロットに
Ethernetカードを装着
• 持ち運ぶのには重い
(3.2kg)
• RAMは増設済で合計
32MB搭載
DebianをInstallするマシン
2014/6/28 7
あしたのための その1
• 現行Debianのインストーラーは多くのリソースを
消費する!
– 「通常のインストールを行うには、少なくとも 80MB の
RAM と 580MB のハードディスク領域が必要です。」
(出展:Debian GNU/Linux インストールガイド)
• 今回のターゲットマシンの搭載RAMは32MB!
2014/6/28 8
インストーラの壁!
★ HDDを外して他のPCにて「debootstrap」を使ってシステム構築!!
あしたのための その2
• マシンが古いのでHDD容量に制約あり。
• 過去に512MB、2GBの壁もあったが、BIOSの制
約でターゲットマシンにも8GB制約あり!
– 搭載するHDDは10GB!
昔、Ontrackってソフトで8GB問題を解決できていたが、
もう手元に残っていない。orz
2014/6/28 9
8GBの壁!
★ GRUBを用いたBootシステムの採用!
あしたのための その3
• 現行のインストーラは「initrd」システムを採用している!
• Debian 7.0(wheezy)のkernelパッケージに含まれるinitrdは圧縮状態で約10MB、
伸張して約24MB!
• Boot時にはkernelイメージとinitrdイメージをRAM読み込み、更にinitrdをRAMDISK
上に展開するので、その分RAMが必要。
なので・・・
Unpacking initramfs...
Kernel panic - not syncing: Out of memory and no killable processes...
となる!
2014/6/28 10
RAM容量の壁!
★ initrdを使わないkernelをbuildする必要あり!
2014/6/28 11
Kernelのビルド
tar Jxf linux-3.2.57.tar.xz
<中略>
cd linux-3.2.57
make menuconfig
<中略>
make-kpkg --revision=1.0 --rootcmd=fakeroot kernel-image
<中略>
エラーが発生しなければ、このファイルが出来上がる♪
../linux-image-3.2.57_1.0_i386.deb
← ここ超重要!!
Kernelのオプションは超重要です。
Initirdを使わなくするオプションは必須ですが、その他、最新のカーネルの標準
オプションでは今回のマシンに全然マッチしていない!
全部見直しの必要あり!! (トホホ・・・)
Let’s Try!
2014/6/28 12
パーテーションの設定
fdisk /dev/sdc
Command (m for help): p
Disk /dev/sdc: 10.1 GB, 10056130560 bytes
64 heads, 32 sectors/track, 9590 cylinders, total 19640880 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdc1 2048 18876415 9437184 83 Linux
/dev/sdc2 18876416 19640879 382232 82 Linux swap / Solaris
Command (m for help):
ここからは既に稼働しているマシンにHDDを接続!
Let’s Try!
2014/6/28 13
rootのFSを作る
mkfs -t ext4 /dev/sdc1
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
589824 inodes, 2359296 blocks
117964 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2415919104
72 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
Swapを作る
mkswap /dev/sdc2
Setting up swapspace version 1, size = 382228 KiB
no label, UUID=bb1f500a-aa15-41a5-b797-c2c075d125df
mount
mount /dev/sdc1 /mnt
Let’s Try!
2014/6/28 14
システムイメージ展開
debootstrap --arch i386 wheezy /mnt http://ftp2.jp.debian.org/debian/
設定ファイル編集
vi /mnt/etc/inittab
vi /mnt/etc/apt/sources.list
vi /mnt/etc/securetty
vi /mnt/etc/fstab
vi /mnt/etc/passwd ← 最初設定し忘れて、bootとはしたけどlogin出来ない状態に…
Kernelイメージのインストール
chroot /mnt
Dpkg -i linux-image-3.2.57_1.0_i386.deb
このkernelはinitrdを使わない
野良ビルドしたkernel
Let’s Try!
2014/6/28 15
Grub2のインストールとブートセクターへの書込み
apt-get install grub2
grub-install --boot-directory=/mnt/boot /dev/sdc
Installation finished. No error reported. ← (^ ^)v
再起動♪
HDDをターゲットマシンに装着する
Let’s Try!
2014/6/28 16
本当は起動するまで色々とありましたが、
必死だったので何をどうしたか覚えてない… orz
無事GRUB起動!
(パチパチ)
Kernelイメージの読み込みとboot!
grub> linux /boot/vmlinuz-3.2.57 root=/dev/hda0 ro console=ttyS0,9600n8r
grub> boot
Let’s Try!
2014/6/28 17
List of all partitions:
[ 1.746265] No filesystem could mount root, tried:
[ 1.752750] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
うぁぁぁぁぁぁぁ…
Ext4のドライバをモジュールでコンパイルしてた… orz
その他、いろんなことがありました・・・
さっさとまとめておけば良かったのに・・・
もう忘れた・・・ orz
そして、ついに!
Let’s Try!
2014/6/28 18
今後の課題
• なんと言ってもネットワークに繋ぎたい!
本体にLANポートが内蔵されていない。
だ・か・ら・・・
• PCMCIAの活用
昔はpcmcia-csを入れるのが定番だったが、
今はkernelが面倒見てくれるのだとか・・・
一応、オプションを有効にしてビルドしたのだ
がイマイチうまくいっていないっぽい。
• jfbterm
フレームバッファさえ動けば何とかなると、
軽く思っているので一番最後。
2014/6/28 19
USBも無いのでファイルの受け渡しが面倒・・・

More Related Content

PDF
ML Studio / CNTK ハンズオン資料の紹介と開発環境の構築手順
PDF
S2s websrv201011-presen
PDF
エンジニアのための痔の話
PDF
Lxc で始めるケチケチ仮想化生活?!
PDF
20110630 eucalyptus habuka036
PDF
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
PDF
Cocoa勉強会#62-新しい通信クラス群NSURLSessionを使ってみる
PDF
2011-11-19 OSC 2011 Tokyo Fall Eucalyptus LiveDVD
ML Studio / CNTK ハンズオン資料の紹介と開発環境の構築手順
S2s websrv201011-presen
エンジニアのための痔の話
Lxc で始めるケチケチ仮想化生活?!
20110630 eucalyptus habuka036
Ubuntuとコンテナ技術 What is LXD? and Why? 2015-12-08
Cocoa勉強会#62-新しい通信クラス群NSURLSessionを使ってみる
2011-11-19 OSC 2011 Tokyo Fall Eucalyptus LiveDVD

What's hot (20)

PDF
多段LXC構成でOpenStackを構築 - LT@コンテナ型仮想化情報交換会LT
PDF
LXC入門 - Osc2011 nagoya
PDF
今時のチープなノートPC HP Stream 11でXubuntuを動かす
PDF
Xen Nic
PPTX
どこでもICT強化教室にするポータブルクラウドとそれを使った授業の実際
PDF
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
PDF
初心者がOpenIndianaで自宅サーバを作ったよって話
PPTX
ワンライナーでFreeBSDをインストールする
PDF
openSUSEの紹介とサーバ構築
PDF
Eucalyptus on OpenStack
PPTX
Windows Azure 公開模試
PDF
自分色のLinuxホームサーバーを作ってみよう
ODP
自宅サーバ仮想化
PDF
VMwareで手っ取り早く社内システムをHAサーバ化してみました (bpstudy#38)
PDF
KVM+cgroup
PDF
Eucalyptus 2.0 始めました!
PDF
PXE @第一回成果報告会(2012/12/17)
PDF
ASPLOS2017: Building Durable Transactions with Decoupling for Persistent Memory
PDF
ノーゲーム・ノーライフ[Games on Linux] - Kernel/VM北陸1
PDF
【FGDC勉強会vol.4】ぶっちゃけます!Azureのいいとこわるいとこ【ライトニングトーク】
多段LXC構成でOpenStackを構築 - LT@コンテナ型仮想化情報交換会LT
LXC入門 - Osc2011 nagoya
今時のチープなノートPC HP Stream 11でXubuntuを動かす
Xen Nic
どこでもICT強化教室にするポータブルクラウドとそれを使った授業の実際
“bcache”を使ってSSDの速さと HDDの大容量のいいとこどり 2015-12-12
初心者がOpenIndianaで自宅サーバを作ったよって話
ワンライナーでFreeBSDをインストールする
openSUSEの紹介とサーバ構築
Eucalyptus on OpenStack
Windows Azure 公開模試
自分色のLinuxホームサーバーを作ってみよう
自宅サーバ仮想化
VMwareで手っ取り早く社内システムをHAサーバ化してみました (bpstudy#38)
KVM+cgroup
Eucalyptus 2.0 始めました!
PXE @第一回成果報告会(2012/12/17)
ASPLOS2017: Building Durable Transactions with Decoupling for Persistent Memory
ノーゲーム・ノーライフ[Games on Linux] - Kernel/VM北陸1
【FGDC勉強会vol.4】ぶっちゃけます!Azureのいいとこわるいとこ【ライトニングトーク】
Ad

Similar to 無印Pentium debian install memo (20)

PDF
Yocto Project ハンズオン / 参加者用資料
PDF
IaaSクラウドを支える基礎技術 演習編_v1_0
PDF
Ubuntuで始めるコンテナ技術入門
PDF
Fukuoka debianstudy02 / 福岡Debian勉強会 02
PDF
私とOSSの25年
PDF
OpenNebula on Ubuntu
PPT
PDF
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
PDF
Androidクラウドブック DynabookAZでLinuxを色々と遊んでみよう
PDF
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PPTX
Osoljp201204
PDF
Lxc cf201207-presen
PDF
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
PPTX
Linux kernelのbspとupstream
PPTX
45分で理解するKubernetesの世界
PPTX
2012 0623-x-road-tokyo-xoops-x(ten)
PDF
XenServerによるお手軽開発サーバ運用
PDF
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
PDF
Linuxのユーザーランドをinitから全てまるごとgolangで書く
PPTX
Snapdragon-SCORER
Yocto Project ハンズオン / 参加者用資料
IaaSクラウドを支える基礎技術 演習編_v1_0
Ubuntuで始めるコンテナ技術入門
Fukuoka debianstudy02 / 福岡Debian勉強会 02
私とOSSの25年
OpenNebula on Ubuntu
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
Androidクラウドブック DynabookAZでLinuxを色々と遊んでみよう
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Osoljp201204
Lxc cf201207-presen
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
Linux kernelのbspとupstream
45分で理解するKubernetesの世界
2012 0623-x-road-tokyo-xoops-x(ten)
XenServerによるお手軽開発サーバ運用
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
Linuxのユーザーランドをinitから全てまるごとgolangで書く
Snapdragon-SCORER
Ad

無印Pentium debian install memo