从USB Live Session启动时如何绕过“试用/安装”界面? (无需安装在USB中)
这已被问过几次了(我在这里 , 这里和这里都找到了 ),但基本上每个人都建议完全安装到USB记忆棒。 但我确实需要它作为LIVE会话,而不是“USB上的完全安装”,原因有很多(最重要的一点是使用Live会话我可以使用桌面图标轻松安装Ubuntu)
因此,我跳过欢迎屏幕的约束(并自动选择“尝试Ubuntu”选项)是:
-
它实际上必须是Ubuntu Live会话(或尽可能接近默认值)。 相同的软件选择(gparted存在于实时会话中,gimp不存在,例如),用户(名称和ID),行为(没有登录屏幕,没有
sudo
密码,仅举几例),没有GRUB等。在USB上完成Ubuntu的完整安装。 -
它必须能够在计算机中安装Ubuntu(完整安装需要ISO文件,额外的USB记忆棒,以及Startup Disk Creator的麻烦)
-
如果可能的话,要像“基于文本的启动器”一样快(在内核加载后立即按下键的那个)
-
它必须是完全自动的,无人值守从启动到桌面。
-
选择与默认语言不同的语言。 它可以是一个硬盘选择(实际上,它必须,因为引导本身应完全无人看管)。 但最好是轻松更改(“轻松”,如编辑配置文件,然后重新启动)
可能吗?
到目前为止,我已经排除的提议(伟大)解决方案是:
-
在USB记忆棒中安装Ubuntu (出于上述所有原因)
-
删除
Ubiquity
包(它也删除了从该USB安装系统的能力) -
Ubuntu定制工具包(ubk): 一些限制和警告 ,甚至没有在回购
-
Remastersys / LiLi: 与完全直接USB安装相同,仅定制。
一个理想的解决方案是“使用Startup Disk Creator创建USB生病,然后打开它并删除/编辑/添加文件xxx,yyy,zzz”
本指南是为Ubuntu(Gnome)制作的。 除了一些例外,它也适用于Kubuntu(KDE)
我已经能够将Live CD启动直接进入Live会话而不会超时或花哨菜单,可选择安装语言包。
直播USB(16.04)
- 安装Ubuntu安装USB
- 备份文件
syslinux/syslinux.cfg
。 我们将修改它,以便在出现问题时我们需要更换它。 - 在syslinux目录下打开以下文件:
syslinux.cfg
和txt.cfg
- 删除(或注释)
syslinux.cfg
所有内容。 -
txt.cfg
文件具有默认的GRUB菜单项。 将实时复制到syslinux.cfg
:default live label live menu label ^Try Ubuntu without installing kernel /casper/vmlinuz.efi append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
-
您可以在追加行中添加设备所需的任何特定内核参数。
- 保存isolinux.cfg并使用USB启动系统。 它现在将直接启动到桌面。
直播USB(13.10)
- 安装Ubuntu安装USB
- 备份文件
isolinux/isolinux.cfg
。 我们将修改它,以便在出现问题时我们需要更换它。 - 在isolinux目录下打开以下文件:
isolinux.cfg
和txt.cfg
- 删除
isolinux.cfg
所有内容。 -
txt.cfg
文件具有默认的GRUB菜单项。 将live one复制到isolinux.cfg
:default live label live menu label ^Try Ubuntu without installing kernel /casper/vmlinuz.efi append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
-
您可以在追加行中添加设备所需的任何特定内核参数。
- 保存isolinux.cfg并使用USB启动系统。 它现在将直接启动到桌面。
[ 来源 ]
直播USB(11.04)
- 转到Live USB的根文件夹
- 输入
syslinux
目录 - 使
syslinux.cfg
文件可写 -
用以下内容替换
syslinux.cfg
文件的内容:default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash noprompt --
- 可选:本地化系统(见下文)
Live CD
-
如果您的CD驱动器中有Live CD,请安装它。 否则,如果您有可用的ISO文件,请通过在终端中运行下一个命令将其挂载到
/media/cdrom
(相应地替换.iso
文件的名称):sudo mount -o loop,ro ubuntu-11.04-desktop-amd64.iso /media/cdrom
- 创建一个临时目录,可以存储CD内容,比如
~/live-cd
(mkdir ~/live-cd
) - 将CD的内容复制到
~/live-cd/iso
文件夹(cp -r /media/cdrom ~/live-cd/iso
) - 由于不再需要Live CD,因此可以卸载它(
sudo umount /media/cdrom
) - 打开
~/live-cd/iso
文件夹(cd ~/live-cd/iso
) - 进入
isolinux
目录(cd isolinux
) - 使
isolinux.cfg
文件可写(chmod u+w isolinux.cfg
) -
将文件
isolinux.cfg
的内容替换为:default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
- 可选:本地化系统(见下文)
-
打开终端并运行:
cd ~/live-cd chmod u+w iso/isolinux/isolinux.bin mkisofs -r -V "Ubuntu Live session" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ubuntu-11.04-live-amd64.iso iso
- 新的iso将在
~/live-cd/ubuntu-11.04-live-amd64.iso
。 为了节省空间,可以删除~/live-cd/iso
目录。 (rm -rf ~/live-cd/iso
) - 现在,如果需要,在CD上刻录
ubuntu-11.04-live-amd64.iso
文件。
本地化Ubuntu(翻译)
如果您希望系统使用英语,西class牙语,葡萄牙语,科萨语或简体中文语言,您只需将en
, es
, pt
, xh
或zh
的locale=
boot选项添加到append
行,如下所示:
... quiet splash locale=pt --
否则,如果您不想修改包含根文件系统( filesystem.squashfs
)的filesystem.squashfs
并且不介意乱砍,请继续阅读。
打开终端并导航到~/live-cd/iso
目录,并将http://pastebin.com/VTdt9WFZ中的代码放入一个文件(将其命名为install-locale
)并运行它。
此脚本安装filesystem.squashfs
,从中检索语言包的版本信息,下载软件包并将其放在locale-hack
目录中。 接下来,创建一个脚本,用于在引导时安装语言包。 为了实现这一目的,该脚本还修改了syslinux.cfg
或isolinux.cfg
文件以应用这些更改。
系统会要求您输入区域设置,输入类似nl
或de
。 对于像Dutch
或German
这样的东西,这个剧本并不聪明。 之后,可以删除该文件
应该执行的终端命令:
cd ~/live-cd/iso wget http://pastebin.com/raw.php?i=VTdt9WFZ -O install-locale bash install-locale rm install-locale
请注意,添加语言包可能会导致生成的.iso
文件大于700MB,这不适合CD。 但是,对于虚拟机来说,它就足够了。 这个黑客有一个副作用,普利茅斯不起作用(即你没有得到一个花哨的启动画面),但至少在登录时翻译系统。否则,你必须手动安装language-pack-gnome-*
。
参考
- Syslinux的例子
- Ubuntu帮助自定义磁盘/刻录它
以上工作适用于Startup Disk Creator和UNetbootin安装。 如果您使用的是持久性闪存驱动器,则需要添加“持久性”一词:
default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz append file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --
对于64位系统,代码有点不同
default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz.efi append file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --
在14.04和更早的时候,Ubiquity使用暴发来开始。 您可以通过修改/etc/init/ubiquity.conf
来禁用它。
1)如果您没有使用Live安装本身,请首先安装casper-rw:
# Mount the usb_drive manually if nautilus has not done it for you # Change sdb1 to the proper location of your usb drive, find it using sudo blkid sudo mkdir /media/$USER/usb_drive sudo mount /dev/sdb1 /media/$USER/usb_drive # Create a mount point for the read-write file system and mount via loopback sudo mkdir /media/$USER/casper-rw sudo mount -o loop /media/$USER/usb_drive/casper_rw /media/$USER/casper-rw cd /media/$USER/casper-rw
2)在Live安装中编辑etc/init/ubiquity.conf
并注释掉以下行:
#start on (starting gdm # or starting kdm # or starting xdm # or starting lxdm # or starting lightdm)
如果要重新制作磁盘,可以在squashfs系统中编辑master ubiquity.conf
。 在重新启动时,Ubiquity将完全脱离你的方式。
3)卸下驱动器
sudo umount /media/$USER/*
你有什么理由想要remastersys吗? 你可以安装os,用remastersys提取一个iso提取squashfs文件并替换stock iso上的那个(或premade usb文件夹)
我经常这样做