The public release of opensuse 12.2 should be on Sept. 05. Naturally, I am preparing for installation. This post will review my practices when installing a new version.
The installer allows either the upgrade of an existing system to the new version, or a clean install of the new version. I always choose a clean install, though I preserve my “/home” partition with all user data. The disadvantage of a clean install, rather than an upgrade, is that I lose all system level customizations that I had done for the prior system. The advantage of a clean install, is that I lose all system level customizations, some of which might happen to be not fully compatible with the new version.
If installing from a live CD, then only a clean install is possible. That’s because space on the CD is limited, so the CD does not contain all that is needed to upgrade an existing system.
The first step is to download the “iso” file for the DVD image. That link currently redirects to the 12.1 download page, but should instead take you to the 12.2 download page once it has been officially released.
On the download page, choose which image you want. I will be using the DVD image. In the past, I have also used the live KDE image and the network image. The live CD images provide only a clean install, basically by copying the running system on the CD to your disk. This gives the fastest possible install, but you might later have to add additional software from the repos. The network image also fits on a DVD, and allows a complete install. However, it will be installing over the network from the repos available on the Internet. Choose that, only if you have a reliable Internet connection. The DVD image provides a full install, though you might still wish to add some additional software that did not fit on the DVD.
There are links on the download page, explaining various ways of downloading the iso, and of writing it to a CD or DVD or USB. I will describe what I currently use.
My current method of downloading, is to use aria2c. That is optional software that you can choose to install. I open a terminal window, and there I “cd” to the directory where I want to save the downloaded image. In my browser, I select the image that I want, say a 64 bit DVD image. Then I check the box for “Pick Mirror”. That opens a page of mirrors from which the iso can be downloaded. Near the top of the page, is a link labeled “Metalinks for reliable downloads.” I right click on the IETF Metalink provided, and copy that. Then, back in the terminal, I past that into a command line:
% aria2c the-metalink
where “the-metalink” is replaced by the actual link. That begins the download, and is able to combine data from several mirrors. With my current internet connection, that probably takes just under 1 hour to complete the download.
I then copy the image to a USB. Full directions for this, or for writing to a CD or DVD, are available at a link from the download page. In short, I first run “isohybrid” on the DVD image, and then use “dd_rescue” to copy to the USB device.
Loading the install image
How to boot from a CD, a DVD, or a USB varies with the hardware and BIOS. You will have to work out how to do that for yourself. On recent Dell systems, hitting F12 during boot gives you a menu. On some other systems, you might need a BIOS setting. On some older systems, you might need to install PLOP boot manager in order to boot from an USB device.
The first page after booting gives you some choices. If you are ready to install, choose installation. If you are booting the DVD image from a USB, then hit F4 and select “hard disk” as the install source. If you are booting a live CD, then an alternative is to boot the live system and then install from the running live system.
After booting the installer, I often see a popup, warning me that the partitioner cannot change “/dev/sdb”. That is because I have booted from a USB, and that USB is formatted in a hybrid form that makes it look a bit like a CD or DVD, which the partitioner does not want to touch. I click the “ok” button, and proceed.
Next, there is license agreement (or EULA), which I accept. The next screen is for selecting the clock settings. It shows a map, so I click on the vicinity of Chicago, for the appropriate time. I also check the “UTC” setting (use UTC for the hardware clock) because I find that better. There are Windows settings that allow recent Windows versions to use UTC for the hardware clock. On an older laptop with XP, where those windows settings were unreliable, I just used UTC in Windows.
The installer next asks for a user account to setup. I discussed my user accounts in an earlier post. I give the “support” account as the one to be initially setup. I do that partly because “support” is to be the administrative user, and after install some initial administrative work will be needed to customize the system. Additionally, since I normally don’t use “support” for desktop (GUI) logins, it won’t matter if I initially mess up the desktop settings for user “support”.
There’s an option on the user setup page, to automatically login to the configured user. I uncheck that box, because logins to “support” are temporary only, while configuring the system.
The next stage of installation is the partitioner. Somewhere, around this time, I am prompted for the encryption key for any encrypted partitions. I give that key, if appropriate.
The partitioner then suggests how to partition, but provides some options for changing the suggestions. For a first ever install, taking the suggestions is probably the simplest choice. My most recent install was on a completely clean disk. In that case, I chose the option “Create partitioning”. That allowed me to setup the partitions exactly as I wanted them.
For most of my installs, I am using a system which already has linux. The partitioner gives me an option to Import partitioning. I select that. If I have two different linux systems on the same disk, then I have to select which of those to use. Importing a previous setup makes partitioning quite easy. The partitioner will want to reformat the root partition and the “/boot” partition (if that is a separate partition). If you want to retain your “/home” partition, then make sure that is not set for reformatting.
Partitioning and encryption
If you already have encrypted partitions, then importing will normally preserve those as encrypted. If you are setting up encryption for the first time, then check the “crypto” link on this blog page for details.
There is one place where I find that encryption causes minor problems. And that is when I have swap setup for encryption with a random key. In that case, if I attempt to import the partitioning setup, the installer demands the key for swap. And since that key is random (and reset for each boot), I don’t know what it is. In that situation, my recommendation is that you convert swap back to unencrypted before the install. I do that by turning off swap while running that system. Then I change “/etc/fstab” to list the unencrypted swap device, and I delete the swap entry from “/etc/cryptsetup”. I then run “mkswap” on the unencrypted swap partition. Then I am ready for the install and won’t be prompted for an encryption key for swap.
The next part of the install is a page for other changes. One thing that can be changed, is how to boot. Most of the time, the defaults are fine.
That’s the last setting if installing from a live CD image.
In installing from DVD or the network CD, there is an option near the bottom of the screen for SSH. I always click “enable” so that the server starts and the firewall is open for SSH logins.
The remaining choices are on which software to install. Here, you are pretty much on your own, deciding what you want. I usually install KDE, Gnome, LXDE and XFCE. I switch from “icewm-lite” to “icewm-default”, and I select “sendmail” for email. I also select “aria2c”, “dd_rescue”, “syslinux”, “rcs”, “dar” and a few other packages. It isn’t important to select everything here. You can come back later to add software.
At that point, I click on “Install” to complete the process.
It is a nice feature of the opensuse installer, that nothing has actually been changed on disk until that final install step. So, if you mess up at any point, you can abort the install, and then boot the install disk again for a fresh start.
First boot and customization
The installer chugs away for a while, installing. When it is done, it reboots. After reboot, it will do a little more setup. That is actually when it creates the user account that you had configured.
After the final setup, you can login to the desktop. For me, that is a login to user “support”. And there, I will have to customize the system to suit my needs.
I actually keep a log of changes made during customization. I put that log in a directory on the “/home” partition. Since I preserved “/home” from an earlier system, I can follow the previous customization steps.
Briefly, they include setting up other user accounts, setting the hostname to what I want, perhaps configuring WiFi on a laptop, perhaps adding additional software that is only in the online repos.
I also, as root, run “mkinitrd”. The initial “initrd” was created when booted from the install media, and that doesn’t alway get everything right. So running “mkinitrd” from the installed system is probably a good idea.
After the initial customization, I then reboot. And after that, I normally login as my usual user account (instead of as “support”). I will eventually delete the desktop customization files for user “support”, but those can stay around for a while.
My most recent install was on a clean disk. So I had no saved “/home”, and no saved customization change log.
I actually wanted to use home directories from earlier system. So I had backed those up to an external drive. On the new system, as a root user, I restore “/home” from the backup. In actual practice, I create “/home/x” and restore home into there. Then I move most of the directories from there to “/home”. I do it that way, because I am probably logged in as user “support”, and I don’t want to clobber files that I am currently using. I move everything other than “lost+found” and “support” from the restored “/home/x” into “/home”. I delete the “lost+found” from “/home/x”. At some later time, when not logged in as “support”, I will delete the newly created “/home/support” and move the “/home/x/support” to “/home”.