在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
 

C:\Users\11247\Downloads\ubuntu-24.04.2-desktop-amd64.iso 文件是一个ISO镜像文件,通常用于安装操作系统。具体来说,这个文件是Ubuntu 24.04.2桌面版的64位安装镜像。Ubuntu是一种流行的Linux操作系统,适用于个人电脑和服务器环境[^1]。 ### 如何使用此ISO文件 #### 1. 验证ISO文件的完整性 在使用ISO文件之前,建议验证其完整性以确保下载过程中没有损坏。可以通过检查文件的SHA256校验和来完成此操作。Ubuntu官方网站通常会提供相应的校验和文件(如SHA256SUMS),用户可以使用命令行工具进行验证: ```bash sha256sum ubuntu-24.04.2-desktop-amd64.iso ``` 将输出的哈希值与官方提供的哈希值进行比较,确保它们匹配[^1]。 #### 2. 创建可启动的USB驱动器 要使用此ISO文件安装Ubuntu,通常需要将其写入一个USB闪存驱动器以创建一个可启动的安装介质。可以使用工具如Rufus(Windows)或UNetbootin(跨平台)来完成此操作。 - **使用Rufus**: 1. 插入USB驱动器。 2. 打开Rufus并选择插入的USB驱动器。 3. 在“引导选择”部分,点击“选择”并浏览到下载的ISO文件。 4. 确保文件系统设置为FAT32或exFAT,并选择适当的分区方案。 5. 点击“开始”以创建可启动的USB驱动器。 - **使用UNetbootin**: 1. 下载并安装UNetbootin。 2. 打开UNetbootin并选择“磁映像”,然后浏览到下载的ISO文件。 3. 选择目标USB驱动器并点击“确定”。 4. 等待程序完成写入过程。 #### 3. 安装Ubuntu 创建好可启动的USB驱动器后,将其插入目标计算机,并重启计算机。进入BIOS或UEFI设置,将启动顺序更改为首先从USB设备启动。保存更改并退出,计算机将从USB驱动器启动并进入Ubuntu安装界面。 在安装过程中,用户可以选择安装Ubuntu的选项,包括与现有操作系统并存、完全替换现有操作系统或自定义分区。根据提示逐步完成安装即可。 #### 4. 其他用途 除了用于安装操作系统外,ISO文件还可以用于虚拟机环境。例如,在VirtualBox或VMware中,可以直接将ISO文件作为虚拟光驱挂载,并在虚拟机中安装Ubuntu系统。 - **在VirtualBox中使用**: 1. 创建一个新的虚拟机并选择“Linux”作为操作系统类型。 2. 在虚拟机设置中,选择“存储”选项卡,然后点击“添加光驱”。 3. 选择“选择磁文件”并浏览到下载的ISO文件。 4. 启动虚拟机并按照提示安装Ubuntu- **在VMware中使用**: 1. 创建一个新的虚拟机并选择“Linux”作为操作系统类型。 2. 在虚拟机设置中,选择“CD/DVD (SATA)”设备,并选择“使用ISO镜像文件”。 3. 浏览到下载的ISO文件并确认。 4. 启动虚拟机并按照提示安装Ubuntu。 通过以上步骤,用户可以充分利用C:\Users\11247\Downloads\ubuntu-24.04.2-desktop-amd64.iso文件,无论是用于物理机安装还是虚拟机环境。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值