创建Vagrant虚拟机后无法通过Ubuntu桌面登录的问题
创建Vagrant虚拟机后无法通过Ubuntu桌面登录的问题
我太懂你这种挫败感了——明明用Vagrant成功创建了Ubuntu 24.04桌面版虚拟机,vagrant ssh能顺畅登录,可到了桌面登录界面却卡壳进不去!你猜的没错,这个apavy/ubuntu-24.04-desktop-amd64镜像默认把GUI登录改成了密钥验证机制,但桌面登录界面默认还是走密码验证那一套,这就导致了矛盾。下面给你两种简单的解决办法:
方法一:给vagrant用户设置登录密码(最直接)
这是最快能解决问题的方式,步骤如下:
- 先通过终端执行
vagrant ssh,成功登录到虚拟机内部 - 输入命令
sudo passwd vagrant,然后按照提示设置你想要的登录密码(注意输入密码时终端不会显示字符,正常输入即可) - 设置完成后退出SSH连接,回到桌面登录界面,输入用户名
vagrant和刚才设置的密码,就能顺利进入桌面了
方法二:配置桌面环境适配Vagrant密钥登录(更贴合Vagrant的设计)
如果你不想设置密码,想沿用Vagrant的密钥机制,可以这么操作:
- 先通过
vagrant ssh登录虚拟机,确认Vagrant的公钥权限正确(这是密钥登录的关键):# 检查并修复.ssh目录和authorized_keys文件的权限 chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys - 配置桌面管理器自动登录(避免每次手动验证):
Ubuntu 24.04默认用GDM作为桌面管理器,我们可以编辑它的配置文件实现自动登录:
找到sudo nano /etc/gdm3/custom.conf[daemon]部分,添加或修改以下内容:
保存退出后,重启虚拟机(AutomaticLoginEnable=true AutomaticLogin=vagrantvagrant reload),下次启动就会自动用vagrant用户登录桌面了
附上你提供的Vagrantfile供参考:
Vagrant.configure("2") do |config| config.vm.box = "apavy/ubuntu-24.04-desktop-amd64" config.vm.provider "vmware_desktop" do |v| v.gui = true end config.vm.provider "virtualbox" do |v| v.memory = 2048 v.cpus = 2 v.name = "my_vm" v.gui = true v.check_guest_additions = false end end

备注:内容来源于stack exchange,提问作者Blue Grass
相关产品推荐
相关产品推荐

