自制Linux系统实验

1、添加一块新硬盘、并使系统识别

[root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host0/scan 
[root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host1/scan 
[root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host2/scan
[root@centos6 ~]# lsblk
.............
sdc      8:32   0    20G  0 disk

2、分区,格式化

[root@centos6 ~]# fdisk /dev/sdc
[root@centos6 ~]# lsblk 
sdc      8:32   0    20G  0 disk 
├─sdc1   8:33   0 305.9M  0 part 
├─sdc2   8:34   0    10G  0 part 
├─sdc3   8:35   0     1K  0 part (扩展分区)
└─sdc5   8:37   0     2G  0 part 
[root@centos6 ~]# mkfs.ext4 /dev/sdc1
[root@centos6 ~]# mkfs.ext4 /dev/sdc2
[root@centos6 ~]# blkid
/dev/sdc1: UUID="b08d627b-e0ac-4623-9a72-7b9aecfc005e" TYPE="ext4" 
/dev/sdc2: UUID="e80e35d8-d510-4d17-be71-561a3a48cfbb" TYPE="ext4"

3、进行新系统的boot目录制作

[root@centos6 ~]# mkdir /mnt/boot
[root@centos6 ~]# mount /dev/sdc1 /mnt/boot
[root@centos6 ~]# grub-install --root-directory=/mnt /dev/sdc
[root@centos6 ~]# cp /boot/initramfs-2.6.32-642.el6.x86_64.img /mnt/boot/initramfs
[root@centos6 ~]# cp /boot/vmlinuz-2.6.32-642.el6.x86_64 /mnt/boot/vmlinuz
[root@centos6 ~]# ls /mnt/boot/
grub  initramfs  lost+found  vmlinuz
[root@centos6 ~]# vim /mnt/boot/grub/grub.conf
default=0
timeout=5
hiddenmenu
title My Mini Linux
        root (hd0,0) 
        kernel /vmlinuz ro root=/dev/sda2 selinux=0 init=/bin/bash
        initrd /initramfs

4、进行新系统的/目录制作

[root@centos6 ~]# mkdir /mnt/sysroot
[root@centos6 ~]# mount /dev/sdc2 /mnt/sysroot/
[root@centos6 ~]# cd /mnt/sysroot/
[root@centos6 sysroot]# ls
lost+found
[root@centos6 sysroot]# mkdir {bin,boot,dev,etc,home,lib,lib64,proc,root,sbin,sys,usr}
[root@centos6 sysroot]# ls
bin  boot  dev  etc  home  lib  lib64  lost+found  proc  root  sbin  sys  usr
[root@centos6 sysroot]# copycmd.sh bash (自己编写的命令复制脚本)[手动复制时,注意路径和库文件要一并复制]
复制一些常用的命令:echo ls cat cd pwd mkdir touch...
[root@centos6 sysroot]# tree bin
bin
├── bash
├── cat
├── ls
├── mkdir
├── pwd
└── touch
0 directories, 6 files
[root@centos6 sysroot]# tree lib64
lib64
├── ld-linux-x86-64.so.2
├── libacl.so.1
├── libattr.so.1
├── libcap.so.2
├── libc.so.6
├── libdl.so.2
├── libpthread.so.0
├── librt.so.1
├── libselinux.so.1
└── libtinfo.so.5
0 directories, 10 files

5、测试启动

blob.png

blob.png

原创文章,作者:sixijie,如若转载,请注明出处:http://www.178linux.com/46280

(0)
上一篇 2016-09-19 17:14
下一篇 2016-09-19 17:34

相关推荐

  • lvs-nat的实现

    nat的知识点

    2018-03-03
  • Linux基础学习总结(二)

    一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 常用基础命令:cd、pwd、mkdir、touch 查看:cat,more,less,tail,head,tac 复制:cp 移动:mv 删除:rm 创建:touch 元数据属性:stat 查看内容类型:file 二、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及…

    Linux干货 2016-09-24
  • 马哥教育网络班22期第一周课程练习2-未闻花名

    语法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。 参数: -f 代表[变量名称]中为函数名称。 -n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。 -p…

    Linux干货 2016-08-15
  • bash脚本入门之变量、运算、条件测试

    概述     脚本编程能力是作为运维工程师不可或缺的一项基本技能,各种系统的运维,如果完全靠命令行一条一条命令来执行,工作效率可想而知,而脚本却可以将完成一定功能的各个命令依据一定的流程控制,逻辑判断去完成某种功能,提升工作效率。本章就简单介绍一些linux下的bash脚本编程的基础入门知识,具体内容分为以下几个方面:…

    Linux干货 2016-08-12
  • 第六周 N21 总有刁民想害朕

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;    %s/\(^[[:space:]]\)/#\1/ 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub….

    Linux干货 2016-08-08