在ubuntu 24 命令行 下,制作无人值守ubuntu-24.04.2-desktop 桌面版安装U盘

1、说明

在线教育平台需要的电脑配置较高,如果直接买阿里云的配置,有点小贵,自己搞了一套专门运行,二手便宜,但是没有核显也没有显卡,比较麻烦,想做一个无人值守的ubuntu系统,这次完全在deepseek的指导下进行

二、制作过程 

1、准备工作

# 安装必要工具
sudo apt update && sudo apt install -y wget xorriso isolinux syslinux-utils

# 下载Ubuntu 24.04.2桌面版ISO(替换为实际URL)
wget https://releases.ubuntu.com/24.04.2/ubuntu-24.04.2-desktop-amd64.iso

2. 挂载ISO并提取文件

# 我挂载了u盘
sudo mkdir /mnt/upan            #新建目录
sudo mount /dev/sdb1 /mnt/upan    #挂载磁盘 /mntu
# 创建挂载点和提取目录
sudo mkdir -p /mnt/iso
sudo mkdir ~/custom-iso

# 挂载ISO文件
sudo mount -o loop ubuntu-24.04.2-desktop-amd64.iso /mnt/iso

# 复制文件到临时目录(保留权限)
rsync -av /mnt/iso/ ~/custom-iso/

# 卸载原始ISO
sudo umount /mnt/iso

3. 创建Autoinstall配置文件

# 在 ~/custom-iso 目录下创建 user-data 文件: 
# 本次配置添加了静态ip,ssh,远程桌面、虚拟显示器
# 密码用mkpasswd -m sha-512
#例如 x58@x58:/mntu$ mkpasswd -m sha-512 123456

sudo nano ~/custom-iso/user-data

#cloud-config
autoinstall:
  version: 1
  refresh-installer:
    update: yes
  locale: en_US.UTF-8
  keyboard:
    layout: us
  identity:
    hostname: auto-ubuntu
    username: x58
    password: "$6$THVVReBQdldHeQxy$E2Mn0vZjjAh058Bc60dUTGcj9NvONFlfq5YQzqV9Phq9pOCd1PiD7gp2YhMIjW6JKxtGb7h2sAusD.xCM9hLw1"
  storage:
    layout:
      name: direct
  network:
    version: 2
    ethernets:
      en*:  # 通配符匹配所有以太网接口
        dhcp4: no
        addresses:
          - 192.168.1.123/24
        routes:
          - to: default
            via: 192.168.1.1
        nameservers:
          addresses: [8.8.8.8, 114.114.114.114]
  ssh:
    install-server: yes
    allow-pw: yes
  packages:
    - openssh-server
    - xrdp
    - ufw
    - xserver-xorg-video-dummy  # 虚拟显示器驱动
    - xorgxrdp  # xrdp与Xorg集成
  late-commands:
    # 配置用户sudo权限
    - echo 'ubuntu ALL=(ALL) NOPASSWD:ALL' > /target/etc/sudoers.d/ubuntu-nopasswd
    
    # 配置防火墙规则
    - curtin in-target --target /target -- ufw allow 22/tcp
    - curtin in-target --target /target -- ufw allow 3389/tcp
    - curtin in-target --target /target -- ufw --force enable
    
    # 强制使用Xorg(禁用Wayland)
    - sed -i 's/#WaylandEnable=false/WaylandEnable=false/g' /target/etc/gdm3/custom.conf
    
    # 创建虚拟显示器配置文件
    - |
      cat > /target/etc/X11/xorg.conf.d/10-virtual-display.conf <<EOF
      Section "Device"
          Identifier  "DummyDevice"
          Driver      "dummy"
          Option      "ConstantDPI" "true"
          Option      "IgnoreEDID" "true"
          Option      "NoDDC" "true"
      EndSection

      Section "Monitor"
          Identifier  "DummyMonitor"
          HorizSync   31.5-48.5
          VertRefresh 50-70
          Modeline "1920x1080" 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +HSync +VSync
      EndSection

      Section "Screen"
          Identifier  "DummyScreen"
          Device      "DummyDevice"
          Monitor     "DummyMonitor"
          DefaultDepth 24
          SubSection "Display"
              Depth 24
              Modes "1920x1080"
          EndSubSection
      EndSection
      EOF
    
    # 设置xrdp使用虚拟显示器
    - sed -i 's/use_vsock=false/use_vsock=false\ndefault_display=:20/g' /target/etc/xrdp/xrdp.ini
    
    # 确保服务自启
    - curtin in-target --target /target -- systemctl enable xrdp

4. 修改引导配置

# 编辑GRUB配置文件以启用自动安装:
sudo nano ~/custom-iso/boot/grub/grub.cfg

# 在第一个 linux 行末尾添加参数:
linux   /casper/vmlinuz quiet autoinstall ds=nocloud\;s=/cdrom/ ---

5. 重新生成ISO文件

#使用 xorriso 打包新ISO

cd ~/custom-iso

sudo xorriso -as mkisofs \
  -r -V "UBUNTU_2404_AUTO" \
  -o ~/ubuntu_2404_auto.iso \
  --grub2-mbr /usr/lib/grub/i386-pc/boot_hybrid.img \
  -partition_offset 16 \
  --mbr-force-bootable \
  -append_partition 2 0xEF ~/custom-iso/EFI/boot/bootx64.efi \
  -appended_part_as_gpt \
  -c boot.catalog \
  -b boot/grub/i386-pc/eltorito.img \
  -no-emul-boot -boot-load-size 4 -boot-info-table \
  --grub2-boot-info \
  -eltorito-alt-boot \
  -e '--interval:appended_partition_2:all::' \
  -no-emul-boot \
  -isohybrid-gpt-basdat \
  .

