自制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

相关推荐

  • Linux文件查看和管理类命令

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

    2018-03-17
  • 系统启动和内核管理

    Linux组成 Linux:kernel+rootfs kernel:进程管理、内存管理、网络管理、驱动程序、文件系统、安全功能 rootfs:程序和glibc 库:函数集合,function,调用接口(头文件负责描述) 过程调用:procedure,无返回值; 函数调用:function;有返回值,可以赋值于变量中; 程序:二进制执行文件 包括根目录以及包…

    Linux干货 2017-05-14
  • Linux系统修复

    在boot里面我们可以根据自己的需求去设置一些启动选项,我们今天来了解一下Linux启动流程,以及boot下的选项。       加载BIOS的硬件信息,获取第一个启动设备。 读取第一个启动设备MBR的引导加载程序(grub)的启动信息 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备。 核型执行init程序…

    Linux干货 2016-09-13
  • net25-第14周作业

    系统的INPUT和OUTPUT默认策略为DROP; ~]# iptables -P INPUT DROP ~]# iptables -P OUTPUT DROP 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问;web服务器仅允许响应报文离开本机; ~]#iptables -…

    Linux干货 2017-05-15
  • bash 循环和函数

    回顾: 循环 循环控制:break,continuewhile , for循环的特殊用法for (());do     循环体donewhile read VARAIBLE;do     循环体done <&nbs…

    Linux干货 2016-08-24
  • 第一周 N28

    作业一

    2017-12-03