====== Systems - Media Server - Install Ubuntu Server ======
It is recommended to install a Long-Term Support (LTS) release of Ubuntu.
----
===== Steps =====
* Download the ISO image for Ubuntu Server from the Ubuntu website.
* Write the ISO image for Ubuntu Server to a USB drive.
* Boot from USB drive.
* Select **Ubuntu Server** and **Search for third-party drivers**.
* Set a static IP.
* Guided Storage Configuration - Select to Use the entire disk, and unselect "Set up this disk as an LVM group".
* SSH Config - Select to Install OpenSSH Server.
* Reboot.
* Update.
* Clean up.
* Reboot again.
----
**ALERT**: To prevent accidentally installing Ubuntu on the wrong drive and overwriting data it is recommended to disconnect data drives during installation.
----
===== Set a static IP =====
Subnet: 192.168.1.0/24
Address: 192.168.1.85
Gateway: 192.168.1.1
Name Servers: 192.168.1.1, 192.168.1.50
Search Domains:
----
===== Update =====
sudo apt update && sudo apt upgrade -y
----
===== Clean up =====
sudo apt autoremove
sudo apt clean
sudo reboot
**NOTE:** This removes any unnecessary packages and cleans up the apt cache.
----
===== Change the default shell to bash =====
By default, Ubuntu has Dash as the default shell.
* Bash is preferred.
* The reason that dash was set as the default is that dash provides faster boot times.
* It does not however have the full feature set offered by bash.
* On a modern server this speed difference in booting is negligible; and not too important as servers usually are not booted very often.
==== Check what /bin/sh links to ====
ls -al /bin/sh
returns:
lrwxrwxrwx 1 root root 4 Mar 31 2024 /bin/sh -> dash
**NOTE:** This shows that /bin/sh links to dash.
----
==== Change the Link for /bin/sh to bash ====
sudo ln -sf bash /bin/sh
----
==== Recheck what /bin/sh links to ====
ls -al /bin/sh
returns:
lrwxrwxrwx 1 root root 4 May 30 15:15 /bin/sh -> bash
**NOTE:** This shows that /bin/sh now links to bash.
* On older Ubuntu systems the following could be used, but this no longer works on new versions:
sudo dpkg-reconfigure dash
* When asked **Install dash as /bin/sh?** specify **No**.
----
===== Update inputrc =====
Update **/etc/inputrc** to support being able to use arrow keys for history searches.
Add the following lines to the bottom of the file.
...
# Peter added these
"\e0A": history-search-backward
"\e0B": history-search-forward
"\e0C": forward-char
"\e0D": backward-char
"\e[A": history-search-backward
"\e[B": history-search-forward
"\e[C": forward-char
"\e[D": backward-char
**NOTE:** This allows one to type the first letter of a previous command, and then by using the arrow up key for example, will only show previous commands also starting with that letter.
----
===== Remove snap if installed =====
==== List all installed Snap packages ====
snap list
----
==== Remove all the Snap packages ====
sudo snap remove
----
==== Purge snapd ====
sudo apt purge snapd
**NOTE:** Clean up any remaining directories.
----
==== Set the timezone ====
sudo dpkg-reconfigure tzdata
**NOTE:** Select the appropriate location.
----
===== References =====
https://ubuntu.com/tutorials/create-a-usb-stick-on-ubuntu#1-overview
https://ubuntu.com/tutorials/install-ubuntu-server#1-overview
https://ubuntu.com/tutorials/install-ubuntu-desktop#1-overview