1 Star 0 Fork 44

PshySimon/kpatch_dev

forked from src-openEuler/kpatch 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
make_compile_env.sh 1.44 KB
一键复制 编辑 原始数据 按行查看 历史
谢志鹏 提交于 2021-10-26 16:10 . add make_compile_env.sh
#!/bin/bash
rm -rf kpatch_compile_env
yum install -y strace vim git rpm-build bc elfutils-libelf-devel gdb-headless make gcc patch bison flex openssl-devel kernel-source-`uname -r` kernel-debuginfo-`uname -r` kernel-devel-`uname -r` --installroot=`pwd`/kpatch_compile_env/
mkdir -p kpatch_compile_env/kpatch
/bin/cp * kpatch_compile_env/kpatch/
cat > kpatch_compile_env/installkpatch.sh <<EOF
#!/bin/bash
mkdir -p ~/rpmbuild/SOURCES/
/bin/cp kpatch/* ~/rpmbuild/SOURCES/
rpmbuild -ba kpatch/kpatch.spec
rpm -Uvh ~/rpmbuild/RPMS/`arch`/kpatch*.rpm
cd /opt/patch_workspace
rm -rf kernel-source .config
ln -s /usr/src/linux-`uname -r`/ kernel-source
ln -s /usr/src/linux-`uname -r`/.config .config
ln -s /usr/lib/debug/lib/modules/`uname -r`/vmlinux vmlinux
rm -rf /dev/null
mknod /dev/null c 1 3
rm -rf /dev/zero
mknod /dev/zero c 1 5
rm -rf /dev/random
mknod /dev/random c 1 8
rm -rf /dev/tty
mknod /dev/tty c 5 0
EOF
chmod a+x kpatch_compile_env/installkpatch.sh
chroot kpatch_compile_env /installkpatch.sh
cat > kpatch_compile_env/chroot.sh <<EOF
mount -t proc proc \$(dirname \$0)/proc
chroot \$(dirname \$0)
EOF
cat > kpatch_compile_env/unchroot.sh <<EOF
umount \$(dirname \$0)/proc
EOF
cat > kpatch_compile_env/usr/bin/openEuler_history<<EOF
#!/bin/bash
EOF
chmod a+x kpatch_compile_env/chroot.sh
chmod a+x kpatch_compile_env/unchroot.sh
chmod a+x kpatch_compile_env/usr/bin/openEuler_history
tar -czf kpatch_compile_env.tar.gz kpatch_compile_env
rm -rf kpatch_compile_env
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/pshysimon/kpatch_dev.git
git@gitee.com:pshysimon/kpatch_dev.git
pshysimon
kpatch_dev
kpatch_dev
master

搜索帮助