• 一个替代手工合并文件的shell脚本


    #!/bin/sh
    CURET_DIR=$(pwd)
    src_path="$CURET_DIR/rootfs-src-tmp"
    dst_path="$CURET_DIR/rootfs-dst-tmp"
    
    help() {
        echo ""
        echo "eg: auto-build-rootfs src.ext2 dst.ext2"
    }
    
    #check src rootfs.ext2
    if [ ! -f $CURET_DIR/$1 ]; then
            echo "no file $CURET_DIR/$1"
            help
            exit
    fi
    #check dst rootfs.ext2
    if [ ! -f $CURET_DIR/$2 ]; then
            echo "no file $CURET_DIR/$2"
            help
            exit
    fi
    
    
    #check src mount path 
    if [ ! -d $src_path ]; then
        echo "no dir: $src_path, we will create it!"
        mkdir -p  $src_path
    else
        echo "exist dir: $src_path, pl check it,  exit"
        exit
    fi
    #check dst mount path
    if [ ! -d $dst_path ]; then
            echo "no dir: $dst_path, we will create it!"
            mkdir -p $dst_path
    else
            echo "exist dir: $dst_path, pl check it,  exit"
            exit
    fi
    
    # mount
    echo ""
    echo "mount $1 to  $src_path ..."
    mount $1 $src_path
    echo "mount $2 to  $dst_path ..."
    mount $2 $dst_path
    
    #modify file
    cp $src_path/etc/default/lxc $dst_path/etc/default/lxc
    cp $src_path/etc/fstab $dst_path/etc/fstab
    cp $src_path/etc/init.d/rcS $dst_path/etc/init.d/rcS
    cp $src_path/etc/profile $dst_path/etc/profile
    
    #cp file
    cp $src_path/usr/lib/liblxc.so $dst_path/usr/lib/liblxc.so
    cp $src_path/usr/lib/liblxc.so.1 $dst_path/usr/lib/liblxc.so.1
    cp $src_path/usr/lib/liblxc.so.1.6.0 $dst_path/usr/lib/liblxc.so.1.6.0
    
    cp $src_path/usr/lib32/liblxc.so $dst_path/usr/lib32/liblxc.so
    cp $src_path/usr/lib32/liblxc.so.1 $dst_path/usr/lib32/liblxc.so.1
    cp $src_path/usr/lib32/liblxc.so.1.6.0 $dst_path/usr/lib32/liblxc.so.1.6.0
    
    cp $src_path/usr/libexec/lxc/lxc-net $dst_path/usr/libexec/lxc/lxc-net
    #cp $src_path/usr/share/lxc/templates/lxc-busybox $dst_path/usr/usr/share/lxc/templates/lxc-busybox
    
    cp $src_path/etc/default/lxc-net $dst_path/etc/default/lxc-net
    cp $src_path/etc/resolv.conf $dst_path/etc/
    
    #cp dir
    cp -rf $src_path/usr/local $dst_path/usr/local
    cp -rf $src_path/var/lib/lxc/lxc-busybox $dst_path/var/lib/lxc/lxc-busybox
    
    
    #umount
    umount $src_path
    umount $dst_path
    
    rm -r $src_path
    rm -r $dst_path
  • 相关阅读:
    JavaScript相关,this 的指向
    酷炫的渲染,CSS3动画!
    正襟危坐,聊一聊Web语义化
    本地存储的技术,localStorage、sessionStorage、cookie、session
    Express 系列(终章):MongoDB使数据持久化
    股票投资相关,成交量怎么看
    【日本語新聞選読】第5回:3月31日
    【1901日語听解2】第5回:3月30日
    【日語視聴説2】第5回:3月30日
    【日本語新聞編集】第4回:3月27日
  • 原文地址:https://www.cnblogs.com/mic-chen/p/13492839.html
Copyright © 2020-2023  润新知