User Tools

Site Tools


blog:linux_on_usb_stick

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
blog:linux_on_usb_stick [2017-07-05 10:42] brbblog:linux_on_usb_stick [2017-10-21 14:36] (current) brb
Line 9: Line 9:
   * Fast and large USB 3.0 Drive (Sandisk Extreme 128GB) (INSTALLSTICK)   * Fast and large USB 3.0 Drive (Sandisk Extreme 128GB) (INSTALLSTICK)
   * Any USB Drive with 4GB (STARTSTICK)    * Any USB Drive with 4GB (STARTSTICK) 
-  * Debian Linux 9.0 Live iso copied to a second USB Stick, any brand will do 
   * A current full backup of the computer you are using   * A current full backup of the computer you are using
  
 Installing Debian on a USB Stick with encryption Installing Debian on a USB Stick with encryption
  
-  * Download ISO https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/ +  * Download ISO for the Distribution of your choice: 
-  * Copy ISO to the STARTSTICK using ''dd''+    * MINT is easy to get started and looks great: https://linuxmint.com/edition.php?id=237 
 +    * Debian is rock solid and easy to install but needs a bit more work to get started: 
 +      * https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/9.0.1-live+nonfree/amd64 
 +      * https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/  
 +    * Ubuntu provides an easy start, but has lots of software preinstalled which you may not want: https://www.ubuntu.com
 +  * Copy ISO to the STARTSTICK using ''dd'' or on windows use [[https://www.iseepassword.com/how-to-burn-iso-to-usb-drive.html|''Rufus'']]
   * Boot your computer with STARTSTICK. You may need to enter the BIOS and choose a temporary startup device and/or add the usb stick to the boot options. If the usb stick is not recognized, it may help to try different usb ports.   * Boot your computer with STARTSTICK. You may need to enter the BIOS and choose a temporary startup device and/or add the usb stick to the boot options. If the usb stick is not recognized, it may help to try different usb ports.
   * When STARTSTICK boots, choose graphical install   * When STARTSTICK boots, choose graphical install
Line 26: Line 30:
  
 Post install work: Post install work:
-  * To connect the computer to a wireless network, you will probably need to install non-free drivers. +  * To connect the computer to a wireless network, you will probably need to install non-free drivers. Open ''/etc/apt/sources.list'' and add ''non-free contrib'' to all lines after ''main'', like so: 
 +<code> 
 +... 
 +deb http://mirror.switch.ch/ftp/mirror/debian/ jessie main non-free contrib 
 +deb-src http://mirror.switch.ch/ftp/mirror/debian/ jessie main non-free contrib 
 +... 
 +</code> 
 +  * Then do ''sudo apt-get update; sudo apt-get upgrade; sudo apt-get install firmware-linux-nonfree'' 
  
-==== Optimizing performance ====+===== Optimizing performance =====
  
-noatime+==== noatime ====
  
 By default, the ext3/ext4 filesystem updates the access time attribute on a file system object whenever it's read. This results in even the most trivial file reads result in a write operation. Keeping the access time updated is only important for some very specific tasks which we're not likely to come across. By default, the ext3/ext4 filesystem updates the access time attribute on a file system object whenever it's read. This results in even the most trivial file reads result in a write operation. Keeping the access time updated is only important for some very specific tasks which we're not likely to come across.
Line 42: Line 53:
   /dev/mapper/vg_root-lv_root /               ext4    noatime,errors=remount-ro 0       1   /dev/mapper/vg_root-lv_root /               ext4    noatime,errors=remount-ro 0       1
  
-tmpfs+==== tmpfs ====
  
 There should be no application that writes data that needs to be persistant to the /tmp directory. Let's move it into RAM so there are no disk reads or writes associated with it's usage. There should be no application that writes data that needs to be persistant to the /tmp directory. Let's move it into RAM so there are no disk reads or writes associated with it's usage.
Line 48: Line 59:
 Append the following to /etc/fstab: Append the following to /etc/fstab:
  
-tmpfs   /tmp    tmpfs   defaults,noatime,mode=1777      0       0+  tmpfs   /tmp    tmpfs   defaults,noatime,mode=1777      0       0
  
-Kernel Boot Options+==== Kernel Boot Options ====
  
 This one is purely for appearances. It can be disconcerting if you start up your machine and you get a blank screen for an extended period. This does happen though while the Kernel and InitRAMFS images are loaded from your slower storage. There is a simple alteration that makes Grub output a little imformation to let you know that things are happening This one is purely for appearances. It can be disconcerting if you start up your machine and you get a blank screen for an extended period. This does happen though while the Kernel and InitRAMFS images are loaded from your slower storage. There is a simple alteration that makes Grub output a little imformation to let you know that things are happening
Line 56: Line 67:
 Open /etc/grub.d/10_linux and find the following stanza: Open /etc/grub.d/10_linux and find the following stanza:
  
-linux_entry "${OS}" "${version}" false \+  linux_entry "${OS}" "${version}" false \
     "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \     "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}" \
     quiet     quiet
Line 62: Line 73:
 We're just going to remove the quiet option: We're just going to remove the quiet option:
  
-linux_entry "${OS}" "${version}" false \ +    linux_entry "${OS}" "${version}" false \ 
-    "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}"+      "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_EXTRA} ${GRUB_CMDLINE_LINUX_DEFAULT}"
  
 Note: notice that the '\' is also removed from the second line. Note: notice that the '\' is also removed from the second line.
Line 72: Line 83:
 Open /etc/default/grub and find the following line: Open /etc/default/grub and find the following line:
  
-GRUB_CMDLINE_LINUX=""+  GRUB_CMDLINE_LINUX=""
  
 Add the verbose option: Add the verbose option:
  
-GRUB_CMDLINE_LINUX="verbose"+  GRUB_CMDLINE_LINUX="verbose"
  
 Now, use update-grub to apply your changed setting to grub.cfg and restart for the change to take effect. Now, use update-grub to apply your changed setting to grub.cfg and restart for the change to take effect.
  
-sudo update-grub +  sudo update-grub 
-sudo reboot+  sudo reboot
  
-IO Scheduler+==== IO Scheduler ==== 
  
-Reference: http://tombuntu.com/index.php/2008/09/04/four-tweaks-for-using-linux-with-solid-state-drives/+Reference: [[http://tombuntu.com/index.php/2008/09/04/four-tweaks-for-using-linux-with-solid-state-drives/]]
  
 The default IO Scheduler used by Ubuntu is cfq. Changing this to deadline will see improved performance during times where multiple processes are trying to read/write to disk. You can change the default scheduler for all devices by adding a kernel parameter into grub. The default IO Scheduler used by Ubuntu is cfq. Changing this to deadline will see improved performance during times where multiple processes are trying to read/write to disk. You can change the default scheduler for all devices by adding a kernel parameter into grub.
  
-Open /etc/default/grub and find the following line:+Open ''/etc/default/grub'' and find the following line:
  
-GRUB_CMDLINE_LINUX=""+  GRUB_CMDLINE_LINUX=""
  
 Add the elevator option: Add the elevator option:
  
-GRUB_CMDLINE_LINUX="elevator=deadline"+  GRUB_CMDLINE_LINUX="elevator=deadline"
  
 Or, if you added the verbose option earlier: Or, if you added the verbose option earlier:
  
-GRUB_CMDLINE_LINUX="elevator=deadline verbose"+  GRUB_CMDLINE_LINUX="elevator=deadline verbose"
  
 Now, use update-grub to apply your changed setting to grub.cfg and restart for the change to take effect. Now, use update-grub to apply your changed setting to grub.cfg and restart for the change to take effect.
  
-sudo update-grub +  sudo update-grub 
-sudo reboot+  sudo reboot
  
 To see that your new scheduler has taken effect you can query which scheduler is currently in use for a specific device with this command: To see that your new scheduler has taken effect you can query which scheduler is currently in use for a specific device with this command:
  
-cat /sys/block/<device>/queue/scheduler+  cat /sys/block/<device>/queue/scheduler 
 +   
 +===== SATA ALPM ===== 
 + 
 +To save more power when using sata drives, consider https://wiki.ubuntu.com/Kernel/PowerManagementALPM
  
  
-  * To optimize the performance of you USB Stick+Refhttp://ghanima.net/doku.php?id=wiki:linuxtips:runningfromusb
  
 {{tag>}} {{tag>}}
blog/linux_on_usb_stick.1499244163.txt.gz · Last modified: 2017-07-05 10:42 by brb