linux系统宿主定制之初窥门径

简介:

一、DIY linux系统(虚拟机环境)

平台:

1
2
[root@www /] # uname -a
Linux www.essun.com 2.6.32-431.el6.x86_64  #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

第一步、本机(宿主机)采用最小化安装己安装了Centos6.5,添加一块硬盘/dev/sdb20G

wKioL1MURJ-SFfVHAAFeKsrshyU368.jpg

第二步、将此硬盘分成出两个区,一个作为/boot分区,一个作为/分区。

wKioL1MURUXjAKHgAAJYrBp8ftc123.jpg

第三步、将以上的两个分区格式化成ext4文件系统,并挂载到/mnt/boot,/mnt/sysroot下

wKioL1MURbniUBtMAAH53okLdTY207.jpg

第四步、给此硬盘上的第一个分区安装GRUB,man grub-install

wKioL1MURi_T0iYaAAGowsp-NPA013.jpg

1
2
#安装到指定的磁盘中
[root@www ~]# grub-install --root-directory=/mnt /dev/sdb

wKiom1MURoTgLgH_AAMdeqQZBjM212.jpg

第五步、拷贝kernel、initramfs到/mnt/boot下

wKiom1MUSAzyRNmNAAGigjMfD5I062.jpg

第七步、手写grub.conf文件

wKiom1MUSGCBqlqqAABfBxvMwx4992.jpg

wKiom1MUTS3Dra-RAAGdQMkm_30547.jpg

上图中init=/sbin/init是指初始化所执行的脚本。

第八步、在/mnt/sysroot下创建根(/)目录

wKiom1MUTdnwWxYMAAEuZdgwtKc481.jpg

第九步、移植bash及相关命令到/mnt/sysroot各对应目录下(刚学shell,代码臃肿,望各位看官海涵)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
##############################################
# Author: jinguangping - jingguangping@qq.com
# Last modified:  2014 - 02 - 28  18 : 55
# Filename: movelib.sh
# Description: 完成目录与库文件的复制
##############################################
#!/bin/bash
if_opt () {
directory=`dirname $ 1 `
     filename=`basename $ 1 `
     if  [ -d $des_dir$directory ];then
         cp -R $directory/$filename $des_dir$directory/
     else
         mkdir -p $des_dir$directory
         cp -R $directory/$filename $des_dir$directory/
     fi
}
move_opt(){
for  in  `ldd $comm_dir | grep -o  "/[^[:space:]]\{1,\}*" `; do
     if_opt $i
done
}
des_dir= "/mnt/sysroot"
while  true ; do
read -p  "Enter a command:"  CMD
[ $CMD ==  'quit'  ] &&echo  "input quit"  && exit  4
comm_dir=`which --skip-alias  $CMD`
#echo $comm_dir
if_opt $comm_dir
move_opt $comm_dir
done

至少要复制如下命令:bash,ls.cat,ps,vi,modinfo,insmod,cd,ifconfig,ip,route,lsmod,cp,ping

第十步、拷贝网卡驱动

wKioL1MUUiixWaFyAAB63HGKFww331.jpg

wKiom1MUUl-gxC5lAAErg1PhI1I091.jpg

wKioL1MUUufhnG90AACvmf8I_Ls323.jpg

开机启动网卡(vim /mnt/sysroot/sbin/init)(使用简单的init脚本)

1
2
3
4
5
6
7
8
9
10
#!/bin/bash
echo  -e  "welcome to \033[35mJinGuangPing Style Linux\033[0m"
mount  -n -t proc         /proc    proc
mount  -n -t sysfs        /sys     sysfs
insmod  /lib/modules/2 .9.32-99 /kernel/drivers/net/e1000/e1000 .ko
ifconfig  lo 127.0.0.0 /8
ifconfig  eth0 172.16.251.44 /16
ifconfig  eth0:0 192.168.1.33 /24
route add -net 0.0.0.0 gw 192.168.1.253
/bin/bash

这样就可以连通网络了

第十一步、新建立虚拟机,在选择磁盘时选择

wKiom1MUZpDDoT5qAAEbEKufSek604.jpg

wKiom1MUZqDTwu1hAAByFPGZUf8750.jpg

这里选择之前的硬盘(/dev/sdb)所在的位置,这样就可以开机启动了

wKiom1MUY2ehXSJ6AAH9mDfNK3w276.jpg

wKioL1MUY4OyqiqAAAJeXac6NHc112.jpg

wKiom1MUY8HT6BY-AAJwSmNc2jU088.jpg

=====================================完==================================================










本文转自 jinlinger 51CTO博客,原文链接:http://blog.51cto.com/essun/1367007,如需转载请自行联系原作者
目录
相关文章
|
4天前
|
IDE Linux 开发工具
Linux 系统上安装
在Linux和Mac上安装Lua 5.3.0只需下载源码,解压,编译和安装。Windows用户可选择SciTE IDE或通过LuaForWindows在Github或Google Code下载安装。创建 HelloWorld.lua,使用`lua HelloWorld.lua`运行显示"Hello World!"。另可参考LuaDist官方推荐方式安装。
|
4天前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
4天前
|
Linux Windows
虚拟机添加新硬盘之linux系统篇
虚拟机添加新硬盘之linux系统篇
15 1
|
4天前
|
负载均衡 Linux 应用服务中间件
Linux系统中前后端分离项目部署指南
Linux系统中前后端分离项目部署指南
|
2天前
|
运维 Linux
CentOS系统openssh-9,你会的还只有初级Linux运维工程师的技术吗
CentOS系统openssh-9,你会的还只有初级Linux运维工程师的技术吗
|
3天前
|
监控 JavaScript Linux
Linux系统之部署Homepage个人导航页
【5月更文挑战第13天】Linux系统之部署Homepage个人导航页
21 1
|
4天前
|
监控 JavaScript 网络协议
Linux系统之安装uptime-kuma服务器监控面板
【5月更文挑战第12天】Linux系统之安装uptime-kuma服务器监控面板
14 0
|
4天前
|
Linux Perl
Linux系统的文本处理
Linux系统的文本处理
|
4天前
|
Linux API
Linux系统编程之文件编程常用API回顾和文件编程一般步骤
Linux系统编程之文件编程常用API回顾和文件编程一般步骤
Linux系统编程之文件编程常用API回顾和文件编程一般步骤
|
4天前
|
编解码 Ubuntu Linux