IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux系统裁剪与定制 -> 正文阅读

[系统运维]Linux系统裁剪与定制

本文以虚机中新加入一块硬盘,安装grub以及/bin/bash程序模拟裁剪系统

新加一块硬盘,提供单独运行的bash系统

新增一块20G硬盘

在这里插入图片描述

创建分区以及文件系统

fdisk /dev/sdb  后进入创建分区并写入

mkfs.ext4 /dev/sdb1  # /boot路径
mkfs.ext4 /dev/sdb2  

在这里插入图片描述

挂载文件系统并制作grub

[root@host70 ~]# mount /dev/sdb1 /mnt/boot
[root@host70 ~]# cd /mnt/boot/
[root@host70 boot]# ls
lost+found
[root@host70 boot]# grub-install -h
Usage: grub-install [OPTION] install_device
Install GRUB on your drive.

  -h, --help              print this message and exit
  -v, --version           print the version information and exit
  --root-directory=DIR    install GRUB images under the directory DIR
                          instead of the root directory
  --grub-shell=FILE       use FILE as the grub shell
  --no-floppy             do not probe any floppy drive
  --force-lba             force GRUB to use LBA mode even for a buggy
                          BIOS
  --recheck               probe a device map even if it already exists
                          This flag is unreliable and its use is
                          strongly discouraged.

INSTALL_DEVICE can be a GRUB device name or a system device filename.

grub-install copies GRUB images into the DIR/boot directory specfied by
--root-directory, and uses the grub shell to install grub into the boot
sector.

Report bugs to <bug-grub@gnu.org>.
[root@host70 boot]# grub-install --root-directory=/mnt/ /dev/sdb
Probing devices to guess BIOS drives. This may take a long time.
Installation finished. No error reported.
This is the contents of the device map /mnt//boot/grub/device.map.
Check if this is correct or not. If any of the lines is incorrect,
fix it and re-run the script `grub-install'.

(fd0)   /dev/fd0
(hd0)   /dev/sda
(hd1)   /dev/sdb

# 上传 内核文件和init至/mnt/boot下
# 上传 grub.conf文件t至/mnt/boot/grub下,并修改grub参数
#boot=/dev/sda
default=0
timeout=5
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
        root (hd1,0)
        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/sdb2 selinux=0  init=/bin/bash
        initrd /initramfs-2.6.32-431.el6.x86_64.img

制作/bin/bash

[root@host70 boot]# mount /dev/sdb2 /mnt/sysroot/
[root@host70 boot]# ls
grub  initramfs-2.6.32-431.el6.x86_64.img  lost+found  vmlinuz-2.6.32-431.el6.x86_64
[root@host70 boot]# cd /mnt/sysroot/

[root@host70 sysroot]# mkdir bin boot dev etc home lib lib64  media mnt opt proc root sbin selinux srv sys tmp usr var
[root@host70 sysroot]# which /bin/bash
/bin/bash
[root@host70 sysroot]# cp /bin/bash /mnt/sysroot/bin/
# 将/bin/bash 所依赖的库文件拷贝
[root@host70 sysroot]# ldd /bin/bash
        linux-vdso.so.1 =>  (0x00007fffc2ce0000)
        libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f9eba33e000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f9eba13a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f9eb9da5000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9eba567000)
[root@host70 sysroot]# cp /lib64/libtinfo.so.5 /lib64/libdl.so.2 /lib64/libc.so.6 /lib64/ld-linux-x86-64.so.2 /mnt/sysroot/lib64
[root@host70 sysroot]# sync
[root@host70 bin]# chroot /mnt/sysroot/
bash-4.1#
# 正常进入Bash

在现有VM中以第二块硬盘加载/bin/bash系统

# grub.conf 中的参考 
#
default=0
timeout=5
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
        root (hd1,0) #表示第二块硬盘的第一个分区
        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/sdb2 selinux=0  init=/bin/bash  # 第一个分区sdb1为boot 第二个分区sdb2为根目录
        initrd /initramfs-2.6.32-431.el6.x86_64.img

正常进入

在这里插入图片描述

模拟硬盘拆下来后插到一个新的机器上

1)还原至正常系统,进入grub命令行界面,输入如下命令

root (hd0,0)
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/vg_host70-lv_root  selinx=0
initrd /initramfs-2.6.32-431.el6.x86_64.img
boot

2) 修改grub.conf 文件

在这里插入图片描述

3)新建一个VM,硬盘为上图中的disk 载入系统即可

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-21 21:35:42  更:2022-03-21 21:38:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 0:22:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码