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没有安装到本地磁盘),解决方法如下: