This has been asked several times already (I found it here, here and here), but basically everyone simply recommend to perform a full install to the USB stick. But I do need it to stay as a LIVE session, not a "full install on USB", for a number of reasons (the most important one being that using Live session I can easily install Ubuntu using the desktop icon)
So, my constraints for skipping the Welcome Screen (and automatically choose "Try Ubuntu" option) are:
It must actually be the Ubuntu Live session (or as close to the default as possible). Same software selection (gparted is present in live sessions, gimp is not, for example), user (name and ID), behavior (no login screen, no password for
sudo
, to name a few), no GRUB, etc. That rules out an Ubuntu full install on USB.It must be able to install Ubuntu in the computer (while full install requires the ISO file, an additional USB stick, and the hassle of Startup Disk Creator)
If possible, to be as fast as the "text-based launcher" (the one you have when you press a key right after the kernel loads)
It must be completely automatic, unattended from boot to desktop.
Select a different language than default. It can be a hard-corded selection (actually, it must, since boot itself shall be fully unattended). But preferably be easily changed ("easily" as in editing a config file then rebooting)
Is it possible?
The proposed (great) solutions that I've ruled out so far are:
Installing Ubuntu in the USB stick (for all of the above mentioned reasons)
Remove
Ubiquity
package (it removes the ability to install the system from that USB as well)Ubuntu Customization Kit (ubk): several limitations and caveats, and its not even in the repos
Remastersys / LiLi: its the same as full direct USB install, only customized.
An ideal solution would be something like "create USB sick using Startup Disk Creator, then open it and remove / edit / add file(s) xxx, yyy, zzz"
This guide was made for Ubuntu (Gnome). It works for Kubuntu (KDE) too, with a few exceptions
I've been able to get the Live CD boot straight into a Live session without timeout or fancy menu, optionally with a language pack installed.
Live USB (16.04)
syslinux/syslinux.cfg
. We will modify it so we need to replace it back if something goes wrong.syslinux.cfg
andtxt.cfg
syslinux.cfg
.The
txt.cfg
file has the default GRUB menu entries. Copy the live one tosyslinux.cfg
:You can add any specific kernel parameters needed for your device in the append line.
Live USB (13.10)
isolinux/isolinux.cfg
. We will modify it so we need to replace it back if something goes wrong.isolinux.cfg
andtxt.cfg
isolinux.cfg
.The
txt.cfg
file has the default GRUB menu entries. Copy the live one toisolinux.cfg
:You can add any specific kernel parameters needed for your device in the append line.
[source]
Live USB (11.04)
syslinux
directorysyslinux.cfg
file writeableReplace the contents of the file
syslinux.cfg
with:Live CD
If you've a Live CD in your CD drive, mount it. Otherwise, if you've an ISO file available, mount it on
/media/cdrom
by running the next command in a terminal (replace the name of the.iso
file accordingly):~/live-cd
(mkdir ~/live-cd
)~/live-cd/iso
(cp -r /media/cdrom ~/live-cd/iso
)sudo umount /media/cdrom
)~/live-cd/iso
folder (cd ~/live-cd/iso
)isolinux
directory (cd isolinux
)isolinux.cfg
file writable (chmod u+w isolinux.cfg
)Replace the contents of the file
isolinux.cfg
with:Open a terminal and run:
~/live-cd/ubuntu-11.04-live-amd64.iso
. To save space, the~/live-cd/iso
directory can be removed. (rm -rf ~/live-cd/iso
)ubuntu-11.04-live-amd64.iso
file on a CD if needed.Localize Ubuntu (translations)
If you want the system in the languages English, Spanish, Portuguese, Xhosa or Simplified Chinese, you've just to add the
locale=
boot option withen
,es
,pt
,xh
orzh
to theappend
line as in:Otherwise, if you do not want to modify the file containing the root file system (
filesystem.squashfs
) and do not mind hacking around, continue reading.Open a terminal and navigate to the
~/live-cd/iso
directory and put the code from http://pastebin.com/VTdt9WFZ in a file (name itinstall-locale
) and run it.This script mounts the
filesystem.squashfs
, retrieves version information of the language packs from it, downloads the packages and put those in the directorylocale-hack
. Next, a script is created that installs the language packages on boot time. To make that work, the script also modifies thesyslinux.cfg
orisolinux.cfg
file to apply these changes.You'll be asked for a locale, enter something like
nl
orde
. The script is not that clever to understand things likeDutch
orGerman
. Afterwards, the file can be removedThe terminal commands that should be executed:
Note that adding language pack can cause the generated
.iso
file to be bigger than 700MB which won't fit on a CD. For virtual machines however, it suffices. This hack has as a side-effect that Plymouth does not work (i.e. you do not get a fancy boot screen), but at least the system is translated when logging in. Otherwise, you had to installlanguage-pack-gnome-*
manually.References
The above works great for both Startup Disk Creator and UNetbootin installs. If you are using a persistent flash drive you will want to add the word persistent thus:
For a 64 bit system the code is a little different
In 14.04 and perhaps earlier, Ubiquity uses upstart to start. You can disable this by modifying
/etc/init/ubiquity.conf
.1) If you are not using the Live install itself, first mount casper-rw:
2) Edit
etc/init/ubiquity.conf
within the Live install and comment out the following lines:If you are remastering the disk, you could just edit the master
ubiquity.conf
in the squashfs system. Ubiquity will then be completely out of your way upon restart.3) Unmount the drives
Any reason u didnt want remastersys? You could install the os, make an iso with remastersys extract the squashfs file and replace the one on the stock iso, (or premade usb folder)
I do this often