admin管理员组

文章数量:1568306

使用U盘安装Ubuntu系统

  • 说明
    • 使用环境
    • 格式化U盘
    • 安装grub引导程序
    • 重启进行安装
    • 关于ubuntu的一些问题
      • 参考资料

说明

在u盘上安装grub引导程序,然后从bios处以u盘启动进行ubuntu系统的安装。

使用环境

  1. 个人笔记本
  2. 32G U盘
  3. ubuntu24.04LTS 镜像
  4. 可用的debian类操作系统(用来安装grub)

格式化U盘

注意:如果U盘文件系统格式符合要求,该步骤可以省略!格式化会导致U盘数据全部丢失,如果需要请提前备份!

U盘将分为两个分区,一个fat32用来安装grub引导程序;一个ntfs的vfat用来放系统镜像,
因为fat32最大支持4G文件,而镜像有5G以上。

对U盘进行分区或者格式化可以通过多种形式进行,比如:
windows磁盘管理(建议,简单方便)
ubuntu的磁盘管理
ubuntu命令行
此处分区不做介绍,仅记录格式化文件系统的操作。

# 查看u盘的名称和标识
df -h
# print 此处我的u盘两个分区分别为/dev/sda2、/dev/sda1

# 格式化第一个分区 fat32
sudo mkfs.vfat -F 32 /dev/sda2
# 格式化第二个分区 vfat
sudo mkfs.vfat /dev/sda1

# 查看硬盘分区uuid
lsblk -o name,uuid
# print 此处/dev/sda1 为3847F8694DA123C3 ,/dev/sda2 为58BB-123B

安装grub引导程序

在/dev/sda2分区上面安装grub

# 挂载分区
sudo mkdir /mnt/usb/
sudo mount /dev/sda2/ /mnt/usb/

# 安装
sudo grub-install --force --removable --no-floppy --target=x86_64-efi --boot-directory=/mnt/usb/boot --efi-directory=/mnt/usb

复制以下配置文件到 /mnt/boot/grub/grub.cfg

# This Menu entry brought to you courtesy of https://www.pendrivelinux/boot-multiple-iso-from-usb-via-grub2-using-linux/

set timeout=60
set default=0

insmod ntfs

# 此处是需要安装系统的引导配置项
menuentry "ubuntu-24.04-desktop-amd64" {
 # 设置root,该分区是u盘的/dev/sda1,为iso所在的分区
 # root用来标记引导的根目录,后续配置及命令以该路径为起点
 # (hd0,msdos1)为grub识别到的硬盘分区序号
 # 在重启后以u盘启动进入grub命令行中,输入ls查看所有列表,ls (hd0,msdos1)查看指定分区信息
 # 可以使用 search --no-floppy --fs-uuid --set=root UUID=3847F8694DA123C3 命令替代
 set root='(hd0,msdos1)'
 # isofile为镜像所在路径
 set isofile=/ubuntu-24.04-desktop-amd64.iso
 # 挂载镜像
 loopback loop $isofile
 # 设置引导启动
 linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noeject noprompt splash --
 # 此处需要确定镜像中/casper/initrd是否存在,名称有些是带lz后缀的
 initrd (loop)/casper/initrd
}
# 配置截至

menuentry "Ubuntu Desktop ISO" {
 loopback loop /ubuntu.iso
 linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu.iso noeject noprompt splash --
 initrd (loop)/casper/initrd.lz
}

menuentry "Debian Live ISO" {
 loopback loop /debian.iso
 linux (loop)/live/vmlinu* boot=live iso-scan/filename=/debian.iso components noeject noprompt splash --
 initrd (loop)/live/initrd*
}

menuentry "Linux Mint ISO" {
 loopback loop /linuxmint.iso
 linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper initrd=/casper/initrd.lz iso-scan/filename=/linuxmint.iso noeject noprompt splash --
 initrd (loop)/casper/initrd.lz
}

menuentry "DBAN ISO" {
 loopback loop /dban.iso
 linux (loop)/DBAN.BZI nuke="dwipe" iso-scan/filename=/dban.iso silent --
} 

menuentry "Tinycore ISO" {
 loopback loop /tinycore.iso
 linux (loop)/boot/bzImage --
 initrd (loop)/boot/tinycore.gz
}

menuentry "Memtest 86+" {
 linux16 /memtest86+.bin
}

menuentry "SystemRescueCd" {
 loopback loop /systemrescuecd.iso
 linux (loop)/isolinux/rescuecd isoloop=/systemrescuecd.iso setkmap=us docache dostartx
 initrd (loop)/isolinux/initram.igz
}

重启进行安装

  1. 重启电脑
  2. 进入bios
  3. 选择u盘启动
  4. 进入grub菜单后选择 “ubuntu-24.04-desktop-amd64” (默认第一项)
  5. 安装系统

关于ubuntu的一些问题

  1. amd显卡高刷新率情况下闪屏,解决办法是关闭PSR
# /etc/default/grub 添加如下配置 amdgpu.dcdebugmask=0x10 amdgpu.sg_display=0
GRUB_CMDLINE_LINUX_DEFAULT="quiet splashi amdgpu.dcdebugmask=0x10 amdgpu.sg_display=0"

# 更新grub配置
update-grub
# 重启生效

参考资料

手动安装GRUB2引导多个ISO,U盘启动多个系统不再是难题 多系统合一启动安装U盘制作 无需任何第三方软件程序

解决7840hs在linux下闪烁及白屏的bug

本文标签: 系统grubUbuntu