解壓initramfs和快速安裝udisk的archlinux

來源:互聯網
上載者:User

extract_initramfs.sh


#!/bin/bashINITRAMFS_DIR="initramfs_cpio_dir"#INITRAMFS_FILE="$(pwd)/x86_64_iso_rootfs/boot/initramfs-linux-fallback.img"INITRAMFS_FILE="/tmp/iso/boot/initramfs-linux-fallback.img"CPIO_FILE="initramfs.cpio.gz"if [ ! -d ${INITRAMFS_DIR} ] ; then    mkdir -pv ${INITRAMFS_DIR}ficd ${INITRAMFS_DIR}if [ -e $CPIO_FILE ] ; then    rm -f $CPIO_FILEficp  -f $INITRAMFS_FILE  $CPIO_FILEgzip -f -d $CPIO_FILEsudo cpio -idmv --no-absolute-filenames < ${CPIO_FILE/.gz}



fast_install_usb_disk.sh

#!/bin/bashformat_en="0"#dev_name="/dev/sdd"root_label="usb_root"mydisk_label="usb_mydisk"install_dir="/tmp/usb_linux_install"root_src_dir="/home/lvarchroot/quickinstall/install_dir_i686"START_SEC=$(date +%s)function die(){    echo -e "error: $@"    sudo beep -r 3    exit 1}function usage(){    echo "$0 -d /dev/sdb"    exit 0}# 檢測、配置輸入的命令while getopts 'd:fh' arg; do   case "${arg}" in    h) usage 0;;    f) format_en="1" ;;    d) dev_name="${OPTARG}" ; echo $dev_name ;;    *) error "無效參數 '${arg}'"; usage 1 ;;   esacdoneif [ -z $dev_name ] ; then    echo "請設定目標裝置 -d /dev/sdX"    usage    exit 1fiif [ ${format_en} = "1" ] ; then    dialog --defaultno --yesno "是否格式化 ${dev_name}1"  15 20    if [ $? -eq 0 ] ; then        mkfs.ext4 ${dev_name}1        boot_flag=$(fdisk -l ${dev_name} | grep ${dev_name}1 | awk '{print $2}')        if [ "x${boot_flag}" = "x*" ] ; then            echo "已是引導狀態!!"        else            echo "不是引導狀態@@"            fdisk ${dev_name} <<< EOF            a            1            w            EOF        fi    fi    if [ -b ${dev_name}2 ] ; then        dialog --defaultno --yesno "是否格式化 ${dev_name}2"  15 20        if [ $? -eq 0 ] ; then            mkfs.ext4 ${dev_name}2        fi    fifiif [ ! -b ${dev_name}1 ] ; then    die "${dev_name}1 不是塊裝置"fiif [ ! -b ${dev_name}2 ] ; then    die "${dev_name}2 不是塊裝置"fidialog --defaultno --yesno "是否使用${dev_name}做為安裝目標裝置"  15 20if [ $? -eq 1 ] ; then    echo "退出安裝過程!!!"    exit 1fi#   target_part="${dev_name}1"#   fstype=$(blkid -u filesystem -o value -s TYPE -p ${target_part})#   if [ "x$fstype" != "xvfat" ] ; then#       echo "${target_part}  不是合法的FAT分區"#   fi##   target_part="${dev_name}2"#   fstype=$(blkid -u filesystem -o value -s TYPE -p ${target_part})#   if [ "x$fstype" != "xext2" ] ; then#       echo "${target_part}  不是合法的EXT2分區"#   fifor i in $(seq 1 2) ; do    target_part="${dev_name}$i"    fstype=$(sudo blkid -u filesystem -o value -s TYPE -p ${target_part})    if [ "x$fstype" != "xext4" ] ; then        die "${target_part}  不是合法的EXT4分區"    fidoneif [ ! -d $install_dir ] ; then    mkdir -pv $install_direlse   echo " install dir = $install_dir "fiecho "開始掛載  ${dev_name}1  到  $install_dir "sudo mount ${dev_name}1 $install_dir || die "掛載失敗"echo "掛載完畢"#exit 1echo "開始製作標籤"sudo e2label ${dev_name}1 $root_label    || die "set ${dev_name}1 $root_label"sudo e2label ${dev_name}2 $mydisk_label || die "set ${dev_name}2 $mydisk_label "echo "製作完畢"echo "開始時間 $(date +%H:%M:%S)"echo "開始拷貝系統, 所花時間比較長"sudo cp -af ${root_src_dir}/*  ${install_dir} || die "安裝失敗"echo "拷貝完畢"echo "開始製作啟動grub"sudo grub-install --boot-directory=${install_dir}/boot --force ${dev_name} > /dev/null 2>&1 ||  \    die "設定grub ${dev_name} 出錯"echo "grub啟動製作完成!"for i in $(seq 1 2) ; do    target_part="${dev_name}$i"    sudo blkid ${target_part}donesudo umount ${dev_name}1 || die "卸載失敗"echo "結束時間 $(date +%H:%M:%S)"END_SEC=$(date +%s)TOTAL_SEC=$((${END_SEC} - $START_SEC))SEC=$((TOTAL_SEC%60))MIN=$((TOTAL_SEC/60))echo "花費 ${MIN} 分 ${SEC} 秒"echo "操作已完成"sudo beep


本文出自 “槍炮與玫瑰的BLOG” 部落格,請務必保留此出處http://axlrose.blog.51cto.com/434566/1300775

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.