天天看点

裁剪Linux系统(Centos7.6)定制自己的Linux系统

作者:码上咖啡馆

注意:这里讲述的是如何定制自己的Linux系统

先看一下现在机器的硬盘情况,可以看到就一块50G的硬盘

裁剪Linux系统(Centos7.6)定制自己的Linux系统

当前机器的硬盘

添加一块硬盘:

裁剪Linux系统(Centos7.6)定制自己的Linux系统

点击硬盘

裁剪Linux系统(Centos7.6)定制自己的Linux系统

选择SCSI

裁剪Linux系统(Centos7.6)定制自己的Linux系统

创建新...

裁剪Linux系统(Centos7.6)定制自己的Linux系统

划分大小

给新划分的磁盘取个名字,好辨认

裁剪Linux系统(Centos7.6)定制自己的Linux系统

给新磁盘取个名字

裁剪Linux系统(Centos7.6)定制自己的Linux系统

点击确定

现在再开机,进行分区,格式化等,关于这块磁盘,分区成两个,一个是boot,一个是它的根分区(对它自己来说)

使用lsblk来看一下硬盘情况,可以看到刚刚新增加的20G的硬盘,作为第二块硬盘(sdb),但是它还没有分区,格式化

裁剪Linux系统(Centos7.6)定制自己的Linux系统

查看硬盘情况

进行分区(fdisk命令),第一块区域给500M(用作boot分区)

裁剪Linux系统(Centos7.6)定制自己的Linux系统

fdisk给磁盘分区

再看一下磁盘情况发现磁盘已经分区好了

裁剪Linux系统(Centos7.6)定制自己的Linux系统

查看新磁盘分区

现在进行格式化:两个分区都格式化成ext4,

裁剪Linux系统(Centos7.6)定制自己的Linux系统

格式化

再进行挂载:目标是在当前的Linux中建立两个目录/mnt/boot和/mnt/sysroot,然后将boot挂载到sdb1分区,将sysroot挂载到sdb2这个分区,图表示如下

裁剪Linux系统(Centos7.6)定制自己的Linux系统

挂载图

看一下要挂载的这两个目录

裁剪Linux系统(Centos7.6)定制自己的Linux系统

目录

将sdb1挂载到boot,sdb2挂载到sysroot:

裁剪Linux系统(Centos7.6)定制自己的Linux系统

挂载命令

现在将Linux本来的磁盘及sda里的引导及其他重要内容拷贝到sdb中去

使用命令grub2-install --root-directory=/mnt /dev/sdb 其中grub2-install命令是用于安装GRUB2引导程序的命令,用于在指定的根目录(一般是挂载的根文件系统)上安装 GRUB2 引导程序;--root-directory=/mnt: 这是一个选项,用于指定 GRUB2 安装的根目录。通常,根目录是 Linux 系统根文件系统的挂载点。在这里,/mnt 是一个例子,表示将 GRUB2 安装到挂载在 /mnt 目录下的根文件系统;/dev/sdb: 这是目标磁盘的设备文件。

裁剪Linux系统(Centos7.6)定制自己的Linux系统

安装grub,内核文件拷贝只目标磁盘

再使用hexdump -C -n 512 /dev/sdb验证一下看有没有装上

裁剪Linux系统(Centos7.6)定制自己的Linux系统

没有报错打出文本信息就是装上了

现在开始拷贝了,使用cp -rf /boot/* /mnt/boot/即将sda的boot里的所有内容拷贝到sdb第一个分区中(拷贝之前最好先将/mnt/boot/下的内容全删掉)

裁剪Linux系统(Centos7.6)定制自己的Linux系统

拷贝

再修改grub2/grub.cfg文件(要在这个文件中指定哪些盘是启动盘,哪些是根目录盘等)

裁剪Linux系统(Centos7.6)定制自己的Linux系统

找到并打开grub.cfg文件

这个文件是直接从sda里拷贝过来的因此里面的信息都是跟sda关联的

裁剪Linux系统(Centos7.6)定制自己的Linux系统

查看磁盘关联

现在要将关联改成现在的磁盘,即下图(下面还有两处没展示出来,具体看修改结果)

裁剪Linux系统(Centos7.6)定制自己的Linux系统

修改关联

修改之后的结果

裁剪Linux系统(Centos7.6)定制自己的Linux系统

修改结果

注意蓝色框,要加上的一句selinux=0 init=/bin/bash表示走自己定制的这条路不要走系统的,到此配置文件修改完成,保存退出!

再创建目标主机(即新增磁盘)根文件系统即拷贝一些重要目录过来(虽然可能不用且是空的,但是得有),即在sdb2中将这些目录都建立起来

裁剪Linux系统(Centos7.6)定制自己的Linux系统

建立重要目录

再把原本linux里lib64的库文件拷贝到sdb2里去cp /lib64/*.* /mnt/sysroot/lib64/

裁剪Linux系统(Centos7.6)定制自己的Linux系统

拷贝库文件

再把shell拷贝过去即cp /bin/bash /mnt/sysroot/bin/

裁剪Linux系统(Centos7.6)定制自己的Linux系统

拷贝shell

到现在,最基本的Linux系统已经有了

现在,可以创建一个新的虚拟机,然后将默认分配的硬盘拿掉,指向我们刚刚创建的磁盘即可

要注意,新增的硬盘对于之前的Linux是第二块磁盘,所以显示的是sdb,但是对于现在新的这个linux来说这个新的磁盘是它的第一块盘,因此它会显示为sda

裁剪Linux系统(Centos7.6)定制自己的Linux系统

新建一个虚拟机

将原来的硬盘拿掉

裁剪Linux系统(Centos7.6)定制自己的Linux系统

移除原来的硬盘

再添加上刚刚创建的新硬盘

裁剪Linux系统(Centos7.6)定制自己的Linux系统

添加硬盘

裁剪Linux系统(Centos7.6)定制自己的Linux系统

SCSI

裁剪Linux系统(Centos7.6)定制自己的Linux系统

使用现有...

裁剪Linux系统(Centos7.6)定制自己的Linux系统

选择

裁剪Linux系统(Centos7.6)定制自己的Linux系统

点击完成确定

现在就可以开机启动

裁剪Linux系统(Centos7.6)定制自己的Linux系统

开机

至此就可以开机,并且看到一个最原始的画面了!!

//在我自己的虚拟机上最后没有起来,先记录到这里,待后面再修改

继续阅读