打造自己的专属Linux(二):使用脚本实现自动化建立小Linux与命令移植

本文介绍了如何通过6个脚本来实现Linux系统的磁盘分区自动化,包括清除硬盘原有分区,创建三个主分区,并利用函数进行操作。这些脚本能帮助学习者深入理解Linux系统构架和调优,为后续的内核编译奠定基础。建议读者亲自编写这些脚本以提升脚本编写技能。
摘要由CSDN通过智能技术生成

这是我前几天在马哥的带领下写的6个脚本,他们串起来就可以实现(一)篇一所有的功能,很方便吧微笑我们以后要通过不断倒腾这个小linux,来由浅入深的学习linux的系统构架和调优,最后实现编译内核,真正意义上打造自己的Linux,如果你有兴趣,那我一起学习吧微笑强烈建议自己动手写出这六个脚本,对脚本的学习帮助非常大。

这六个脚本其实就是(一)篇的几个步骤组合起来,它们连在一起就可以完全实现(一)篇的目的,六个脚本如下:

一、写一个脚本,实现将一个硬盘中原有分区信息全部删除,并重新将其分为三个区:
1、提示用户指定要操作的磁盘;如果此硬盘中有新区,显示分区信息,并判断此中分区是否仍然处于挂载状态;
   如果是,则显示分区和对应的挂载点;否则,则说明分区没有挂载;
2、提示用户接下来操作会破坏硬盘上的所有数据,并询问用户是否继续进行;形如:Continue(y/N)?
   如果用户选择继续,则抹除此硬盘上的所有分区信息(如果是仍处理挂载状态的分区,则需要先卸载);否则退出;
3、将此硬盘分为三个主分区:
第一个主分区,50M,ext3文件系统
第二个主分区,512M,ext3文件系统
第三个主分区,256M,swap文件系统
要求:上面第2和第3步要求用函数实现;函数执行结束要有返回值;

#!/bin/bash
#the script:rmdisk3.sh

function CH {                                                                             #题目要求的第二个功能
 read -p "WARMING!The next action will clean the DISK!COTINUE?(Y|y.other for quite)" CH
 if [ $CH == 'Y' -o $CH == 'y' ];then
    MOUNT=`mount | grep $1`                                                  #通过grep来抓取mount里的指定磁盘,看是否被挂载
    for i in $MOUNT;do                                                       #用for循环列表来一个一个卸载掉挂载的分区
       i=`mount | grep /dev/sdb | awk '{print $1}'`
       fuser -km $i                                                          #这个命令用于剔除分区里的活动用户保证卸载
       umount $i
       return 0
    done
  else
    exit
  fi
}
function FDISK {                                                 #格式化所选磁盘为3个分区
  dd if=/dev/zero of=$1 bs=512 count=1                           #dd命令比较特殊它是一种特殊的复制   /dev/zero是一个特殊设备用于吐出0,它们组合起来
  partprobe $1                                                   #意思就是给指定磁盘的第0个块输出512个字节0,等于破坏掉他的bootloader和分区信息
echo '                                                           #使用partprobe命令重读下分区,确保格式化顺利进行                                  
n
p
1

+50M
n
p
2

+512M
n
p
3

+256M
t
3
82
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值