Difference between revisions of "Linux System Administration for Programmers"
Chris Tyler (talk | contribs) |
Chris Tyler (talk | contribs) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Chris Tyler Draft}} | {{Chris Tyler Draft}} | ||
− | This is a topic outline for | + | This is a topic outline for the upcoming "System Administration for Programmers" session. |
Basics: | Basics: | ||
* Assume a RHEL/CentOS/Fedora context | * Assume a RHEL/CentOS/Fedora context | ||
− | == | + | == Bash (or, "How To Save Hours of Your Life on the Command Line") == |
− | * | + | * Bash tips 'n' tricks |
− | ** | + | ** Command editing |
+ | *** ^Right, ^Left, Home, ^A, End, ^E, ^T | ||
+ | *** Esc-BS, Ctl-W | ||
+ | *** Esc-_ | ||
+ | ** Command searching | ||
+ | *** ^R | ||
+ | *** ! | ||
+ | ** Tab completion | ||
+ | *** Non-file tab completion | ||
+ | ** Prompts | ||
+ | ** Aliases | ||
+ | ** cd shortcuts: using - and ~ | ||
+ | ** Startup Scripts - .bashrc, .profile, etc | ||
+ | ** Environment Variables - especially PATH | ||
+ | * One-Line Scripting | ||
+ | ** Looping on the command line | ||
== SSH (or, "Remote Access made Easy and Secure") == | == SSH (or, "Remote Access made Easy and Secure") == | ||
Line 22: | Line 37: | ||
** Preventing direct root login | ** Preventing direct root login | ||
− | == | + | == Screen (or, "How to Start a Build at the End of the Day") == |
− | * | + | * GNU [[Screen]] command |
− | + | ** Common options | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ** | ||
− | |||
− | |||
== X11 (or, "Why the Linux GUI Rocks and No One Knows") == | == X11 (or, "Why the Linux GUI Rocks and No One Knows") == | ||
Line 66: | Line 57: | ||
* Dangers | * Dangers | ||
+ | == Services == | ||
+ | * Systemd | ||
+ | ** enable and disable | ||
+ | ** start and stop | ||
+ | ** status | ||
+ | ** isolate | ||
+ | ** set default | ||
+ | |||
+ | == Firewalls == | ||
+ | * firewalld | ||
+ | * iptables | ||
+ | |||
+ | == Networking == | ||
+ | * ip vs. ifconfig | ||
== Installing and Removing Software (or, "That Software is only a Yum Away") == | == Installing and Removing Software (or, "That Software is only a Yum Away") == | ||
Line 79: | Line 84: | ||
* apt-get basics (As needed) | * apt-get basics (As needed) | ||
− | == | + | == LVM (or, "Why Running out of Disk Space is No Big Deal" or "Snapshots, Volumes, and Disk Errors, Oh My!") == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * Using LVM for storage management | |
− | * | + | ** Why? |
− | * | + | ** Concepts: PVs, VGs, LVs |
− | + | ** <code>pvs, vgs, lvs</code> | |
− | + | ** <code>vgextend</code> | |
− | * | + | ** <code>lvextend -r</code> |
+ | ** <code>pvmove</code> | ||
+ | ** LV snapshots |
Latest revision as of 16:04, 18 February 2015
This is a topic outline for the upcoming "System Administration for Programmers" session.
Basics:
- Assume a RHEL/CentOS/Fedora context
Bash (or, "How To Save Hours of Your Life on the Command Line")
- Bash tips 'n' tricks
- Command editing
- ^Right, ^Left, Home, ^A, End, ^E, ^T
- Esc-BS, Ctl-W
- Esc-_
- Command searching
- ^R
- !
- Tab completion
- Non-file tab completion
- Prompts
- Aliases
- cd shortcuts: using - and ~
- Startup Scripts - .bashrc, .profile, etc
- Environment Variables - especially PATH
- Command editing
- One-Line Scripting
- Looping on the command line
SSH (or, "Remote Access made Easy and Secure")
- SSH tips and tricks
- X tunneling
- arbitrary forward and reverse tunnels
- Using
.ssh/config
for convenience - Public key authentication
- Use of passphrases
- ssh-agent (and gnome ssh agent, ...)
- Securing SSH
- Preventing direct root login
Screen (or, "How to Start a Build at the End of the Day")
- GNU Screen command
- Common options
X11 (or, "Why the Linux GUI Rocks and No One Knows")
- Remote access
- Clipboard vs. Selection
- Fast-paste (middle mouse)
- Composed desktops
- Virtual desktops
Using Root (or, "No Power in the 'Verse Can Stop Me")
- Via sudo
- Via su
- Directly (don't do it!)
- Dangers
Services
- Systemd
- enable and disable
- start and stop
- status
- isolate
- set default
Firewalls
- firewalld
- iptables
Networking
- ip vs. ifconfig
Installing and Removing Software (or, "That Software is only a Yum Away")
On an RPM-based system
- Why use a package manager
- Yum/DNF basics
-
list, search, info
-
install, remove
-
-
rpm -q
basics- package selection:
name -a -f --whatrequires --whatprovides
- info selection:
default -i -l --requires --provides --scripts --qf
- package selection:
- repoquery basics (?)
- apt-get basics (As needed)
LVM (or, "Why Running out of Disk Space is No Big Deal" or "Snapshots, Volumes, and Disk Errors, Oh My!")
- Using LVM for storage management
- Why?
- Concepts: PVs, VGs, LVs
-
pvs, vgs, lvs
-
vgextend
-
lvextend -r
-
pvmove
- LV snapshots