6、验证

# 查看ISO的EFI分区信息
fdisk -l ~/ubuntu_2404_auto.iso
# 应有 "EFI System" 分区标记

修正后的命令将生成支持以下特性的ISO:

  • ✅ 无人值守安装(包含用户名、密码、静态IP)

  • ✅ 自动安装openssh、xrdp、虚拟显示器驱动

  • ✅ 禁用Wayland,强制使用Xorg

  • ✅ 兼容UEFI/BIOS双引导设备

三、写入u盘做启动盘 

sudo dd if=~/ubuntu_2404_auto.iso of=/dev/sdX bs=4M status=progress oflag=sync

x58@x58:~$ sudo dd if=~/ubuntu_2404_auto.iso of=/dev/sdc bs=4M status=progress oflag=sync
6337593344 字节 (6.3 GB, 5.9 GiB) 已复制,635 s,10.0 MB/s
输入了 1511+1 块记录
输出了 1511+1 块记录
6338052096 字节 (6.3 GB, 5.9 GiB) 已复制,636.118 s,10.0 MB/s
 

<think>嗯,用户的问题是想要在Ubuntu 22.04中解决缺少Ubuntu on Xorg的问题,想知道如何安装或启用它。首先,我需要回忆一下相关的知识。根据提供的引用内容,Ubuntu 22.04默认使用Wayland作为显示服务器,但某些情况下切换到Xorg会更稳定,尤其是对于Fcitx输入法和一些第三方工具如flameshot的支持。用户可能遇到了类似的问题,比如无法使用某些主题或应用,因此需要切换回Xorg。 首先,我应该检查用户提到的引用内容。引用[1]提到Fcitx在升级后无法使用,原因是GDM相关的问题,涉及Xorg与Wayland。引用[3]建议切换到Ubuntu on Xorg来解决主题和工具的问题。所以,解决方法应该涉及到登录时选择Xorg会话。 接下来,我需要确认如何在Ubuntu 22.04中启用Xorg。根据引用[3],用户应该在登录界面的右下角选择会话类型。但用户可能找不到这个选项,所以需要进一步指导。可能的原因是没有安装必要的桌面环境或相关包。引用[2]提到检查已安装的桌面环境包,比如gnome、xorg等,可能需要安装这些包才能显示选项。 因此,步骤可能包括:1. 检查是否安装了Xorg相关的包,比如xorg或ubuntu-session;2. 如果没有,安装它们;3. 重新启动GDM或系统,使得登录界面出现Xorg选项;4. 在登录时选择Ubuntu on Xorg。 同时,需要注意Wayland和Xorg的区别,以及切换后可能需要的配置,比如输入法或截图工具的重新设置。另外,如果用户在安装过程中遇到问题,可能需要更新系统或添加仓库源。 需要确保所有的命令正确,比如使用apt安装xorg,或者ubuntu-session包。可能还需要处理GDM配置,比如修改/etc/gdm3/custom.conf文件,取消Wayland的禁用选项,但这通常在安装Xorg后会自动处理。 另外,用户可能已经安装了桌面环境,但缺少某些组件,所以需要运行类似dpkg -l | grep相关包的命令来确认安装状态。如果发现没有安装,就使用sudo apt install进行安装。 总结步骤:安装必要包,重启,选择会话。如果仍然不显示选项,可能需要进一步检查日志或配置。最后,提醒用户切换后的注意事项,比如兼容性和功能差异。</think>### 解决方案:在 Ubuntu 22.04 中启用 Ubuntu on Xorg #### 1. 检查并安装必要组件 首先确认系统是否已安装完整的 Xorg 和 GNOME 组件: ```bash sudo apt update sudo apt install xorg ubuntu-session gdm3 ``` 如果已安装但配置异常,可尝试重新安装: ```bash sudo apt install --reinstall xorg ubuntu-session ``` 此步骤确保基础显示服务和桌面环境组件完整[^2]。 #### 2. 修改 GDM 配置(可选) 默认情况下,Ubuntu 22.04 的 GDM 登录管理器可能隐藏 Xorg 选项。编辑 GDM 配置文件: ```bash sudo nano /etc/gdm3/custom.conf ``` 找到 `#WaylandEnable=false` 并取消注释,保存后重启 GDM: ```bash sudo systemctl restart gdm3 ``` 此操作强制显示 Xorg 选项[^1][^3]。 #### 3. 登录时选择 Xorg 会话 重启或注销后,在登录界面: 1. 点击用户名下方的 **齿轮图标**(右下角) 2. 选择 **Ubuntu on Xorg** 3. 输入密码登录 #### 4. 验证会话类型 登录后打开终端,输入: ```bash echo $XDG_SESSION_TYPE ``` 若输出 `x11` 或 `xorg`,则表示已成功切换。 --- ### 注意事项 - **兼容性问题**:Xorg 对老旧硬件或特定软件(如 Fcitx、flameshot)兼容性更好,但可能不支持 Wayland 的新特性(如高分辨率缩放)。 - **性能差异**:Wayland 在触控板手势和混合显卡支持上更优,Xorg 在多显示器配置中更稳定。 - **临时恢复**:若需返回 Wayland,重复步骤 3 并选择 **Ubuntu**(默认选项)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值