Arch manual pages


archlinux - basic configuration

Overview of the basic configuration of Arch Linux.

Arch Linux exposes the user to the system without hiding any details. This man page gives a brief overview of the configuration files that should be set up on a fresh install.

System services to be started at boot can be enabled using systemctl enable <name>. To view available services, use systemctl list-unit-files.

The hostname of the machine can be set using hostnamectl set-hostname <hostname>. It will then be written to /etc/hostname.

Various locales may be enabled in /etc/locale.gen and are generated by locale-gen. The system-wide locale to be used can be configured in /etc/locale.conf. These settings can be overridden on a per-user basis by keeping a user-specific locale.conf in $HOME/.config/locale.conf. The user-specific file will take precedence if it exists.

The virtual console is configured in /etc/vconsole.conf. It allows you to set a font and a keyboard layout, among other things. Note that these settings only apply to the console and do not apply if you use X.

The local time zone is configured by calling timedatectl set-timezone <Region/City>. A relative symlink is then created from /etc/localtime to the correct zoneinfo file under /usr/share/zoneinfo/. For example,

/etc/localtime -> ../usr/share/zoneinfo/Europe/Paris

The real-time clock, which keeps track of time when the computer is off, can be configured to either be in UTC or in local time by calling timedatectl set-local-rtc <false|true>. The default is UTC.

File systems are configured in /etc/fstab, and encryption mappings are configured in /etc/crypttab.

The initramfs is generated by mkinitcpio -p <preset>. The default preset is "linux". The initramfs can be configured in /etc/mkinitcpio.conf and must be regenerated after making configuration changes.

The package manager, pacman, is configured in /etc/pacman.conf.

GRUB’s configuration is generated from /etc/default/grub by grub-mkconfig -o /boot/grub/grub.cfg. Syslinux is configured in /boot/syslinux/syslinux.cfg.

Most modules should be loaded on-demand. Modules to be unconditionally loaded at boot can be specified in /etc/modules-load.d/, and modules to be blacklisted from automatically loading can be configured in /etc/modprobe.d/.

systemctl(1), hostnamectl(1), hostname(5), locale.conf(5), vconsole.conf(5), timedatectl(1), timezone(3), hwclock(8), fstab(5), crypttab(5), mkinitcpio(8), pacman(8), pacman.conf(5), grub-mkconfig(8), syslinux(1), modules-load.d(5), modprobe.d(5), systemd(1)

Written by Tom Gundersen.