Linux barebones quickstart: Difference between revisions

From Bitpost wiki
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
=== Install the distro ===
=== Install the distro ===
Set up [[Ubuntu quickstart|Ubuntu]] or [[Centos quickstart|Centos]] or some small embedded whateverism...
Set up [[Ubuntu quickstart|Ubuntu]] or [[Centos quickstart|Centos]] or some small embedded whateverism...
==== (Optional) Change the IP ====
If this is a VM clone, [[Set your IP|CHANGE YOUR IP NOW]] before you tear your hair out.


==== (Optional) Set up hostname ====
==== (Optional) Set up hostname ====


Note that a fresh install of a "full" distro will typically set up the hostname and main user for you.  But if you've cloned a VM, or you are using any "lite" OS that doesn't have an installer, you'll need to set your hostname to something unique, as a first step:
If you've cloned a VM, or you are using any "lite" OS that doesn't have an installer, you'll need to set your hostname to something unique, as a first step:
  sudo emacs /etc/hostname && sudo hostname newname  # use hostname cmd to set it right away
  sudo emacs /etc/hostname && sudo hostname newname  # use hostname cmd to set it right away
  # NOTE that systemd can also be used: sudo hostnamectl set-hostname newname
  # NOTE that systemd can also be used: sudo hostnamectl set-hostname newname
Line 11: Line 15:
==== (Optional) Set up user m ====
==== (Optional) Set up user m ====


I am m.  It's just a fact.  "Lite" OS installs will not add a user for you, so if you don't have user m, add it:
"Lite" OS installs will not add a user for you, so if you don't have user m, [[Add a user|add user m now]].
 
==== (Optional) Limit system log size ====
 
Prevent endless system logging [[Systemd#Log_limit|here]].


=== Set up IP ===
=== Set up IP ===


On home lan, bitpost dnsmasq doles out the ips based on MAC:
On home lan, bitpost dnsmasq doles out the ips based on MAC:
  ip address # make note of MAC
hostname # make note
  ip address # make note of MAC - there may be more than one (eg: wired and wifi)
  [bitpost#] emacs config/etc/dnsmasq.d/mdm_lan_dnsmasq.conf && sudo service dnsmasq restart
  [bitpost#] emacs config/etc/dnsmasq.d/mdm_lan_dnsmasq.conf && sudo service dnsmasq restart
  # reacquire IP on new box
  # reacquire IP on new box
Or, if this is a VM clone, [[Set your IP|CHANGE YOUR IP NOW]] before you tear your hair out.


=== Copy ssh keys ===
=== Copy ssh keys ===
Line 30: Line 36:
  [bitpost#] scp -r .ssh/2022/id_ed25519* newguy:.ssh/2022/
  [bitpost#] scp -r .ssh/2022/id_ed25519* newguy:.ssh/2022/
  cd .ssh && ln -s 2022/id_ed25519 . && cat 2022/id_ed25519.pub >> authorized_keys
  cd .ssh && ln -s 2022/id_ed25519 . && cat 2022/id_ed25519.pub >> authorized_keys
  # and 2018 (until we replace it everywhere)
It's time to deprecate this one...
  # 2018 keys
  mkdir -p .ssh/2018
  mkdir -p .ssh/2018
  [bitpost#] scp -r .ssh/2018/id_rsa* newguy:.ssh/2018/
  [bitpost#] scp -r .ssh/2018/id_rsa* newguy:.ssh/2018/

Latest revision as of 20:33, 27 January 2023

Install the distro

Set up Ubuntu or Centos or some small embedded whateverism...

(Optional) Change the IP

If this is a VM clone, CHANGE YOUR IP NOW before you tear your hair out.

(Optional) Set up hostname

If you've cloned a VM, or you are using any "lite" OS that doesn't have an installer, you'll need to set your hostname to something unique, as a first step:

sudo emacs /etc/hostname && sudo hostname newname  # use hostname cmd to set it right away
# NOTE that systemd can also be used: sudo hostnamectl set-hostname newname
# /etc/hosts changes should not be needed, if hostnames are properly configured (dnsmasq DNS -or- work DNS will provide resolution)

(Optional) Set up user m

"Lite" OS installs will not add a user for you, so if you don't have user m, add user m now.

(Optional) Limit system log size

Prevent endless system logging here.

Set up IP

On home lan, bitpost dnsmasq doles out the ips based on MAC:

hostname # make note
ip address # make note of MAC - there may be more than one (eg: wired and wifi)
[bitpost#] emacs config/etc/dnsmasq.d/mdm_lan_dnsmasq.conf && sudo service dnsmasq restart
# reacquire IP on new box

Copy ssh keys

sudo apt install openssh-server # if needed (usually)
ssh newbox # via password
# 2022 keys
mkdir -p .ssh/2022
[bitpost#] scp -r .ssh/2022/id_ed25519* newguy:.ssh/2022/
cd .ssh && ln -s 2022/id_ed25519 . && cat 2022/id_ed25519.pub >> authorized_keys

It's time to deprecate this one...

# 2018 keys
mkdir -p .ssh/2018
[bitpost#] scp -r .ssh/2018/id_rsa* newguy:.ssh/2018/
cd .ssh && ln -s 2018/id_rsa . && cat 2018/id_rsa.pub >> authorized_keys

Install basic tools

sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

sudo apt install git curl emacs-nox # ubuntu server
sudo apt install git curl emacs     # ubuntu desktop
sudo yum install git curl emacs-nox # centos

Set up scripts

cd && mkdir development && cd development
git clone morosoph:development/scripts.git 
./scripts/setup_linux.sh [desktop|nodesk] # to continue bootstrapping

That's it, get on with your life.