製做一個grub引導的10M大小ttylinuxlinux
1、基於宿主機的liveCDttylinux ;shell
2、基於宿主機的硬盤的ttylinux;vim
3、基於live CD的硬盤安裝ttylinux;(可擴展其它內核的安裝)bash
ttylinux是一個基於2.6版內核、體積很是之小(10M左右的LiveCD)的Linux,其項目地址爲http://minimalinux.org/ttylinux/。它運行於i486以上平臺的PC機上,安裝以後,ttylinux的文件系統也只有12M大小,但卻提供了一個完整的shell環境,而且可用來訪問Internet。
網絡
ttylinux能夠爲嵌入式應用提供一個實用的平臺,也能夠將其安裝於U盤等移動存儲上以提供一個便攜的Linux系統。你甚至還能夠將其安裝在硬盤上。官方提供的ttylinux LiveCD(包括安裝到其它存儲設備上之後的系統)的bootloader是LILO,這對於今天廣泛使用的較大容量硬盤來講,可能會帶來一些替在的問題。本文即用來講明如何將利用官方的ttylinux將其製做爲一個grub引導的LiveCD,以及如何經過簡單的複製將其安裝在硬盤上和如何以「安裝的方式」將其安裝於硬盤。ide
前提:你須要一個Linux宿主機來實現如下過程。本文中採用的是Redhat Enterprise 5,若是您採用的是其它GNU/Linux發行版,某些文件的路徑可能會有所不一樣,請按需修改。oop
1、製做一個基於grub引導的ttylinux LiveCDui
1、建立iso目錄做爲製做LiveCD的根的目錄,並在其中建立grub所需的目錄spa
# mkdir -pv iso/{ttylinux,boot/grub}命令行
2、複製grub可引導的光盤所需的引導程序
# cp /usr/share/grub/i386-redhat/stage2_eltorito iso/boot/grub
說明:若是您須要之後面的第三種方式實現硬盤安裝,上述的命令須要以以下命令替換:
# cp -rv /usr/share/grub/i386-redhat/* iso/boot/grub
3、將下載到的ttylinux iso鏡像文件(這裏在root用戶主目錄中)掛載至某目錄,並拷貝其文件
# mount -o loop /root/ttylinux-i486-9.4.iso /media/cdrom
# cp -rv /media/cdrom/boot/* iso/ttylinux/
4、爲grub創建配置文件
# vim /root/iso/boot/grub/grub.conf
添加以下內容:
default 0
timeout 10
color light-green/black light-magenta/black
title My ttylinux(ttylinux-9-RC1)
root (cd)
kernel /ttylinux/vmlinuz load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=8192 ro root=/dev/ram0
initrd /ttylinux/filesys.gz
5、執行以下命令,建立iso鏡像:
# mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o ttylinux.iso iso
好了,到此爲止一個grub引導的ttylinux LiveCD已經制做完成了。您可使用虛擬機,或刻錄成光盤來引導您的系統了。
2、以相似LiveCD方式運行的基於硬盤(此處亦能夠是U盤)的ttylinux
前提:製做時須基於宿主機進行,事先將硬盤(或U盤)添加至宿主機後啓動宿主機。這裏添加了一塊新IDE硬盤至宿主機。
1、在新硬盤上新建分區做爲boot和ttylinux的分區,先查看新增的硬盤的編號
# fdisk -l
Disk /dev/hda: 42.9 GB, 42949672960 bytes
15 heads, 63 sectors/track, 88768 cylinders
Units = cylinders of 945 * 512 = 483840 bytes
Disk /dev/hda doesn't contain a valid partition table
分區過程略………… 查看分區類型:fdisk –l
接着去格式化新建分區,並掛載至某目錄(這裏爲/mnt/hda1):
# partprobe
# mkfs -t ext3 /dev/hda1
# mkdir /mnt/hda1
# mount /dev/hda1 /mnt/hda1
2、爲新硬盤安裝grub,以使得其之後可自動引導OS
# grub-install --root-directory=/mnt/hda1 /dev/hda
3、將下載到的ttylinux iso鏡像文件(這裏在root用戶主目錄中)掛載至某目錄,並拷貝其文件
# mount -o loop /root/ttylinux-i486-9.4.iso /media/cdrom
# mkdir -v /mnt/hda1/ttylinux
# cp -rv /media/cdrom/boot/* /mnt/hda1/ttylinux/
4、爲grub創建配置文件
# vim /mnt/hda1/boot/grub/grub.conf
添加以下內容:
default 0
timeout 10
color light-green/black yellow/black
title My ttylinux(ttylinux-9-RC1 on harddisk)
root (hd0,0)
kernel /ttylinux/vmlinuz load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=8192 ro root=/dev/ram0
initrd /ttylinux/filesys.gz
5、重啓宿主機,並經過BIOS設置啓動盤爲此塊新IDE硬盤,便可驗正安裝效果。固然,您也能夠把硬盤移至其它x86的主機上進行啓動。
說明:以上兩種方式均基於RAMDisk運行,所以基於系統自己所作的設置等工做在重啓後均會失效。因此,下面將提供一種徹底基於硬盤運行的ttylinux。
3、安裝ttylinux至硬盤
說明:此種方式的實現,須以步驟1中製做完成的LiveCD爲基礎進行。準備好一臺主機,並以製做好的LiveCD啓動之。
1、啓動此係統,進行基於LiveCD的ttylinux,然後對硬盤進行分區。這裏新建了兩個主分區/dev/hda1(100M)和/dev/hda2(5G)並分別掛載於/mnt/hda1和/mnt/hda2中。
分區步驟此處略去……
# mkdir -pv /mnt/hda{1,2}
# mount /dev/hda1 /mnt/hda1
# mount /dev/hda2 /mnt/hda2
2、掛載LiveCD至當前系統,並複製所需文件
# mount /dev/hdc /mnt/cdrom
# cp -r /mnt/cdrom/boot/grub/ /mnt/hda1/
# cp /mnt/cdrom/ttylinux/{vmlinuz,filesys.gz} /mnt/hda1/
說明:此處的/dev/hdc爲光盤對應的設備文件。若是有所不一樣,請用您的實際的設備文件替換此處的/dev/hdc。
3、複製ttylinux系統文件至/dev/hda2
# cp -r /{etc,bin,sbin,var,lib,home,root,usr,dev,tmp} /mnt/hda2
# mkdir /mnt/hda2/{boot,proc,sys,mnt/cdrom}
4、編輯/mnt/hda1/grub/grub.conf,確保其爲如下內容:
default 0
timeout 10
color light-green/black light-magenta/black
title My ttylinux(ttylinux-9-RC1 on Harddisk Final)
root (hd0,0)
kernel /vmlinuz ro root=/dev/hda2
initrd /filesys.gz
5、從新啓動系統,安裝grub至硬盤MBR
在grub的啓動界面按"c"鍵進行grub的命令行模式,然後執行以下命令:
grub> root (hd0,0)
grub> setup (hd0)
6、退出LiveCD光盤,從新啓動系統便可從硬盤啓動ttylinux了。
下面爲補充設置:
7、啓動網絡功能
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
將
ENABLE=no
修改成
ENABLE=yes
然後使用下面命令啓動激活網卡:
# ifup eth0
8、設置root用戶的環境,增長環境變量PS1
# vi /root/.bash_profile
添加以下行:
export PS1='[\u@\h \W]'\#
然後從新讀取該文件
# source /root/.bash_profile
9、修改主機名
# vi /etc/HOSTNAME
修改裏面的字符串爲您所但願的主機名便可。
10、修改/etc/fstab,使用其開機能正常掛載所需文件系統
/dev/hda2 / ext3 defaults 1 1
/dev/hda1 /boot ext3 defaults 1 2
tmpfs /dev tmpfs noauto 0 0
devpts /dev/pts devpts gid=5,mode=0620 0 0
tmpfs /dev/shm tmpfs rw,noexec,nosuid,size=24k 0 0
proc /proc proc noauto 0 0
sysfs /sys sysfs noauto 0 0
------------------------------- 結束符-------------------------------