Debian basic system install
Debian basic system
Installation
In this example Debian was installed using Network install
Note: "before Debian 12 (Bookworm), firmware was not included in the normal Debian installer images", but images with non-free firmware are available at Debian dvd image with non-free firmware
- At installer boot, no changes to grub menu are needed, but is convenient to choice the non graphical install mode
- Example of disk partition:
Note: swap partitions are easier to detect in case of partition table recovery, consider to put the most important partition as last one, with a swap partition before it.
Note: consider to have a secondary partition, in this example used as /srv, of same size as root partition, it can be used to install fresh O.S. to test or emergency cases without delete the previous root one.
+-------------+-------+-----------+ | partition | type | size | +-------------+-------+-----------+ | ORIG. STUFF | vary | vary | | SWAP | swap | 8GB | | / | xfs | 25GB | | /srv | xfs | 25GB | | SWAP | swap | 8GB | | /home | xfs | remaining | +-------------+-------+-----------+
- When asked, chose no Desktop environment at all, without any of gnome,kde,fce,etc specified, select just SSH server and standard system utilities if you want.
Configuration (first boot)
Note: use CTRL+ALT+F2 to switch back in console (the best way to first setup)
Wifi connection
Note: if you have configured a wireless during the install, it is already set up in /etc/network/intefaces and working
- If you want to use NetworkManager to have a friendly interface to manage wifi networks, you should:
# verify state of your wireless device (the name of the device will change according to your system): nmcli device # if the state of your wireless device is unmanaged you need to remove any reference to it in the mentioned file: nano /etc/network/interface # and restart any ifup managed networks: systemctl restart ifup@* # then you can restart NetworkManager itself: systemctl restart NetworkManager # and now you should see the device state as disconnected: nmcli device # then finally you can configure your wifi network: nmcli device wifi connect <ESSID> password <PASSWORD>
Apt repositories
- Configure an internet APT repository
example of cat /etc/apt/sources.list
deb http://deb.debian.org/debian/ stable main contrib non-free
- Update the package list
apt-get update
Etckeeper [optional]
Etckeeper can be used to keep tracks /etc config changes
- To install and configure it, see Git server config backup
Note: if you are not using network install, etckeeper may not be contained in the install CD/DVD, and it needs git package, so you will need to download etckeeper package and use the install CD/DVD to install its dependencies)
Configure dialog localization and timezone
- Dialog
apt-get install dialog
- Locales
apt-get install locales dpkg-reconfigure locales # choose en_US.UTF8, None default etckeeper commit -m "configure locales"
- Timezone
apt-get install tzdata dpkg-reconfigure tzdata # choose Etc -> UTC etckeeper commit -m "configure tzdata"
Install basic packages
- Update the current system
apt-get dist-upgrade
- Add minimal packages
apt-get install apt apt-utils base-files base-passwd coreutils dash debconf dpkg grep gzip hostname libc6 libc-bin nano passwd procps psmisc readline-common sed sysvinit-utils tar
- Add base packages
apt-get install bash binutils bsdutils bzip2 ca-certificates curl dialog dnsutils findutils iptables iputils-ping kmod less locales lsof man mount mutt ncal netcat-traditional nmap telnet tzdata util-linux
- Add gui packages
apt-get install arandr audacious blueman conky eog evince feh ffmpeg file-roller geany gimp imagemagick pulsemixer scrot spacefm claws-mail xine-ui xterm
- Add dev package
apt-get install astyle autoconf automake cmake ddd diffuse doxygen g++ gdb git kdiff3-qt make
- Add firmware packages
apt-get install firmware-linux-free apt-get install firmware-linux-nonfree firmware-misc-nonfree
Add i386 support to Apt [optional]
Add backport support to Apt [optional]
See Debian_backports
Change default Desktop environment
- Remove Gnome stuff (if installed)
apt-get autoremove --purge gdm3 task-gnome-desktop gnome-core gnome-session* gnome-shell* gnome-terminal* chrome-* cheese* evolution* network-manager+ file-roller+ nautilus+ eog+
- TODO [to improve]: remove additional stuffs
apt-get autoremove --purge desktop-base+ task-desktop+ gnome-software+ firefox\* libreoffice\* gdm\* evolution\* gnome-control-center gnome-settings-daemon gnome-terminal gnome-keyrin
- Add again minimal libreoffice packages
apt-get install libreoffice-writer libreoffice-calc libreoffice-draw apt-get clean
- Setup xdm as X login manager
See Xdm
- Setup i3wm as window manager
See I3wm