推荐阅读:
1.kali(ubuntu)-为什么不用ubuntu,而选择基于debian的kali操作系统
1、为什么要在linux装vmware
国内常用的软件微信,QQ这种腾讯家族的,没有一个可以支持linux的。不管是统信UOS,优麒麟还是其他国产系统的linux应用商店里面,适配都很差。而且,当你想用国产软件的时候,不得不考虑的一个问题是中文字体的支持与渲染。很多国内用的软件在linux系统下是很不友好的。如果你喜欢折腾,可以安装wine折腾一下( wineHQ是一个 Windows 兼容层,允许你在类 unix 操作系统(如 linux)上运行 windows 应用程序)。不过实在不建议这么做,费时费力还不一定能用。
virtualbox——目前最高支持debian 12,而kali是rolling滚动版,目前是debian 13.3 了,所以不适合。
还是选用很多人在windows上用的vmware吧
2、为什么要编译linux kernel 内核头文件
最新版的kali linux headers可能会出现问题,无法完成vmmmon和vmnet的编译,需要去github上下载并自行编译。如果想尝试,请去下载VMware-Workstation-Full-17.5.2 并安装试试。
目前我正常稳定运行的是
linux header ——6.0.0版本
vmware——VMware-Workstation-Full-17.0.0
所以需要手动对linux kernel进行降级操作
3、怎样手动编译linux内核(自己下载编译包,编译内核)
1> 源码下载地址:
kernel主页
2> 安装编译所需依赖模块
sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison dwarves
3> 拷贝config文件
cp /boot/config-$(uname -r) .config
4> 编译
time sudo make -j16
注意:如果之前已经编译了,那不用执行这一步make,直接下一步modules_install
这里的-j16是你的CPU线程数,我的是16个线程,请查看你电脑的cpu线程数来设置-j后面的数字
5> 放进目录lib目录里
time sudo make -j16 modules_install
6> 生成grub目录
time sudo make -j16 install
7> 生成linux kernel 内核头
mkdir -p /usr/src/linux-6.0-debian-headers
time sudo make headers_install INSTALL_HDR_PATH=/usr/src/linux-6.0-headers
8> 重启
reboot
注意:
重启——> 开机——> Advanced options for Kali GNU/Linux——>选择编译好的linux 内核
9> 校验一下目录是否成功
uname -a 查看具体的linux内核
10> 将grub中的其他启动内核隐藏起来(root账户下)
cd /boot
mkdir backup
mv *.kali3 backup
sudo update-grub
4、安装vmware
1> 去下载相应的vmware
vmware官网
2024年换成这个网站了
vmware下载地址
2> 查看当前使用的系统内核
uname -r
3> 下载bundle的软件:并执行
chmod +x VMware-<version>.bundle
sudo ./VMware-<version>.bundle
4> 处理安装过程中的错误:
安装过程中可能会出现与内核模块相关的错误。如果出现这种情况,可以尝试用以下命令重建内核模块:
sudo /usr/bin/vmware-modconfig --console --install-all
5> 启动 VMware:
安装完成后,可以通过以下命令启动 VMware:
sudo /etc/init.d/vmware start
如果所有模块都可以启动,那直接命令行就可以启动
vmware
6> 如果你想卸载重装,那卸载重装的命令如下:
vmware-installer -l //查看vmware安装的组件
sudo vmware-installer -u vmware-workstation //卸载workstation
sudo vmware-installer -u vmware-player //卸载player
sudo ./VMware-Workstation-Full-17.5.1-23298084.x86_64.bundle //重新安装命令