精簡版的linux操作系統製作
首先在宿主機上增加一塊硬碟利用宿主機把必要的系統文件打造進新增加的硬碟內,然後把做好的硬碟挪到另外一個機器上,利用做好的硬碟來啟動機器.
指令如下:
fdisk -l //找到新增加的硬碟假設為/dev/sdb
fdisk /dev/sdb //創建兩個分區
n //增加
p //主分區
1 //第一個分區
回車鍵 //分區的起始點
100M // 引導分區100M就夠了
a //啟動分區的標誌
1 //第一個分區作為引導分區
n
p //此時主分區或擴展分區都是無所謂的
2 //第二塊硬碟
回車鍵
200M /*完整的linux操作系統一般為10G,根據你安裝的東西多少不同可以自行調整,現在做的是類似於Win PE 的*/
p //查看 不在創建交換分區
w //離開
partprobe /dev/sdb //重新識別分區表
mkfs -t ext3 /dev/sdb1 //格式化為ext3 相當於 新機器上的引導分區
mkfs -t ext3 /dev/sdb2 相當於新機器上的根分區
mkdir /mnt/boot //創建目錄
mkdir /mnt/sysroot
mount /dev/sdb1 /mnt/boot/ //掛載
mount /dev/sdb2 /mnt/sysroot/
ll /boot //查看宿主機上的引導分區都有什麼
grup-install --root-directory=/mnt /dev/sdb
出錯不用管
ll /mnt/boot/ //查看是否有grup
cd /mnt/boot/
cp /boot/vmlinuz-2.6. ./ //copy內核,和宿主機的相同假設為vmlinuz-2.6.
兩個機器的硬體一樣內核一樣驅動也可以直接copy
cp /boot/initrd-2.6. ./ //copy驅動
如果不一樣就需要對initrd-2.6.展開進行增加或減少
展開如下:
cp /boot/initrd-2.6. /tmp/abc //複製到abc
zcat initrd-2.6. |cpio -id
ll //會開到各種目錄 就如一個小的linux系統 自需增該,改動后需重封裝
在此不作更改
cd grub/
vim grub.conf
內容:default=0
timeout=5
title newlinux //newlinux你可以隨便寫
root (hd0 ,0)
kernel /vmlinuz-2.6. ro root=/dev/sda2
initrd /initrd-2.6.
退出保存
cd /mnt/sysroot/
mkdir tmp etc proc sys lib sbin bin usr
chmod o tw tmp/ //更改許可權
cp /sbin/init sbin/
ldd /sbin/init //查看依賴的庫
cd lib/ //相當於新機器下的lib目錄
cp /lib/libsepol.so.1 ./ //copy ldd查到的依賴關係
cp /lib/libselinux.so.1 ./
cp /lib/libc.so.6 ./
cp /lib/libdl.so.2 ./
cp /lib/ld-linux.so.2 ./ //copy你看到的全部依賴關係,先copy到這
which bash //查看bash
cp /bin/bash /mnt/sysroot/bin/
ldd /bin/bash
此處還需要copy你看到的依賴關係,之前copy過的就不用再次copy了
which ls
cp /bin/ls /mnt/sysroot/bin/ //給他指令要不然在新機器上啟動后什麼也做不了
copy的東西都存到了/mnt/sysroot/lib/下
ldd /bin/ls //同上 copy過的就不用再次了
cd ../etc //相當於新機器上的etc
pwd //查看當前目錄 其實為/mnt/sysroot/etc
cp /etc/inittab ./
vin inittab
保留以id和si開頭的兩行 即18和21行 其餘可刪
pwd //現在在/mnt/sysroot/etc
mkdir rc.d
cd rc.d/
vim rc.sysinit
內容為:#!/bin/bash
/bin/bash //是精簡版不需要太多只需給我們啟動個bash
保存退出
chmod 755 rc.sysinit //改變許可權
sync //同步 並且多次執行
新建一個虛擬機,做好后先掛起再把原先的硬碟給刪掉,把我們做的硬碟給加進去,此時宿主機也要先掛起.重新啟動虛擬機
進來以後你此時只能使用ls,別的你都不能用,如果想用就同上面一樣copy你想用的指令.我們做的精簡版系統就和普通版系統一樣,普通版系統沒的東西我們再重新做一份,根據需要來進行改變,現在就做好了一個精簡版的linux系統
本文出自 「春風化雨」 博客,請務必保留此出處http://4476361.blog.51cto.com/4466361/786896
[火星人 ] 創建小的linux操作系統已經有251次圍觀