316 Zeilen
9.8 KiB
Markdown
316 Zeilen
9.8 KiB
Markdown
# Installation Arch Linux (e.g. on Lenovo Think Pad)
|
||
|
||
You have to disable secure boot in the BIOS. Enable virtualization and enable access to the USB for booting.
|
||
Also, you should disable `legacy mode` and enable `UEFI` in the BIOS.
|
||
|
||
Insert a prepared `ventoy` USB stick with already installed latest Arch Linux ISO file.
|
||
|
||
# Change keyboard layout to German language
|
||
```
|
||
# loadkeys de-latin1
|
||
```
|
||
|
||
## Connect to WLAN (Wi-Fi access)
|
||
If you have no ethernet access, only Wi-Fi, you can connect to the Access Point:
|
||
```
|
||
# iwctl
|
||
[iwd]# device list
|
||
```
|
||
At least one device, e.g. `wlan0`, should now appear.
|
||
|
||
```
|
||
[iwd]# station wlan0 scan
|
||
... wait a moment ...
|
||
[iwd]# station wlan0 get-networks
|
||
```
|
||
If, for example, the network is called ‘mynet’, then:
|
||
```
|
||
[iwd]# station wlan0 connect mynet
|
||
Passphrase: *******
|
||
[iwd]# exit
|
||
```
|
||
|
||
If the network is `eduroam` follow the next section:
|
||
|
||
### Connect to EDUROAM eduroam.8021x
|
||
|
||
Firstly, you have to create a new file at /var/lib/iwd/eduroam.8021x with:
|
||
|
||
All personal data, such as ma0079, and the password, must of course be replaced.
|
||
```
|
||
# cd /var/lib/iwd
|
||
# nano -cl eduroam.8021x
|
||
```
|
||
Content of the file:
|
||
```
|
||
[Security]
|
||
EAP-Method=TTLS
|
||
EAP-Identity=holo@technikum-wien.at
|
||
EAP-TTLS-Phase2-Method=MSCHAPV2
|
||
EAP-TTLS-Phase2-Identity=ma0079
|
||
EAP-TTLS-Phase2-Password=Ubdaed8.Dtdpmc!
|
||
EAP-TTLS-ServerDomainMask=radius.technikum-wien.at
|
||
|
||
[Settings]
|
||
AutoConnect=true
|
||
```
|
||
|
||
### Start the iwctl wireless connection tool
|
||
```
|
||
# iwctl
|
||
[iwd]# device list
|
||
```
|
||
At least one device, e.g. `wlan0`, should now appear.
|
||
|
||
```
|
||
[iwd]# station wlan0 scan
|
||
```
|
||
... wait a moment ...
|
||
```
|
||
[iwd]# station wlan0 get-networks
|
||
[iwd]# station wlan0 connect eduroam
|
||
Passphrase: *******
|
||
[iwd]# exit
|
||
```
|
||
|
||
## Check the internet connection
|
||
```
|
||
# ping -c 3 kuschel.at
|
||
```
|
||
|
||
## Remote access via SSH
|
||
|
||
If you are on the same network, you can easily access the machine via ssh.
|
||
First you have to give the user `root` a new password to get access via the pre-installed openssh with:
|
||
```
|
||
# passwd
|
||
```
|
||
Then within the same network, connect without using a strict host key check (no hosts file is put into .ssh directory)
|
||
|
||
Now from any linux machine in the same network, you can access that device with:
|
||
|
||
```
|
||
$ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet root@archiso.local
|
||
```
|
||
or if you know the ip address (e.g. 192.168.170.2) of the machine, it could also be established with:
|
||
```
|
||
$ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet root@192.168.170.2
|
||
```
|
||
|
||
# Start the arch installation script
|
||
Hint: If possible, use a terminal window with a minimum size of approximately 160 x 46 so that all entries are clearly visible, e.g. in the partition table.
|
||
```
|
||
# archinstall
|
||
```
|
||
### Archinstall language
|
||
```
|
||
English (100%)
|
||
```
|
||
### Locales
|
||
```
|
||
Keyboard layout: de-latin1
|
||
Locale language: en_DK.UTF-8
|
||
Locale encoding: UTF-8
|
||
```
|
||
Note: Using ‘en_DK’ instead of `de_DE` or `de_AT` is ideal for receiving English operating system messages.
|
||
In addition, the operating system uses European date/time formats.
|
||
The `en_DK.UTF-8` locale is not the only option for these formats; for example, `C.UTF-8` can also be used for 24-hour time.
|
||
However, `en_DK.UTF-8` is frequently recommended in the ArchWiki and community discussions as a practical choice for users who want a consistent, internationally recognized date and time format without relying on US-centric defaults.
|
||
It is also used in conjunction with other locales to mix and match formatting rules, such as using `en_GB.UTF-8` for language and `de_DE.UTF-8` for paper and measurement standards.
|
||
|
||
### Mirrors and repositories
|
||
```
|
||
Select regions: [x] Austria
|
||
[ ] China
|
||
[x] Czechia
|
||
[x] Worldwide
|
||
```
|
||
```
|
||
Additional repositories: [ ] multilib
|
||
[ ] testing
|
||
```
|
||
|
||
### Disk configuration
|
||
#### Partitioning
|
||
```
|
||
Disk configuration type > Use a best-effort default partition layout
|
||
|
||
```
|
||
Select the correct built-in hard drive that you want to format.
|
||
For instance:
|
||
```
|
||
Model | Path | Type | Size | Free space | Sector size | Read only
|
||
---------------------------------------------------------------------------------------------------
|
||
[ ] VendorC ProductCode | /dev/sda | scsi | 58.6 GiB | 0 | 512 | False
|
||
> [x] Samsung SSD 990 PRO 2TB | /dev/nvme0n1 | nvme | 1.8 TiB | 1907728 | 512 | False
|
||
```
|
||
Note: The `/dev/sda` is the USB stick, so we have to select and partition/format the `/dev/nvme0n1` device.
|
||
|
||
Select the filesystem `BTRFS`, and create a default subvolume structure with compression, i.e. `zstd`:
|
||
```
|
||
Filesystem
|
||
> btrfs
|
||
ext4
|
||
xfs
|
||
f2fs
|
||
```
|
||
```
|
||
Would you like to use BTRFS subvolumes with a default structure?
|
||
|
||
No > Yes
|
||
```
|
||
```
|
||
Would you like to use compression or disable CoW?
|
||
|
||
> Use compression Disable Copy-on-Write
|
||
```
|
||
My configuration looks like:
|
||
|
||
```
|
||
┌─ Info ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
|
||
│ Configuration: Use a best-effort default partition layout │
|
||
│ /dev/nvme0n1: Samsung SSD 990 PRO 2TB │
|
||
│ Wipe: True │
|
||
│ Status | Device | Type | Start | End | Size | FS type | Mountpoint | Mount options | Flags | Btrfs vol. │
|
||
│ ----------------------------------------------------------------------------------------------------------------------- │
|
||
│ create | | primary | 2048 | 2099200 | 1 GiB | fat32 | /boot | | boot | │
|
||
│ create | | primary | 2099200 | 3907028992 | 1.8 TiB | btrfs | | compress=zstd | | 4 subvolumes │
|
||
│ │
|
||
│ name | mountpoint │
|
||
│ ------------------------------ │
|
||
│ @ | / │
|
||
│ @home | /home │
|
||
│ @log | /var/log │
|
||
│ @pkg | /var/cache/pacman/pkg │
|
||
│ │
|
||
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
|
||
```
|
||
#### LVM
|
||
We don't use LVM, a logical volume.
|
||
|
||
#### Disk encryption
|
||
|
||
Here we could activate hard drive encryption.
|
||
If it is a company laptop (PC), the partition of a hard drive should be encrypted.
|
||
Typically, LUKS is used.
|
||
|
||
|
||
#### Btrfs snapshots
|
||
|
||
We try out the snapshot type `Snapper`
|
||
|
||
### Swap
|
||
|
||
#### Swap on zram:
|
||
```
|
||
Enabled
|
||
```
|
||
|
||
### Bootloader
|
||
|
||
If "UEFI is not detected and some options ...", you have to enable UEFI boot option in the BIOS.
|
||
|
||
```
|
||
> Systemd-boot (default)
|
||
Grub
|
||
Efistub
|
||
Limine
|
||
```
|
||
We use Systemd-boot, formaly known as Gummiboot.
|
||
Systemd-boot relies on the EFI System Partition (ESP) for configuration and boot entries.
|
||
|
||
### Unified kernel images
|
||
|
||
Unified kernel images: Disabled
|
||
|
||
### Hostname
|
||
|
||
I use a colourful network at home:
|
||
|
||
We give the PC a nice name, e.g. a colour such as `silver` or another colour that is not yet used in our network.
|
||
|
||
### Authentication
|
||
|
||
This section is self-explanatory: enter a root password and create a user.
|
||
|
||
#### Root password
|
||
|
||
Adding a good root password
|
||
|
||
#### User account
|
||
|
||
We add a user `tom` to the system
|
||
```
|
||
Should "tom" be a superuser (sudo)?
|
||
No > Yes
|
||
```
|
||
|
||
### Profile
|
||
|
||
#### Type
|
||
```
|
||
> Desktop
|
||
Minimal
|
||
Server
|
||
Xorg
|
||
```
|
||
|
||
I use `Cinnamon` as a profile and desktop environment
|
||
Installed packages:
|
||
```
|
||
- cinnamon
|
||
- engrampa
|
||
- gnome-keyring
|
||
- gnome-terminal
|
||
- gvgs-smb
|
||
- system-config-printer
|
||
- xdb-user-dirs-gtk
|
||
- xed
|
||
```
|
||
|
||
#### Graphics driver
|
||
For the best compatibility with your Intel hardware, you may want to use either the all open-source or Intel options.
|
||
For the best compatibility with your Nvidia hardware, you may want to use the Nvidia proprietary driver.
|
||
|
||
```
|
||
AMD /ATI (open-source)
|
||
All open-source (default)
|
||
Intel (open-source)
|
||
Nvidia (open kernel module for newer GPUs, Turing+)
|
||
Nvidia (open-source nouveau driver)
|
||
> Nvidia (proprietary)
|
||
VirtualBox (open-source)
|
||
```
|
||
My DELL has a built-in Nvidia card, so I selected `Nvidia (prorietary)`, with installed packages:
|
||
```
|
||
- dkms
|
||
- libva-nvidia-driver
|
||
- nvidia-dkms
|
||
- xorg-server
|
||
- xorg-xinit
|
||
```
|
||
If that doesn't work, I will try with `All open-source`.
|
||
|
||
#### Greeter
|
||
I choose the default `lightdm-gtk-greeter` from the list:
|
||
```
|
||
gdm
|
||
> lightdm-gtk-greeter (default)
|
||
lightdm-slick-greeter
|
||
ly
|
||
sddm
|
||
```
|
||
|
||
### Application
|
||
|
||
### Kernels
|
||
|
||
### Network configuration
|
||
|
||
### Additional packages
|
||
|
||
### Timezone
|
||
|
||
### Automatic time sync (NTP)
|
||
|