歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

使用宿主機創建一個簡單的Linux系統

一:原理

每個主機都需要硬盤,操作系統存在於硬盤上,操作系統主要包括內核、庫文件以及應用。在宿主機上新增添一塊硬盤,將內核、庫文件以及應用都放到新增添的硬盤上,最後將該硬盤信息導入新建主機上

二:配置步驟

首先將宿主機上新添一塊硬盤,將該硬盤

1:[root@lyt ~]# fdisk –l         #查看磁盤分區

2:[root@lyt ~]# fdisk /dev/sdb      #將新添加的硬盤進行分區

3:[root@lyt ~]# cat /proc/partitions     #查看新建分區信息是否被讀取

[root@lyt ~]# mkfs -t ext3 /dev/sdb1    #格式化sdb1

[root@lyt ~]# mkfs -t ext3 /dev/sdb2    #格式化sdb2

4:[root@lyt ~]# mkdir /mnt/boot          #在宿主機上為sdb1引導分區創建一個掛載點

[root@lyt ~]# mount /dev/sdb1 /mnt/boot/      #將sdb1掛載到宿主機上

[root@lyt ~]# mkdir /mnt/sysroot         #在宿主機上為sdb2根分區創建一個掛載點

[root@lyt ~]# mount /dev/sdb2 /mnt/sysroot/     #將sdb2掛載到宿主機上

5:[root@lyt ~]# grub-install --root-directory=/mnt/ /dev/sdb    #在/dev/sdb上創建MBR,安裝grub,並將grub菜單的第二段存放在/mnt/boot中

[root@lyt ~]# ll /mnt/boot/                  #查看grub目錄是否創建

6:[root@lyt grub]# cp /boot/vmlinuz-2.6.18-164.el5  /mnt/boot/         #將內核文件拷貝到/mnt/boot中

[root@lyt grub]# cp /boot/initrd-2.6.18-164.el5.img  /mnt/boot/           #將硬件驅動文件拷貝到/mnt/boot中

7:[root@lyt grub]# cd /mnt/boot/               #切換到該目錄下

[root@lyt boot]# vim grub/grub.conf             #在grub目錄中創建菜單文件grub.conf

引入指令:

編輯grub.conf文件:

8:[root@lyt grub]# cd /mnt/sysroot/              #切換到此目錄中,相當於新建主機的根分區

[root@lyt sysroot]# mkdir bin boot dev etc home lib proc root sbin sys tmp usr var       #在/mnt/sysroot/目錄下創建根分區應有的目錄

[root@lyt sysroot]# cd /                #切換到宿主機的根分區

[root@lyt /]# ll                    #查看宿主機的文件權限(tmp目錄比其他目錄多了一個sticky權限)

[root@lyt /]# cd /mnt/sysroot/                #切換到新建主機的根分區下

[root@lyt sysroot]# chmod o+t tmp         #更改tmp的其他用戶的權限

[root@lyt sysroot]# cp /sbin/init sbin/       #將宿主機上的內核啟動的用戶級進程/sbin/init拷貝到/mntsysroot/sbin目錄中

[root@lyt sbin]# ldd /sbin/init                   #查看宿主機內核啟動的用戶級進程init的系統調用

[root@lyt sbin]# cp /lib/libsepol.so.1 /mnt/sysroot/lib/       #將init的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt sbin]# cp /lib/libselinux.so.1 /mnt/sysroot/lib/     #將init的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt sbin]# cp /lib/libc.so.6 /mnt/sysroot/lib/             #將init的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt sbin]# cp /lib/libdl.so.2 /mnt/sysroot/lib/            #將init的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt sbin]# cp /lib/ld-linux.so.2 /mnt/sysroot/lib/       #將init的系統調用拷貝到/mnt/sysroot/lib中

9:[root@lyt etc]# cd /mnt/sysroot/etc/                         #切換到該目錄中

[root@lyt etc]# cp /etc/inittab/ ./                               #將宿主機中的inittab文件拷貝到當前目錄中

[root@lyt etc]# vim inittab                       #編輯inittab文件

10:[root@lyt etc]# mkdir rc.d            #如上圖中所示需要創建創建rc.d目錄

[root@lyt rc.d]# vim rc.sysinit           #創建rc.sysinit文件,並編輯內容如下圖

[root@lyt rc.d]# chmod a+x rc.sysinit    #將rc.sysinit賦予可執行權限

11:[root@lyt ~]# cp /bin/bash /mnt/sysroot/bin/             #將宿主機的/bin/bash拷貝到/mntsysroot/bin中

