VMware17+Ubuntu22.04.4 安装和配置教程
之前用的Win10自带的WSL2安装的ubuntu22.04,但是用起来感觉比虚拟机系统还慢,所以又装回了虚拟机+Ubuntu。
1、安装VMware
网络搜索下载 VMware,例如 VMware_17.5.2-23775571_Setup.exe ,进行安装。
2、安装Ubuntu虚拟机
(1)网络搜索下载Ubuntu22.04.4 (ubuntu-22.04.4-desktop-amd64.iso):
https://www.bilibili.com/read/cv34490607/
(2)按照以下博客的“方式二”,在VMware安装Ubuntu :
https://blog.csdn.net/dengjin20104042056/article/details/130477959
也可参考以下博客:
https://www.bilibili.com/read/cv27492833/?jump_opus=1
注意:
(a)安装Ubuntu时,推荐选择英文,不然后面shell里报错都显示中文,不方便网上找解决方法。
系统中文切换英文:
https://www.cnblogs.com/kingwkl/p/14162556.html
(b)BUG : 每次都要手动挂载共享文件夹
在sudo gedit /etc/fstab 添加上下面这句话即可实现开机自动挂载(永远生效)
.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0
手动启用共享文件夹(只有当次生效):
https://blog.csdn.net/weixin_54051652/article/details/128316296
3、通用设置+切换root用户
在虚拟机设置页面:
@关闭CD/DVD的“启动时连接”,
@打开网络适配器的“启动时连接”;
@建议关闭3D图形加速;
@//将VMware tools设置为手动更新,不然每次开机都弹窗提示升级。
@lsb_release -a :可以查看ubuntu版本。
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.4 LTS
Release: 22.04
Codename: jammy
@安装过程只设置了用户名和密码,没设置root密码,用su切换root失败,可以用sudo su,再输入用户密码来切换到root。
4、启用网络
打开虚拟机,使用浏览器确认网络连接正常。
打开终端,ping一下百度,确认网络连接正常。
以上两步都正常最好,否则可按以下设置启用网络:
https://blog.csdn.net/weixin_43655282/article/details/139196094
sudo service NetworkManager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state
sudo service NetworkManager start
有次重启后发现ping不通了,需要再输入一遍以上命令,后面未出现该问题。网上查到以下解决方法,不过还没试过:
https://blog.csdn.net/m0_52709408/article/details/127527890?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-127527890-blog-139196094.235%5Ev43%5Epc_blog_bottom_relevance_base5&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-127527890-blog-139196094.235%5Ev43%5Epc_blog_bottom_relevance_base5&utm_relevant_index=2
5、更换国内源(需要和Ubuntu版本匹配)
推荐阿里源:
https://blog.csdn.net/FL1623863129/article/details/134229831
清华源:
https://blog.csdn.net/lxj362343/article/details/120212913
6、安装VMware tools
不安装就无法跨系统复制粘贴,界面无法自动调整大小。VMware的安装选项无法联网更新,所以在虚拟机里手动联网下载安装。
sudo apt-get update
sudo apt-get install open-vm-tools-desktop
//输入Y
//查看安装的版本
root@book:/tool# vmware-toolbox-cmd -v
12.3.5.46049 (build-22544099)
7、配置GCC编译链
下载并解压要用的gcc编译链,例如 gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf.tar.xz 并配置环境变量:
https://blog.csdn.net/FMikasa/article/details/133016423
vim ~/.bashrc
export PATH=$PATH:/tools/gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf/bin
手动source ~/.bashrc生效
8、编译uboot
拷贝一个uboot工程到虚拟机,试着编译,需要安装以下库:
sudo apt-get update
sudo apt-get install make
sudo apt-get install gcc
sudo apt-get install bison -y
sudo apt-get install flex
编译脚本,放到UBOOT根目录 ./build.sh 编译:
echo "-> make, objdump and copy u-boot.bin"
make clean
make distclean
make xxx_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8
echo "-> make OK"
#echo "-> wait for objdump ... ..."
#arm-linux-gnueabihf-objdump -D u-boot>u-bootD.txt
#echo "-> objdump OK"
cp u-boot.bin /mnt/hgfs/share/test.bin
echo "-> copy uboot OK"
9、编译Linux
拷贝一个Linux工程(例如 linux-fslc-5.4-2.2.x-imx.zip)到虚拟机,试着编译,需要安装以下库:
https://www.cnblogs.com/solo666/p/15953768.html
https://www.cnblogs.com/solo666/p/17931975.html
sudo apt-get install libssl-dev
sudo apt-get install lzop
sudo apt-get install lib32z1 lib32ncurses5
sudo apt-get install gcc-multilib g++-multilib
各命令区别:https://blog.csdn.net/since_2021_csdn/article/details/130615166
更新软件列表
sudo apt-get update
更新软件包
sudo apt-get upgrade
sudo apt update
sudo apt upgrade
编译脚本,放到kernel根目录 ./build.sh 编译:
echo "-> make linux"
export ARCH=arm
export CROSS_COMPILE=arm-linux-gnueabihf-
make clean
make distclean
make imx_v7_defconfig
make -j32
echo "-> make OK"
出现以下打印则编译成功:
LD [M] fs/isofs/isofs.ko
LD [M] fs/nls/nls_iso8859-15.ko
LD [M] fs/udf/udf.ko
LD [M] lib/crc-ccitt.ko
LD [M] lib/crc-itu-t.ko
LD [M] lib/crc7.ko
LD [M] lib/libcrc32c.ko
LD [M] net/8021q/8021q.ko
LD [M] net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
LD [M] sound/core/snd-hwdep.ko
LD [M] sound/usb/snd-usb-audio.ko
LD [M] sound/usb/snd-usbmidi-lib.ko
SHIPPED arch/arm/boot/compressed/lib1funcs.S
SHIPPED arch/arm/boot/compressed/ashldi3.S
SHIPPED arch/arm/boot/compressed/bswapsdi2.S
AS arch/arm/boot/compressed/hyp-stub.o
AS arch/arm/boot/compressed/lib1funcs.o
AS arch/arm/boot/compressed/ashldi3.o
AS arch/arm/boot/compressed/bswapsdi2.o
AS arch/arm/boot/compressed/piggy.o
LD arch/arm/boot/compressed/vmlinux
OBJCOPY arch/arm/boot/zImage
Kernel: arch/arm/boot/zImage is ready
10、其他
(1)建议安装Linux版本的beyondcompare,例如 bcompare-4.4.7.28397_amd64.deb ;
sudo dpkg -i xxx.deb
https://blog.csdn.net/Ciellee/article/details/131313925
安装Linux版本的VSCode,例如 code_1.89.1-1715060508_amd64.deb :
@建议插件:
arm assembly
blockman
c call hierarchy
c/c++
c/c++ extension pack
c/c++ gnu global
c/c++ themes
cmake
cmake tools
@文件默认是预览状态,打开新文件会关闭先前文件:在vscode的setting中关闭 "workbench.editor.enablePreview" ;
@界面缩放View -> Appearance -> Zoom In / Out 。
@VS CODE搜索不全的问题 :
取消勾选Use Ignore Files选项
@取消cmake-tools的频繁的自动配置,关闭以下设置
Cmake: Automatic Reconfigure
Cmake: Configure On Edit
Cmake: Configure On Open
@减小占用
search.followSymlinks: false
git.enabled: false
git.autorefresh: false
(2)安装好Ubuntu后,终端行与行间距很大,后面不知道是更换为英文还是安装了VMware tools解决了该问题;
(3)占用空间
没装依赖库前:
@Ubuntu自测占用空间:16 GB
root@book:/home/book# df -hl
Filesystem Size Used Avail Use% Mounted on
tmpfs 388M 2.0M 386M 1% /run
/dev/sda3 118G 16G 96G 14% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/sda2 512M 6.1M 506M 2% /boot/efi
tmpfs 388M 104K 387M 1% /run/user/1000
@Windows查看虚拟机文件夹:22.5 GB 左右
装好各个依赖库后:
@Ubuntu自测占用空间:18 GB
root@book:/home/book# df -hl
Filesystem Size Used Avail Use% Mounted on
tmpfs 388M 2.1M 386M 1% /run
/dev/sda3 118G 18G 94G 16% /
tmpfs 1.9G 12M 1.9G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
vmhgfs-fuse 130G 118G 13G 91% /mnt/hgfs
/dev/sda2 512M 6.1M 506M 2% /boot/efi
tmpfs 388M 136K 387M 1% /run/user/1000
@Windows查看虚拟机文件夹:27.1 GB,后面重启后变成了23GB.
11、隔一段时间不操作,虚拟机死机
勾选如下设置:
以下设置不知道有用否: