IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> linux kernel 开发环境准备 -> 正文阅读

[系统运维]linux kernel 开发环境准备

vscode 插件与配置

C
git blame
git len

仓库

git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

git 历史补全

git clone --bare git://git.kernel.org/pub/scm/linux/kernel/git/history/history.git
cd linux/.git/
echo ../../../history.git/objects >> objects/info/alternates
echo 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a >> info/grafts
echo 7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178 >> info/grafts
git replace --convert-graft-file

编译

sudo apt install git build-essential bc bison flex libssl-dev libncurses-dev libelf-dev qemu-system-x86 libguestfs-tools wget -y
cd linux
make menuconfig
sed -i "s/CONFIG_VIRTIO_PCI=.*/CONFIG_VIRTIO_PCI=y/g" .config
sed -i "s/CONFIG_VIRTIO_BLK=.*/CONFIG_VIRTIO_BLK=y/g" .config
sed -i "s/CONFIG_VIRTIO_NET=.*/CONFIG_VIRTIO_NET=y/g" .config
sed -i "s/CONFIG_EXT4_FS=.*/CONFIG_EXT4_FS=y/g" .config
make bzImage -j`nproc`
# make bindeb-pkg -j`nproc`

使用虚拟机

wget https://cloud.debian.org/images/cloud/buster/20220328-962/debian-10-generic-amd64-20220328-962.qcow2 -O ../vm.qcow2
qemu-img resize vm.qcow2 100G
virt-customize \
    --run-command '/bin/bash /bin/growpart /dev/sda 1' \
    --run-command 'resize2fs /dev/sda1' -a vm.qcow2

virt-customize \
--run-command 'cn=$(lsb_release -cs); echo "
deb http://mirrors.byted.org/debian $cn main contrib non-free
deb http://mirrors.byted.org/debian $cn-backports main contrib non-free
deb http://mirrors.byted.org/debian-security $cn/updates main contrib non-free
deb http://apt.byted.org/private $cn-private $cn-main" > /etc/apt/sources.list' \
--run-command "sed -i '3d' /etc/fstab" \
--uninstall cloud-init,openssh-server \
--install dhcpcd5,openssh-server \
--root-password password:root \
--ssh-inject root -a vm.qcow2

运行虚拟机

sudo qemu-system-x86_64 \
    -enable-kvm \
    -nographic \
    -drive file=../guest.qcow2,if=virtio \
    -device virtio-net,netdev=n0,mac=52:55:00:d1:55:00 \
    -netdev user,hostfwd=tcp::2222-:22,id=n0 \
    -m 8G \
    -smp cores=2,threads=1,sockets=1 \
    -object memory-backend-ram,id=mem0,size=4G  \
    -object memory-backend-ram,id=mem1,size=4G  \
    -numa node,memdev=mem0,cpus=0,nodeid=0 \
    -numa node,memdev=mem1,cpus=1,nodeid=1 \
    -kernel arch/x86/boot/bzImage \
    -append 'nokaslr root=/dev/vda1 console=ttyS0 earlyprintk=ttyS0'
cat > /etc/systemd/system/serial-getty@ttyS0.service.d/override.conf << EOF
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --keep-baud 115200,38400,9600 %I $TERM
EOF

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-27 11:41:37  更:2022-04-27 11:43:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 20:26:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码