操作系统实验一

一键脚本要不要试一下?14.04 & 16.04 完结撒花 wget https://raw.githubusercontent.com/fancyking1999/OS_E/master/oseone_dev.sh && bash oseone_dev.sh 上面的一键脚本中make -j 2,如果自己配置好一点,可以更改为4或更高 这个到了Config那一步,自己进行下面两个步骤: 打开module: Enable loadable module support -> Forced module loading & Force module unloading 打开 FileSystem->DOS/FAT/NT FileSystems -> NTFS write support (可选)追加字符串'FancyKing'(示例)于 General setup -> Local version - append to kernel release
 关于本笔记实验的环境 虚拟机使用VMWare 15,镜像使用的是ubuntu-16.04.6-server-amd64,是64位版本的 无图形化界面(推荐电脑性能不够的一样不要安装图形化界面了,无图形化1G也挺流畅,注 意开1G后期5.0内核不能起来,但是后期临时加就行)下载地址 https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/xenial/ubuntu-16.04.6server-amd64.iso 硬盘空间最好的话,最少给30G吧,反正我给的20G到最后make的时候空间不足了~,下 图是最后最简单的内核启动之后的磁盘占用(无图形化界面的版本)
命令全部在终端中以Root管理员的权限运行,呈现方式是重启选用自己编译的内核
 最好是更改自己的软件源,借VPS大佬老鬼的换源工具,开源无毒,CDN加速: wget  git.io/superupdate.sh&& bash superupdate.sh aliyun && apt update
 下载内核源代码 推荐下载与当前使用的虚拟机相近的内核版本 因为我也没电脑所以暂时按照我发到群里面的5.0写咯 直接下载可以使用命令:wget https://mirrors.aliyun.com/linux-kernel/v5.x/linux
操作系统实验一















5.0.tar.gz
 下载完成后将解压后的文件夹移动、拷贝到/usr/src/目录下 复制命令:cp ./linux-5.0.tar.gz /usr/src/ 切换工作目录: cd /usr/src/ 解压命令: tar zxvf linux-5.0.tar.gz
安装依赖包 强烈推荐进行过上方换源,除非你挂了梯子,不然会很慢 运行下列命令: apt update && apt install libc6-dev make dpkg-dev linux-libc-dev libssldev kernel-package libncurses5-dev fakeroot bc xz-utils ca-certificates ncurses-dev libncurses5-dev  bison flex libelf-dev -y --fix-missing && apt upgrade -y && apt autoclean && apt clean && apt autoremove --purge
期间我估计肯定会报错,文末总结了几种报错方式,可以去找一下看看 因为我自己尝试了14.04和16.04版本,所以可能有一些软件包是多的,但是也没多少 ,推荐一起安装,Ubuntu的18.04因为特殊原因一定要安装libncurses5-dev!
 
编译 配置编译conf文件 进入下载的内核源码目录: cd /usr/src/linux-5.0/ 课本上有好多种配置方式,我就懒得打字了,我选择其中一种来写 运行命令: make menuconfig




可以选择自己家一些东西,然后再跑,我这里按照下述记录 (可选)追加字符串'FancyKing'(示例)于 General setup -> Local version append to kernel release 打开module: Enable loadable module support -> Forced module loading & Force module unloading ● 打开 FileSystem->DOS/FAT/NT FileSystems -> NTFS write support 目前为止,应该出现一个 .config 文件(可以使用$cat ./.config 查看)




正式编译(不报Error不用管) make -j 4 漫长的等待,但是仔细看的话,到了MODPOST阶段有彩蛋~ 最后是什么都不提示结束是最好的


make modules_install -j 4
make install
 















上述命令中, '-j 4' 的意思是占用四个内核来运行make,一般和自己机器的内核数相 等就行,或者不加就是默认  验证 此时新内核影观已经加载到GRUB里面了,所以,可以开机重启一下,按住Shift选择新内 核
上图的错误是因为虚拟机分配的内存太小了,大家在这个时候调大一些内存就可以了 如果没错误,那就看一下uname -r,应该会显示新的参数
 
