自制Linux

1. 分区出来两个区

fdisk /dev/sdb

   wKiom1fbrmjxSb2pAAA-dY1iNzo653.png

2. 创建文件系统

  [root@localhost ~]# mkfs.ext4 /dev/sdb1
 [root@localhost ~]# mkfs.ext4 /dev/sdb2

3.创建根目录挂载点

   wKioL1fbrpGzlIscAAAJbS1N_rc904.png

4. 挂载根目录

   wKiom1fbrrbCWVbDAAArM-4I7pk749.png

5. 在根目录创建文件

   wKiom1fbruOApCK7AAAWvKpEcyk264.png

6. 挂载boot引导目录

   wKioL1fbrw-gqB3MAAAwehc0YB8645.png

7. 生成引导文件

   wKiom1fbrz7TwDf8AAAPCo0NYIE006.png

8. 编辑grub.conf

   wKioL1fbr1_gUgPtAABDF6lg9P4602.png

9. 拷贝引导文件

   wKioL1fbr4mTaEiEAAAi67guSYw324.png

10.编辑fstab文件

   wKiom1fbr7rRvUjDAAAmcWJIwqA642.png

11.copy命令脚本

   wKioL1fbr9OB_dRUAACnVu3zlfE128.png

#!/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@localhos

12.重启,把/dev/sdb硬盘 挂载在新电脑中即可。

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

(0)
闹钟哥闹钟哥
上一篇 2016-09-16
下一篇 2016-09-16

相关推荐

  • 配额限制、RAID、LVM

    配置配额系统 在内核中执行以文件系统为单位启用,对不同组或者用户的策略不同; 根据块或者节点进行限制 软限制(soft limit) 硬限制(hard limit) 初始化(/home) 分区挂载选项( /etc/fstab ):usrquota、grpquota 创建数据库: 将selinux调为禁用状态:Permissive quotacheck -cu…

    Linux干货 2017-04-26
  • 话说CentOS6的启动流程

    1.按下开机按钮,电脑的主板通电,电脑开始加电自检(POST,Power On and Self Test),测试主机的硬件是否满足开机的要求. 2.加载主板上的BIOS(Base Input/Output System,基本输入输出系统),BIOS会加载用户设定的第一个可开机设备.,这里我们只说硬盘的加载. 可以按下键盘上的Esc或者是F2或者是Del键,…

    Linux干货 2017-05-14
  • linux内核(kernel)版本号的意义

      在linux下有一个目录,即/usr/src/kernels/目录,下面记载着一个linux系统的内核文件, 例如:2.6.18-164.el5-x86_64、2.6.18-8.el5-x86_64和2.6.18-194.el5-x86_64等,这些文件编号意味着什么呢?例如2.6.18代表着什么?el5代表着什么?x86_64又代表着什么? …

    Linux干货 2016-01-14
  • 高可用keepalived+haproxy实现动静分离

    高可用keepalived+haproxy: 实验环境: clientIP为:172.18.254.149 VIRROUTEIP为:172.18.61.5 keepalived+haproxy机器1IP为172.18.61.1 keepalived+haproxy机器2IP为172.18.61.2 server1IP为172.18.61.3 server2I…

    2017-05-17
  • 使用keepalive实现nginx反向代理高可用

    简介: 在网站架构中,为了分散客户端对服务器的访问压力,可以使用nginx作为反向代理。但是使用一个nginx作为代理服务器必定会面对单点故障的情况,所以一般使用多台nginx反代服务器,而使用多台nginx服务器还要面对如何协调调度的问题。在此,我给大家介绍使用keepalive协调调度nginx反代服务器的方法。   keepalive简介 说…

    2017-05-15
  • Linux终端类型

    Linux中各种终端的解释 设备终端   键盘鼠标显示器 物理终端( /dev/console ) )   在Linux 系统中,计算机显示器通常被称为控制台终端(Console)。 虚拟终端(tty :teletypewriters, /dev/tty# # 为[1-6])   tty 可有n 个,Ctrl+Alt+…

    Linux干货 2016-10-13