archlinux
If you want a stable rolling distribution, almost all paths lead to archlinux. This is in fact a root distribution (not derived from slackware/debian/redhat...).
At first i downloaded a bare metal image where you must do almost everything by hand, but later on i found a separate image that has a better setup program called archboot.
I have yet to try that out, because i started with the image from archlinux itself.
manual installation
The manual installation is more work but it enables installing archlinux without destroying the disk. So i will explain it in that context here.
Get the iso from : visit Look for a mirror in Netherlands and get the .iso and .iso.sig versions. As you can see these are more up to date then the archboot downloads (2018).
Put the iso on a usb stick :
| create usb stick | |
|---|---|
And boot into the first option : Boot Arch Linux (x86_64) You will get a command prompt and hopefully a working network interface.
| test | |
|---|---|
Now you are done on the console, and you can login remotely to finish.
disk
Now prepare the disk to be used with something like :
Or in my case use the existing partition from a failed debian upgrade (servert) and mount it :
| mount | |
|---|---|
Now we have to install some packages without still having a new root, and pacstrap is able to do that. The arguments (after /mnt) are just packages so you can add more if needed.
| pacstrap | |
|---|---|
This will install base packages like bash etc. Now create an /etc/fstab file with the following command :
| genfstab | |
|---|---|
You should now be able to chroot into the new system:
If needed (to reboot for instance) you can exit chroot with ... exit Now some things an installer would do for you, but since this is a rolling distro you only have to do them once :
| setup | |
|---|---|
bootloader
We use grub2. Note that installing grub installs grub2, grub-legacy would install grub1. -S means sync.
| grub | |
|---|---|
upgrade
This command is the one that get's you 'rolling'. Since we installed this from a fresh iso file nothing much will be done.
| upgrade | |
|---|---|
uninstall
Simply uninstalling is done with -R (remove) but use the second format (
| uninstalling | |
|---|---|
While we are at it, to install virtualbox, use the second choice on installation.
All these are needed before virtualbox starts up. Find a way to get these modules loaded at boot (todo).
network
If you reboot now there will be no network, so :
One of the interfaces should say UP, so that's the one with cable attached. Create a file with that name in :
| /etc/systemd/network/enp3s0f0.network | |
|---|---|
Also you will need DNS so vim /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
| enable network | |
|---|---|
I forgot the sshd lines so these are not actually tested. Now you probably will get another ip address than the one during installation, so try one higher or look at the console to see.
If this is an external system maybe better revert the PermitRootLogin when you have users added.
If everything went ok you now have a new (rolling) system and still have your home directory.
useradd
This command actually worked because the first user id on archlinux is 1000 just as in debian, and i again was the first user added so :
| add users | |
|---|---|
After this i could login without a passwd, but this makes sense since my ~/.ssh directory was now in place !
Now if you suspect some of the skel directory is needed you can find it in /etc/skel. However note that the annoying tab completion is set in those files.
pacman
As mentioned before this command should be run frequently to update the system:
| package manager | |
|---|---|
For package installations you should use -S
| package manager | |
|---|---|
The -y is the 'refresh' flag and seems the equivalent of apt-get update :
Removing packages can be done with -R, but with -Rns you avoid orphaned dependencies and erase global configuration so :
| package manager | |
|---|---|
Listing the installed packages is :
But listing from the repo is another -S (sync) command :
| sync | |
|---|---|
This matches all packages that hold the name, so you could do something like :
| find | |
|---|---|
Though that one does not get what you want, its base-devel. This is a meta-package which shows at the start what packages are in it.
AUR
Arch linux User Repository, for packages built from source. As an example I will try to get debtap via AUR.
debtap is a DEBian To Arch Packager.
You can find it on the repository site : visit
First check the dependencies and install if needed via pacman, then download the files :
| arch user repo | |
|---|---|
The package will be called something like debtap-3.2.2-1-any.pkg.tar.xz, install it with pacman :
| debian to arch packager | |
|---|---|
In this case it failed with a dependency error, so you should then find that package as well, and do the same path, but i bailed out here. If all goes well you should have an .xy package that can be installed with pacman -U
postgres
| postgres | |
|---|---|
For more initialization, this is the url I got this from : visit
install from existing linux
This is an attempt to install without live usb stick. So this could be done entirely over ssh ! If you have the opportunity to boot with an usb stick it will be less work !
You cannot 'overtake' a running partition because it will not release /dev etc.
This taken from : visit
I tried doing parted resizing on the active partition, but it does ruin your main system, so just don't try this unless you have a clean and unused partition to install to !!. If you don't : use an usb image, see previous chapters.
get bootstrap image
We need an archlinux system to install the actual system, but we also have to mount the main partition at some point, and then we lose the bootstrap system. So to solve that we use the swap partition to install the temporary bootstrapper and revive the swap later on.
Double check your partition names in all commands below !!!
| bootstrap the image | |
|---|---|
Select a repository
You will have to do this outside of the chroot because you have no descent editor there :
bootstrap the installer
Now we have to chroot into the system, because we need commands like pacman, genfstab etc. But it will give errors if we don't do this command first :
| bootstrap installer | |
|---|---|
We are now inside an archlinux system capable of installing the actual system. Inside it we initialize some stuff :
| initialize | |
|---|---|
The steps from here on are like the usb-install (search for pacstrap above).
installation of system
Whenever you got a running system, here is how to get it functional. This one is from scratch using vagrant.
Now setting up the key ring.
| key ring | |
|---|---|
Now install mate :
| mate desktop | |
|---|---|
Since this will give you a login screen, but not fullscreen. So you will need to install the guest-additions to get it to full resolution.
| virtualbox fullscreen | |
|---|---|
This will help in getting full resolution. Now you have a start system to install further.