[root@lyt bin]# ldd /bin/bash             #查看bash的系統調用

[root@lyt bin]# cp /lib/libtermcap.so.2 /mnt/sysroot/lib/     #將bash的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt bin]# cp /lib/libdl.so.2 /mnt/sysroot/lib/              #將bash的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt bin]# cp /lib/libc.so.6 /mnt/sysroot/lib/               #將bash的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt bin]# cp /lib/ld-linux.so.2 /mnt/sysroot/lib/         #將bash的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt bin]# cd /mnt/sysroot/lib/                                 #將bash的系統調用拷貝到/mnt/sysroot/lib中

12:[root@lyt lib]# sync           #將宿主機的內存中的信息同步到硬盤sdb中

新建一台虛擬機,將其硬盤刪除,將剛才在宿主機上建好的硬盤導入到該虛擬機中。

三:測試

系統進入讀秒時間:

系統登錄成功:

四:附加

此時的系統沒有任何指令,如果想使用指令則需要將指令以及系統的相關調用導入新添的硬盤中。這裡以ls指令為例:

1:[root@lyt ~]# cp /bin/ls  /mnt/sysroot/bin/       #將宿主機中的ls指令拷貝到新建主機中

[root@lyt ~]# cp /lib/librt.so.1 /mnt/sysroot/lib/                     #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libacl.so.1 /mnt/sysroot/lib/                   #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libselinux.so.1 /mnt/sysroot/lib/             #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libc.so.6 /mnt/sysroot/lib/                     #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libpthread.so.0 /mnt/sysroot/lib/            #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/ld-linux.so.2 /mnt/sysroot/lib/                #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libattr.so.1 /mnt/sysroot/lib/                  #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libdl.so.2 /mnt/sysroot/lib/                     #將ls的系統調用拷貝到/mnt/sysroot/lib中

[root@lyt ~]# cp /lib/libsepol.so.1 /mnt/sysroot/lib/                #將ls的系統調用拷貝到/mnt/sysroot/lib中

2:[root@lyt ~]# sync                      #將信息同步

測試系統指令導入成功與否:

五:為系統設置登錄界面的圖片

1:[root@lyt grub]# mkdir /mnt/cdrom                                 #建立光盤掛載點

[root@lyt grub]# mount /dev/cdrom /mnt/cdrom/                  #掛載光盤

[root@lyt grub]# cd /mnt/cdrom/Server/                               #切換到該目錄中

[root@lyt Server]# ll gimp**            #查找linux自帶的圖片處理工具gimp

[root@lyt Server]# vim /etc/yum.repos.d/rhel-debuginfo.repo    #編輯yum安裝工具,這裡不使用虛擬化VT、群集Cluster和存儲ClusterStorage,所以不用修改這三項

[root@lyt Server]# yum install gimp         #使用yum安裝gimp

2:[root@lyt Server]# yum install vsftpd-2.0.5-16.el5.i386.rpm    #使用yum安裝ftp服務器

[root@lyt Server]# service vsftpd start        #開啟ftp服務器

如果使用ftp服務器向虛擬機內傳東西,則必須滿足:1:/etc/vsftpd/vsftpd.conf中第27行anon_upload_enable=yes。2:將ftp默認目錄/var/ftp/pub改為可讀可寫

[root@lyt ~]# vim /etc/vsftpd/vsftpd.conf    #編輯ftp服務器配置腳本如下圖

[root@lyt ftp]# chmod a+w pub         #修改ftp的默認目錄/var/ftp/pub權限為可讀可寫

[root@lyt ftp]# service vsftpd restart    #重啟ftp服務器

3:進入圖形界面,找到圖片,用gimp打開

4:在導航“圖像”中,選擇“畫布大小”,修改圖片分辨率

5:在導航“圖像”中選擇“模式”的索引,修改為14

6:選擇保存,將圖片保存為xpm格式

7:[root@lyt ~]# gzip AK-47.xpm     #用gzip將圖片壓縮

[root@lyt ~]# cp AK-47.xpm.gz /mnt/boot/grub/   #將文件拷貝到該目錄下,因為/mnt/boot/grub/grub.conf文件要調用該壓縮圖片

[root@lyt ~]# vim /mnt/boot/grub/grub.conf     #編輯該文件如下圖所示

8:[root@lyt ~]# sync    #同步到硬盤中

測試設置登錄界面是否成功

本文出自 “. . .” 博客,請務必保留此出處http://5503845.blog.51cto.com/5493845/954249

Copyright © Linux教程網 All Rights Reserved