linux 内核代码学习(七)

linux内核代码的研究中断了一段时间了,现在又重新开始了研究,个人觉得linux内核的学习是没有上限的,总是一个温故而知新的过程,是一个不断积累的过程。首先还是要先搭建一个方便自己学习和研究的平台,经过不断的尝试,最终平台如下:VMware® Workstation10.0.0 build-1295980版本;选择redhat的linux fedora发行版:安装光盘Fedora-10-i386-DVD.iso。此版本的内核为2.6内核,方便学习和内核代码走读,这个发行版也能很好的支持网络,可以自动安装软件包,起到事半功倍的效果。

学习笔记:

1、首先,需要访问Fedora官方网站。在浏览器中输入htps://getfedora.org!,然后点击页面上的"Download"按钮,即可进入Fedora系统的下载页面。在下载页面上,我们可以看到不同版本的Fedora系统可供选择,一般来说,Fedora有三种版本,分别是Worksiation、serve和Atomic。workstation适合个人使用,提供了图形化的用户界面和各种常用应用程序;Server用于搭建服务器,提供强大的性能和稳定性;Atomic则是专为容器化应用设计的系统。

2、虚拟机启动时提示错误:在该系统上全局禁用了虚拟打印功能,不会为该虚拟机启用此功能。

无法连接虚拟设备"serial0"。解决方法是启动下图箭头指示的服务:

3、

4、在安装vmware tools的时候通常会遇到找不到gcc和内核头文件的情况,这个时候如果不做处理而选择继续安装下去,虽然能安装成功,但是在使用的过程中总会有不理想的情况出现,比如跟主机之间的文件共享不成功。因此,如果对于文件共享功能有要求,在这一步一定要解决这个问题。

还有一种情况就是明明自己的linux虚拟机里面安装了gcc,用which gcc也能找到安装位置,但安装vmware tools的时候输入gcc的目录总是提示不对,我的解决办法就是更换高版本的linux发行版,或者降低vmware station的版本;我最开始用的就是redhat9 linux2.4内核的发行版,跟多个版本的wmware虚拟机配合,在安装vmware tools的时候都存在找不到gcc的情况,折腾了几天,最后才用了vm10+fedora10。

明明安装了linux-headers,但用rpm -ql kernel-headers-$(uname -r)查询确显示没有安装,

但在重新安装vmware tools的时候可以找到kernel-headers的安装位置,可能是查询命令不对,或者其他还没有搞清楚的情况。

vmware tools安装成功后的说明,可以使用vmtools来修改分辨率等。

5、在主机和虚拟机间共享文件的时候可能会出现下面问题

我的fedora linux在安装的时候安装了防火墙,在linux里面会有如下的提示,和解决办法

办法就是执行:setsebool -P allow_mount_anyfile=1 ,然后重启系统就能解决问题。

6、主机和宿主机之间不能共享文件夹,多数原因是VMware tools工具安装不完整。有可能会遇到虚拟机安装VMware Tools灰色无法点击的情况,还有可能VMware Tools里面内容是空这两种情况(我就是遇到VMware Tools为空这种情况,用的是离线安装方法,我的Linux.iso是另外下载的,vmware安装的时候估计是没有选择完全安装,所以linux.iso没有安装到本地磁盘),解决方法如下:

由于反复安装各个版本的虚拟机,有可能出现卸载虚拟机不完全的情况,就会出现虚拟网卡错误,如下图所示:

这个时候可以点开问题设备,查看设备错误代码,网络搜索解决办法,一般都是清理注册表就可以解决。

在就的redhat9 linux发行版安装完后会出现网络不能用的情况,主要解决办法如下:

相关推荐
wdxylb4 小时前
云原生俱乐部-shell知识点归纳(1)
linux·云原生
飞雪20075 小时前
Alibaba Cloud Linux 3 在 Apple M 芯片 Mac 的 VMware Fusion 上部署的完整密码重置教程(二)
linux·macos·阿里云·vmware·虚拟机·aliyun·alibaba cloud
路溪非溪5 小时前
关于Linux内核中头文件问题相关总结
linux
木易双人青5 小时前
01-Docker-简介、安装与使用
运维·docker·容器
专注API从业者7 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
Lovyk8 小时前
Linux 正则表达式
linux·运维
好望角雾眠8 小时前
第一阶段C#基础-10:集合(Arraylist,list,Dictionary等)
笔记·学习·c#
艾伦~耶格尔8 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
星仔编程8 小时前
python学习DAY46打卡
学习
Fireworkitte9 小时前
Ubuntu、CentOS、AlmaLinux 9.5的 rc.local实现 开机启动
linux·ubuntu·centos