livecd安装linux指令,「原创」livecd安装脚本

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#(度娘的排版要是不给力就悲催了)

#livecd安装脚本,主要使用cp安装,好处就是在livecd上的修改可以带到安装后

#由于嵌套很少于是不使用缩进了

#!/bin/bash

#脚本和fstab、fstab2(两个一样的fstab文件,只有注释或只有注释和tmpfs)放在/install下才可正常工作

cd /install

dialog --msgbox "欢迎使用安装脚本!" 10 22

dialog --msgbox "在开始安装之前,请先使用GParted、fdisk、cfdisk、parted等工具分区、格式化。安装程序只进行挂载、复制文件和配置" 10 22

dialog --yesno "继续安装?" 5 22

if [ $? = 1 ]

then

exit

fi

dialog --title "分区信息——确认安装到的分区" --msgbox "`fdisk -l`" 40 60

dialog --title "选择模式" --yesno "是否自定/etc/fstab?(否则将只指定/) " 10 30

if [ $? = 0 ]

then

dialog --title "选择编辑器" --menu "" 20 50 5 gedit "图形界面编辑器,简单" nano "字符界面编辑器,简单" vi "高级" 2>./it

RLP1="`cat ./it`"

$RLP1 ./fstab

dialog --title "选择分区" --inputbox "选择在fstab中指定的/分区(/dev/sdX)" 10 20 2>./it

RLP1="`cat ./it`"

RooT=$RLP1

else

dialog --title "选择分区" --inputbox "选择/分区(/dev/sdX)" 10 20 2>./it

RLP2="`cat ./it`"

RooT=$RLP2

dialog --menu "你的/分区格式?" 20 50 5 ext4 "" ext3 "" xfs "" "其他" "" 2>./it

RLP1="`cat ./it`"

if [ $RLP1 = "其他" ]

then

dialog --inputbox "你的/分区格式?(fstab中的)" 10 20 2>./it

RLP1="`cat ./it`"

fi

cp ./fstab2 ./fstab

echo "$RLP2 / $RLP1 defaults 0 0" >> ./fstab

fi

echo "挂载/分区:$RooT"

mount $RooT /target

echo "复制文件"

echo "复制/usr"

cp -rvPp /usr/ /target/usr/

echo "复制/var"

cp -rvPp /var/ /target/var/

echo "复制/etc"

cp -rvPp /etc/ /target/etc/

echo "复制/etc/fstab"

cp -v ./fstab /target/etc/

echo "复制/lib"

cp -rvPp /lib/ /target/lib/

echo "复制/bin"

cp -rvPp /bin/ /target/bin/

echo "复制/sbin"

cp -rvPp /sbin/ /target/sbin/

echo "复制/opt"

cp -rvPp /opt/ /target/opt/

echo "复制/boot"

cp -rvPp /boot/ /target/boot/

echo "复制/home"

cp -rvPp /home/ /target/home/

echo "复制/selinux"

cp -rvPp /selinux/ /target/selinux/

echo "复制/root"

cp -rvPp /root/ /target/root/

echo "复制/srv"

cp -rvPp /srv/ /target/srv/

echo "复制/下的内核符号链接"

cp -vP /vmlinuz /target/

cp -vP /initrd.img /target/

echo "创建必要的目录"

mkdir -v /target/mnt

mkdir -v /target/tmp

mkdir -v /target/run

mkdir -v /target/proc

mkdir -v /target/sys

mkdir -v /target/dev

mkdir -v /target/cdrom

mkdir -v /target/media

echo "进行chroot之前准备工作"

mount --bind /dev /target/dev

mount --bind /proc /target/proc

mount --bind /sys /target/sys

dialog --yesno "复制文件已完成,是否安装Grub2启动引导器?" 10 20

if [ $? = 0 ]

then

dialog --inputbox "输入安装启动引导器的设备(一般硬盘是/dev/sda)" 10 25 2>./it

Gd="`cat ./it`"

chroot /target/ grub-install $Gd

chroot /target/ update-grub

echo "Grub安装完成"

fi

echo "设定您的密码(默认用户名ubuntu)"

echo "密码在屏幕上不会有任何显示,只管输。"

chroot /target/ passwd ubuntu

dialog --yesno "是否chroot进入之进行配置?(高级)" 10 20

if [ $? = 0 ]

then

echo "现在是chroot状态,exit退出"

chroot /target /bin/bash

fi

echo "回滚chroot之前的准备工作"

umount /target/dev

umount /target/proc

umount /target/sys

echo "卸载$RooT"

umount /target

echo "安装完成"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值