代码拉取完成,页面将自动刷新
同步操作将从 hr_oe/openeuler_docker 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#!/bin/bash
arch=`uname -m`
if [[ $arch != 'aarch64' ]];then
echo "Error: rootfs only build on aarch64"
exit 1
fi
do_cut=0
repo_path='/etc/yum.repos.d/localmount.repo'
install_dir='/oeoe'
mount_dir='/tmp/for_mount'
tar_name="openeuler-1.0-2020-01_${do_cut}.tar"
recover_env(){
umount $mount_dir
rm -rf $mount_dir
#rm -rf $install_dir
rm -rf $repo_path
mv /opt/*.repo /etc/yum.repos.d/
}
trap "recover_env" 2
#check yum env
rpm -qa |grep yum &>/dev/null
if [[ $? != 0 ]];then
echo "Error: no yum env"
exit 2
fi
local_arch=`uname -m`
if [[ $local_arch == 'x86_64' ]];then
echo "Hint: x86_64 build is not supported now"
exit
fi
# wget iso
url='http://openeuler-os-image.obs.cn-north-4.myhuaweicloud.com/openEuler-1.0-1205-aarch64-dvd.iso'
wget -N $url
# mount iso
mkdir -p $mount_dir
mount ${url##*/} $mount_dir
# create repo
mv /etc/yum.repos.d/*.repo /opt
cat > $repo_path << EOF
[local]
name=local
baseurl=file://$mount_dir
enabled=1
gpgcheck=0
EOF
# dnf installroot
mkdir $install_dir || rm -rf $install_dir/*
yum install --installroot=$install_dir --setopt=install_weak_deps=False -y dnf vi
# tar create rootfs.tar
pushd $install_dir
if [[ $do_cut == 1 ]];then
chroot . << eof
/usr/bin/rpm -ql glibc-devel perl-Encode-devel perl-devel kernel-devel libxcrypt-devel \
systemtap-sdt-devel gcc autoconf m4 autogen automake \
cpp color-filesystem emacs-filesystem which crontabs \
fontpackages-filesystem abattis-cantarell-fonts \
fontconfig hicolor-icon-theme adwaita-icon-theme | xargs -I {} rm -rf {}
eof
fi
chroot . << eof
rm -rf /usr/share/{man,doc,locale,icons}/*
cat > /root/.bashrc << EOF
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
EOF
eof
tar --exclude=${tar_name} -cf ${tar_name} .
xz ${tar_name}
popd
echo "Hint: your rootfs lives $install_dir/${tar_name}.xz "
echo "Hint: please expose it to the web server, then you can do docker build"
recover_env
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。