Installation of Ubuntu 18.04 LTS on solid state drive for chalkboard
20180709~
-
Used 20180530_fishfish_install_Ubuntu18_notes as reference.
-
First backed up files on the old chalkboard filesystem
-
Backed up the
/homedirectory onto fishfish using the custom script backup_to_fishfish.sh (command run from a terminal that ssh’ed onto fishfish):# Log on to fishfish ssh -Y adam@172.28.76.139 # Backup files bash backup_to_fishfish.sh -
Backed up system configuration settings using the custom script backup_settings.sh:
# Run backup_settings.sh (This saves things under ~/Settings_Linux/backup_settings) sudo bash backup_settings.sh # Change directory to backup_settings cd ~/Settings_Linux/backup_settings # Make a new directory mkdir old_chalkboard # Move files to new directory mv *chalkboard* old_chalkboardThese files are saved under
~/Settings_Linux/backup_settings/old_chalkboard
-
-
Installed Ubuntu 18.04 LTS on new 1 TB solid state drive with a USB stick (prepared with UNetBootIn, see 20180521_fishfish_boot_from_usb_notes)
- Booted the system from the USB stick, with only the new solid state drive inserted
- Double-clicked on Install Ubuntu 18.04 LTS on the desktop
- Chose English (US) for keyboard layout
- Chose Normal installation and Download updates while installing Ubuntu, but not “Install third-party software for graphics and Wi-Fi hardware and additional media formats” (default settings)
- Upon the message: “This computer currently has no deteting operating systems on it. What would you like to do?”, chose “Erase disk and install Ubuntu” and clicked “Continue” for “Write changes to disk”
- For “Where are you?” (time zone settings), maintained the default “New York”
- For “Who are you?” (user setting), used “Adam Lu” for “Your name” and “chalkboard” for “Your computer’s name”
- After the “Installation Complete” message shows up, clicked “Restart Now”
- After reboot, clicked “Set Up Livepath”
- Set up Ubuntu Single Sign-On Account using Adam’s Gmail account
- Updated Ubuntu and restarted
-
Restored custom scripts and shell configuration files
-
Installed git:
sudo apt-get install git -
Cloned the Setting_Linux repository to the home directory (
/home/adam/):git clone http://github.com/blabuva/Settings_Linux -
Created or updated shell configuration files from the sample files using the custom script setup_dotfiles.sh:
cd ~/Settings_Linux/scripts bash setup_dotfiles.sh adam -
Copied custom scripts to
/usr/local/binusing the custom script setup_binfiles.sh:cd ~/Settings_Linux/scripts bash setup_binfiles.sh adam
-
-
Mounted external drives
-
Inserted other drives one by one and verified they were detected with the Disks utility. Rebooted and made sure all were still detected
-
Mounted all drives with the custom script mount_all_disks.sh (this also creates mount points if needed):
bash mount_all_disks.sh -
To ensure disks are mounted at start up, modified the
/etc/fstabfile accordingly, consulting the previous setting backup_etc_fstab_fishfish.log. -
Rebooted and confirmed that all drives are mounted correctly
-
-
Network
-
Set up the firewall (ufw)
-
By default the firewall is disabled:
sudo ufw statusshows:
Status: inactive
-
Enable the firewall:
sudo ufw enableshows:
Firewall is active and enabled on system startup
-
-
Installed Webmin per these instructions:
-
Edited the file
/etc/apt/sources.listsudo vi /etc/apt/sources.listAdded this line:
deb http://download.webmin.com/download/repository sarge contrib -
Next, added the Webmin PGP key so that chalkboard will trust the new repository:
wget http://www.webmin.com/jcameron-key.asc sudo apt-key add jcameron-key.asc -
Next, updated repositories and installed Webmin:
sudo apt-get update sudo apt-get install webmin -
The file
jcameron-key.ascis saved in~/Settings_Linux/Upgrade
-
-
Installed SSH server per these instructions:
- Installed
taskselsudo apt-get install tasksel - Used
taskselto install theopenssh-serversudo tasksel install openssh-server - Rebooted
- Installed
-
Installed the
net-toolspackage forifconfig:sudo apt-get install net-tools -
Ran
ifconfigand discovered that the IP has changed to 128.143.54.23! -
Added IP addresses in ufw_IPs_chalkboard.md to the ufw firewall by applying one of the following:
# This custom command is in adams_commands.sh and adds an IP address to access the ports 22 (SSH), 445 (Samba) and 5900:5920 (VNC) add_IP XXX.XXX.XX.XX # This adds an IP address to access Webmin sudo ufw allow proto tcp from XXX.XXX.XX.XX to any port 10000 -
Used MobaXTerm to verify that SSH worked
-
Webmin was successfully accessed at https://128.143.54.23:10000/
-
Updated User/Group settings to be consistent with the old chalkboard files
/etc/passwdand/etc/group-
In Webmin, did the following under
System -> User/Group settings:- Changed User ID for adam to 1004 (Checked
all filesforChange user ID on files?) - Added Group LabFolks with ID 1001 and added adam to the group
- Made LabFolks the primary group for adam (Checked
all filesforChange group ID on files?) - Added Group Collaborators with ID 1005 and added adam to the group
- Created user mark with the following settings not the same as default:
User ID: 1000Real Name: Mark BeenhakkerShell:/bin/bashPassword:Normal password(same as all default passwords on fishfish)- Checked
YesforForce change at next login? Primary group: LabFolksSecondary group: Collaborators
- Changed User ID for adam to 1004 (Checked
-
In Webmin, did the following under
Webmin -> Webmin users:- Created the new Webmin users adam and mark
- In
Available Webmin Modules, clickedSelect all
-
In a terminal, changed root password to Adam’s password (not sure if there is a default password or not):
sudo bash passwd -
Added the rest of the users according the user ID in the old
/etc/passwdfile and the settings as above. Only the users in the file user_accounts_chalkboard.md were added. -
Added blab members to the sudo group.
-
-
-
Set up links, desktop icons and shell configuration files for all users
-
Ran the custom script setup_all_homedirs.sh:
bash setup_all_homedirs.sh
-
-
Installed and set up Samba Windows File Sharing
-
Installed Samba server per these instructions
Use
taskselto install thesamba-serversudo tasksel install samba-server -
On Webmin, under
Un-used Modules -> Samba Windows File Sharing -> Samba Users, clicked onConvert Users, thenConvert Usersagain with default settings -
Changed
User Synchronizationsettings- Clicked
Yesfor all, including:Add a Samba user when a Unix user is added,Change the Samba user when a Unix user is changed,Delete the Samba user when a Unix user is deleted,Deleting the roaming profile when a Unix user is deleted,Rename the roaming profile when a Unix user is renamed
- Clicked
-
Created new files shares for
/home/justin,/home/barrettlaband/home/Matlab:-
For each file share, changed Security and Access Control settings:
- Changed
WritabletoYes - Add LabFolks and Collaborators to
Read only groupsorRead/write groups - Added specific users to
Read only usersorRead/write users
- Changed
-
For each file share, changed File Permissions settings:
- Changed
New Unix file modeto 775 - Changed
New Unix directory modeto 775
- Changed
-
-
-
Generated public keys:
-
Added the new chalkboard IP (128.143.54.23) to be accepted by the fishfish firewall and removed the old IP.
-
Generated a public key for chalkboard and placed it on fishfish & rivanna with these instructions:
# Generate ssh public key ssh-keygen # Copy the public key to fishfish ssh-copy-id -i ~/.ssh/id_rsa.pub adam@172.28.76.139 # Copy the public key to rivanna ssh-copy-id -i ~/.ssh/id_rsa.pub al4ng@rivanna.hpc.virginia.edu -
Did the same for fishfish on chalkboard
-
-
Created the folder
/home/Matlaband restored everything from the lab GitHub site with commands such as:git clone https://github.com/blabuva/Marks_Functions.git -
Restored cron jobs by copying the backed up directory to
/var/spool/cron/rsync -avhu --progress ~/Settings_Linux/backup_settings/old_chalkboard/backup_var_spool_cron_chalkboard/ /var/spool/cron/