自制LIVE ISO镜像系统内置分区挂载脚本
这个就是用来倒腾的,只在虚拟机中实验过,可以预先安装 VM虚拟 docker ,可以用来跑测试,跑服务等
预装:不建议安装ssh 只安装 VM虚拟 docker 就可以
注意事项:应为是内存系统,不要把大文件保存到桌面,可以使用SMB,参考附件中的OK-MONUT_bakc
制作镜像的教程这里就不在讲了 https://bbs.deepin.org/zh/post/240485 ,内核也可以替换ISO里面的需要改下名字和原来镜像里一样就可以
附件下载 附件.zip
假设这个分区挂载脚本叫做 OK-MONUT 需要配合桌面启动器文件使用,在附件有简单说
下面说一下这个挂载脚本的制作过程
为了容易获取UUID建议在分配分区时,候使用 GParted 设置卷标 分区选择exit4,卷标不能是中文否则会乱码
核心命令 blkid 这个需要管理员权限
sudo blkid
命令执行结构类似这样,一共有6段
第一段:硬盘设备 第二段:卷标 第三段:UUID 我们只需要用到这3段
/dev/sdc1: LABEL="docker" UUID="xxx" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="fecb337e-01"
获取硬盘设备 用于遍历卸载挂载分区的脚本
#一般机械 sudo blkid | grep "/dev/sd" | awk '{print $1}' | sed 's/://g' #输出类似 /dev/sdc1 #一般是固态 sudo blkid | grep "/dev/nvme" | awk '{print $1}' | sed 's/://g' /dev/nvme0n1p1
使用卷标过滤匹配UUID 来挂载分区,docker是卷标
sudo blkid | grep "docker" | awk '{print $3}'|grep -oP '(?<=")[^"]*' #实例使用 sudo rm -rf /var/lib/docker/* MYDocker=`sudo blkid | grep "docker" | awk '{print $3}'|grep -oP '(?<=")[^"]*'` echo "UUID=${MYDocker} /var/lib/docker ext4 defaults 0 2"|sudo tee -a /etc/fstab > /dev/null 2>&1 sudo mount -a
最终脚本OK-MONUT
#!/bin/bash #----------------------------- # 在mint无法使用开机脚步也就是当前脚本启动docker,其他系统未知 # 为了容易获取UUID建议在分配分区时,候使用 GParted 设置卷标 分区选择exit4 # 卷标不能是中文否则会乱码 #----------------------------- # 自动响应sudo密码 # key 的直是密码 #----------------------------- key='C(zK_X9XIo0Qb5!qD0a4dS9pqnt(q84A' shijian=`date +%Y年%m月%d日%H:%M:%S` echo "${key}" | sudo -S $shijian > /dev/null 2>&1 #预处理 MY_OK_MONUT="/tmp/MY_OK_MONUT" sudo rm -rf ${MY_OK_MONUT} mkdir -p ${MY_OK_MONUT} #docker的一些配置文件,执行sudo systemctl restart docker会重新生成 sudo rm -rf /var/lib/docker/* #----------------------------- # 导出硬盘设备名字 # SATA nvme #----------------------------- sudo blkid | grep "/dev/sd" | awk '{print $1}' | sed 's/://g' > ${MY_OK_MONUT}/SATA.log sudo blkid | grep "/dev/nvme" | awk '{print $1}' | sed 's/://g' > ${MY_OK_MONUT}/nvme.log #----------------------------- # 遍历卸载 机械硬盘的脚本 #----------------------------- MYSATA(){ filename="${MY_OK_MONUT}/SATA.log" while IFS= read -r line do echo "umount $line" >> ${MY_OK_MONUT}/SATA.log.x done < "$filename" sed '1i\#!/bin/bash' ${MY_OK_MONUT}/SATA.log.x > ${MY_OK_MONUT}/SATA.log.sh sudo chmod -R 755 ${MY_OK_MONUT}/SATA.log.sh } MYSATA #----------------------------- # 遍历卸载 nvme硬盘的脚本 #----------------------------- MYNVME(){ filename="${MY_OK_MONUT}/nvme.log" while IFS= read -r line do echo "umount $line" >> ${MY_OK_MONUT}/nvme.log.x done < "$filename" sed '1i\#!/bin/bash' ${MY_OK_MONUT}/nvme.log.x > ${MY_OK_MONUT}/nvme.log.sh sudo chmod -R 755 ${MY_OK_MONUT}/nvme.log.sh } MYNVME #----------------------------- # 执行卸载硬盘 #----------------------------- sudo ${MY_OK_MONUT}/SATA.log.sh sudo ${MY_OK_MONUT}/nvme.log.sh #----------------------------- # 挂载分区 #----------------------------- MYTumount(){ #docker是卷标GParted创建分区的时候设置的 MYDocker=`sudo blkid | grep "docker" | awk '{print $3}'|grep -oP '(?<=")[^"]*'` echo "UUID=${MYDocker} /var/lib/docker ext4 defaults 0 2" | sudo tee -a /etc/fstab > /dev/null 2>&1 } MYTumount #激活挂载 sudo mount -a
No replies yet
Popular Ranking
Popular Events
自制LIVE ISO镜像系统内置分区挂载脚本
这个就是用来倒腾的,只在虚拟机中实验过,可以预先安装 VM虚拟 docker ,可以用来跑测试,跑服务等
预装:不建议安装ssh 只安装 VM虚拟 docker 就可以
注意事项:应为是内存系统,不要把大文件保存到桌面,可以使用SMB,参考附件中的OK-MONUT_bakc
制作镜像的教程这里就不在讲了 https://bbs.deepin.org/zh/post/240485 ,内核也可以替换ISO里面的需要改下名字和原来镜像里一样就可以
附件下载 附件.zip
假设这个分区挂载脚本叫做 OK-MONUT 需要配合桌面启动器文件使用,在附件有简单说
下面说一下这个挂载脚本的制作过程
为了容易获取UUID建议在分配分区时,候使用 GParted 设置卷标 分区选择exit4,卷标不能是中文否则会乱码
核心命令 blkid 这个需要管理员权限
命令执行结构类似这样,一共有6段
第一段:硬盘设备 第二段:卷标 第三段:UUID 我们只需要用到这3段
获取硬盘设备 用于遍历卸载挂载分区的脚本
使用卷标过滤匹配UUID 来挂载分区,docker是卷标
最终脚本OK-MONUT