自制Linux系統

自制Linux系統

1.首選準備一臺Linux虛擬機并添加一塊新硬盤

[TU]T5__6KRAT[6RAR6S2RR.png

2.分區并創建文件系統,創建兩個必要的分區根分區和boot分區

fdisk /dev/sdb  分區
mke2fs -t ext4 /dev/sdb1    創建boot文件系統
mke2fs -t ext4 /dev/sdb2    創建根分區

WZQD[H`A4772AKE45QJO)CX.png

Z`7%]@N)]DQ}Z8AMCMLHNQG.png

3.掛載boot分區

VEHV30QA@%0%)6KXYIG}N0X.png

4.在boot分區上安裝grub

S(G~@0W3)O4V8RL2QH)6{~5.png

]0DZW5Q6C0S{7{PLEBYY`_X.png

5.恢復內核和initramfs文件

G8RB@}$H_PH4UJ]Y]NI1~YP.png

6.在grub目錄下手動定義grub.conf配置文件

P%RHQRS~T]M85A3G8S{U)SS.png

7.創建根目錄下的一級目錄

)R~%LRXUU{JL3TEV$AK9IAQ.png

P}`KRWIF5BGUXVZ8S)FM(KM.png

8.復制bash程序相關庫文件以及其他命令程序(ls,pwd,cat,df,free…),腳本如下

[root@CentOS6 ~]# cat copycmd.sh 
#!/bin/bash



 
ch_root="/mnt/sysroot"
[ ! -d $ch_root ] && mkdir $ch_root
 
bincopy() {
    if which $1 &>/dev/null; then

        local cmd_path=`which --skip-alias $1`
        local bin_dir=`dirname $cmd_path`
        [ -d ${ch_root}${bin_dir} ] || mkdir -p ${ch_root}${bin_dir}
        [ -f ${ch_root}${cmd_path} ] || cp $cmd_path ${ch_root}${bin_dir}
        return 0
    else
        echo "Command not found."
        return 1
    fi
}
 
libcopy() {
    local lib_list=$(ldd `which --skip-alias $1` | grep -Eo '/[^[:space:]]+')
    for loop in $lib_list;do
        local lib_dir=`dirname $loop`
        [ -d ${ch_root}${lib_dir} ] || mkdir -p  ${ch_root}${lib_dir}
        [ -f ${ch_root}${loop} ] || cp $loop ${ch_root}${lib_dir}
    done
}
 
 
read -p "Please input a command: " command
 
while [ "$command" != "quit" ];do
    if bincopy $command ;then
        libcopy $command
    fi
    read -p "Please input a command or quit: " command
done
[root@CentOS6 ~]#

9.定義/mnt/sysroot/etc/fstab文件

Y~}ZKXMNITY)J64KZ60YT]B.png

至此,我們的Linux系統就已經制作完成了,接下來創建一個虛擬機測試是否能啟動


1.新建一個虛擬機,將磁盤指向我們自建的Linux系統磁盤

_]Y8[@6{YR%Y5VLS%B_KVAS.png

YP{MRX4O@O[O15I_2]FT}1R.png

2.啟動

[{0(V}MJ)}HGW1M~8)0[L)T.png

V[}V3@`$CPU5VK90NT3@FTS.png

原創文章,作者:zhai796898,如若轉載,請注明出處:http://www.www58058.com/46776

(0)
zhai796898zhai796898
上一篇 2016-09-16
下一篇 2016-09-16

相關推薦

  • keepalived +LVS DR 雙主互備模型實驗

    keepalived +LVS DR 雙主互備模型實驗  實驗環境介紹     操作系統:DR:centos 7.2 兩個節點,都安裝keepalived             &nbsp…

    Linux干貨 2016-03-09
  • linux基礎

    1.計算機的組成及其功能。 計算機的主要組成部分可以歸納為以下五個部分:控制器、運算器、存儲器、輸入設備、和輸出設備。 控制器 是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。 運算器 運算器的功能是對數據進行各種算術運算…

    Linux干貨 2016-08-15
  • mysql主從復制以及擴展

    一、MySQL簡單復制相關概念:    1. mysql復制的意義:Mysql復制是使得mysql完成高性能應用的前提    2. mysql復制的機制:             SLAVE端線程: …

    Linux干貨 2015-12-16
  • LVS的簡介和配置

    lvs分為3種模式 :1:lvs-nat:本質是多目標IP的DNAT,通過將請求報文中的目標地址和目標端口修改為某挑出的RS的RIP和PORT實現轉發(1)RIP和DIP必須在同一個IP網絡,且應該使用私網地址;RS的網關要指向DIP(2)請求報文和響應報文都必須經由Director轉發,Director易于成為系統瓶頸(3)支持端口映射,可修改請求報文的目…

    2017-10-23
  • 用戶及組概念和管理

    用戶和組概念 /etc/passwd文件字段含義 root:x:0:0:root:/root:/bin/bash 用戶名:登陸名,具有唯一性 密碼存放加密用戶的密碼,看到的是一個x,其實已經映射到/etc/shadow文件中 UID:用戶ID GID:組群ID 用戶名全稱:可以不設置 主目錄:用戶登陸系統中首先進入的目錄 登陸Shell:用戶使用shell類…

    Linux干貨 2016-11-04
  • Nginx lnmp環境及https的實現

    一、http事務簡明  request: <method> <URL> <VERSION> MHADERS <body> response: <version><status><reason phrase> <HEADERS> … <body&…

    2016-07-27

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-20 12:39

    從圖可以看出作者很用心,贊一個

欧美性久久久久