可能出现的错误 错误包含关键字127 请安装flex 和 bison:apt install flex bison -y
 找不到compiler-gcc5.h 这个原因一般是因为自己的现有机器的GCC版本与要编译的内核的版本相差过大导致 的,解决方案就是更改欲编译的内核版本或者升级/降级GCC(升级GCC需要手动 make,很麻烦的)
 错误信息翻译过是什么不支持 -fstack-protector-strong 这个问题一般情况还是因为自己的GCC版本的问题,老一些的GNU还没有增加这个参 数的支持,解决方法基本两周 升级GCC(或者直接升级系统版本) 禁用新特性编译,编译之前执行: scripts/config --disable CC_STACKPROTECTOR_STRONG
 如果还有类似的报错,说什么什么不支持,也可以试试禁用能否解决 一键脚本要不要试一下?14.04 & 16.04 完结撒花 wget https://raw.githubusercontent.com/fancyking1999/OS_E/master/oseone_dev.sh && bash oseone_dev.sh 上面的一键脚本中make -j 2,如果自己配置好一点,可以更改为4或更高 这个到了Config那一步,自己进行下面两个步骤: 打开module: Enable loadable module support -> Forced module loading & Force module unloading 打开 FileSystem->DOS/FAT/NT FileSystems -> NTFS write support (可选)追加字符串'FancyKing'(示例)于 General setup -> Local version - append to kernel release
 关于本笔记实验的环境 虚拟机使用VMWare 15,镜像使用的是ubuntu-16.04.6-server-amd64,是64位版本的 无图形化界面(推荐电脑性能不够的一样不要安装图形化界面了,无图形化1G也挺流畅,注 意开1G后期5.0内核不能起来,但是后期临时加就行)下载地址 https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/xenial/ubuntu-16.04.6server-amd64.iso 硬盘空间最好的话,最少给30G吧,反正我给的20G到最后make的时候空间不足了~,下 图是最后最简单的内核启动之后的磁盘占用(无图形化界面的版本)
命令全部在终端中以Root管理员的权限运行,呈现方式是重启选用自己编译的内核
 最好是更改自己的软件源,借VPS大佬老鬼的换源工具,开源无毒,CDN加速: wget  git.io/superupdate.sh&& bash superupdate.sh aliyun && apt update
 下载内核源代码 推荐下载与当前使用的虚拟机相近的内核版本 因为我也没电脑所以暂时按照我发到群里面的5.0写咯 直接下载可以使用命令:wget https://mirrors.aliyun.com/linux-kernel/v5.x/linux
操作系统实验一















5.0.tar.gz
 下载完成后将解压后的文件夹移动、拷贝到/usr/src/目录下 复制命令:cp ./linux-5.0.tar.gz /usr/src/ 切换工作目录: cd /usr/src/ 解压命令: tar zxvf linux-5.0.tar.gz
安装依赖包 强烈推荐进行过上方换源,除非你挂了梯子,不然会很慢 运行下列命令: apt update && apt install libc6-dev make dpkg-dev linux-libc-dev libssldev kernel-package libncurses5-dev fakeroot bc xz-utils ca-certificates ncurses-dev libncurses5-dev  bison flex libelf-dev -y --fix-missing && apt upgrade -y && apt autoclean && apt clean && apt autoremove --purge
期间我估计肯定会报错,文末总结了几种报错方式,可以去找一下看看 因为我自己尝试了14.04和16.04版本,所以可能有一些软件包是多的,但是也没多少 ,推荐一起安装,Ubuntu的18.04因为特殊原因一定要安装libncurses5-dev!
 
编译 配置编译conf文件 进入下载的内核源码目录: cd /usr/src/linux-5.0/ 课本上有好多种配置方式,我就懒得打字了,我选择其中一种来写 运行命令: make menuconfig




可以选择自己家一些东西,然后再跑,我这里按照下述记录 (可选)追加字符串'FancyKing'(示例)于 General setup -> Local version append to kernel release 打开module: Enable loadable module support -> Forced module loading & Force module unloading ● 打开 FileSystem->DOS/FAT/NT FileSystems -> NTFS write support 目前为止,应该出现一个 .config 文件(可以使用$cat ./.config 查看)




正式编译(不报Error不用管) make -j 4 漫长的等待,但是仔细看的话,到了MODPOST阶段有彩蛋~ 最后是什么都不提示结束是最好的


make modules_install -j 4
make install
 















上述命令中, '-j 4' 的意思是占用四个内核来运行make,一般和自己机器的内核数相 等就行,或者不加就是默认  验证 此时新内核影观已经加载到GRUB里面了,所以,可以开机重启一下,按住Shift选择新内 核
上图的错误是因为虚拟机分配的内存太小了,大家在这个时候调大一些内存就可以了 如果没错误,那就看一下uname -r,应该会显示新的参数
 
可能出现的错误 错误包含关键字127 请安装flex 和 bison:apt install flex bison -y
 找不到compiler-gcc5.h 这个原因一般是因为自己的现有机器的GCC版本与要编译的内核的版本相差过大导致 的,解决方案就是更改欲编译的内核版本或者升级/降级GCC(升级GCC需要手动 make,很麻烦的)
 错误信息翻译过是什么不支持 -fstack-protector-strong 这个问题一般情况还是因为自己的GCC版本的问题,老一些的GNU还没有增加这个参 数的支持,解决方法基本两周 升级GCC(或者直接升级系统版本) 禁用新特性编译,编译之前执行: scripts/config --disable CC_STACKPROTECTOR_STRONG
 如果还有类似的报错,说什么什么不支持,也可以试试禁用能否解决 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值