Sysadmins' Rosetta Stone
-
Upload
mackenzie-morgan -
Category
Technology
-
view
5.656 -
download
4
description
Transcript of Sysadmins' Rosetta Stone
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Sysadmins’ Rosetta Stone
Mackenzie Morgan
Ohio LinuxFest 2009
26 September 2009
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Outline
1 Introduction
2 Package Management
3 Files
4 Services
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Me
Mackenzie Morgan
Computer Science student
*buntu contributor
At home: Kubuntu
At work: Red Hat (. . . and SUSE. . . and Solaris. . . andAIX. . . )
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
This Talk
You: “Red Hat, Red Hat, Red Hat, I sure love Red Hat!”
Pointy-Haired Boss: We’re switching to Debian
You: But they don’t even use RPM!
(Swap “Debian” for “Red Hat” and vice-versa as necessary)
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Outline
1 Introduction
2 Package Management
3 Files
4 Services
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Why Package Management First?
Lots of commands
Use it the most
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Apt and Yum and Bears, Oh my!
Common Debian tools:
apt-cache
apt-get
aptitude
dpkg
tasksel
Common Red Hat & Fedora tools:
rpm
yum
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Package Naming Conventions: Red Hat
python 2.6-1.i386.rpmParts:
Software name
Software version
Package version
Architecture
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Package Naming Conventions: Debian
python2.6 2.6.2-3 amd64.debpython2.6 2.6.2-3ubuntu1 amd64.debParts:
Software name
Library version (optional)
Software version
Debian package version
Ubuntu package version (only if Ubuntu modificationsexist)
Architecture
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Installing and Removing a Local Package
Install:
dpkg -i python2.6 2.6.2-3 amd64.deb
rpm -Uvh python 2.6-1.i386.rpm
Remove:
dpkg -r python2.6
rpm -e python
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Installing and Removing Packages with Repositories
Install:
apt-get install python2.6
aptitude install python2.6
yum install python
Remove:
apt-get remove python2.6
aptitude remove python2.6
yum remove python
Great! Not much to learn there!
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Wait. . . Apt-get? Aptitude?
Aptitude:
Always installs “Recommends:” packages
Tracks “manual” versus “automatically” installed packages
Removes “orphaned” packages
Apt-get:
Can be configured to automatically install “Recommends:”packages or not (current default: install them)
Will prompt about orphaned packages
apt-get autoremove will remove orphaned packages
Convergence!Aptitude’s main use? Avoiding remembering apt-get andapt-cache
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
How do I find a package?
Debian:
apt-cache search text editor
aptitude search text editor
Diff? Aptitude alphabetizes and lists install statusRed Hat:
yum search text editor
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
What if I want lots of packages?
List them all! Or. . .
Metapackages
Tasksel
Groupinstall
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Metapackages
Dummy package, depends on lots of other packagesEx:apt-get install build-essentialinstalls development tools (gcc, kernel headers, etc.)
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Tasksel
TUI to select and install a certain task, ex: LAMP serverJust run tasksel
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Groupinstall
Feature of YumEx:yum groupinstall ‘‘Development Tools’’ is roughlyequivalent to the earlier “build-essential” example
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Speaking of Development Packages. . .
Debian: -dev packages for headersRed Hat: -devel packages for headers
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Staying up to date
Get updated list of available packages:
apt-get update or aptitude update
yum check-update
Install software updates
apt-get upgrade or aptitude safe-upgrade
yum update (does the above and installs in tandem)
Install all software updates and remove obsolete packages
apt-get dist-upgrade or aptitude full-upgrade
yum upgrade
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
What if I only want to update one package?
apt-get install python2.6
yum update python
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
When I remove a package, what happens to configfiles?
Debian: They’re retained. . . unless apt-get purgepython2.6Red Hat: They’re removed
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Which package is this file in?
Debian:
If file exists dpkg -S $FILENAME
If not apt-file search $FILENAME
Red Hat:
rpm -qf $FILENAME
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
What version of a package is installed?
Debian:
dpkg -l $PACKAGE
apt-cache policy $PACKAGE
Red Hat:
rpm -qi $PACKAGE | awk ‘/Version/{ print $3 }’
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Outline
1 Introduction
2 Package Management
3 Files
4 Services
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Speaking of Packages. . .
Where are repositories configured?
Debian: /etc/apt/sources.list
Red Hat: /etc/yum.repos.d/*.repo
Where do downloaded packages go?
Debian: /var/cache/apt/archives/
Red Hat: /var/cache/yum/
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Interface configuration files
Debian: /etc/network/interfaces
Red Hat: /etc/sysconfig/network-scripts/ifcfg-* (ex:ifcfg-eth0)
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Timezones
Debian: /etc/timezone
Red Hat: /etc/sysconfig/clock
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Modules to load
Debian: /etc/modules
Red Hat: /etc/sysconfig/udev-stw
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
For the OpenAFS users. . .
krb5-config has no standard place
Debian: /usr/bin/krb5-config
Red Hat: /usr/kerberos/bin/krb5-config
SUSE: /usr/mit/bin/krb5-config
Solaris: /opt/csw/bin/krb5-config
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Webserver
Debian: /etc/apache2/
Red Hat: /etc/httpd/
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Firewall configuration
Debian: /var/lib/iptables
Red Hat: /etc/sysconfig/iptables
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
IDs
UIDs and GIDs vary
Debian starts at 1000
Red Hat starts at 500
Filesystem permissions become sad
Change here:
Debian: /etc/adduser.conf
Red Hat: /etc/login.defs
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Outline
1 Introduction
2 Package Management
3 Files
4 Services
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
What’s a Runlevel?
Pre-defined sets of scripts and programs to start in a specificstate
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
What does each runlevel do?
That depends. Are you asking:
1 Someone who read a book on “Linux” once
2 Someone who’s poked at their system’s runlevels
3 Someone who’s used many distros
4 Wikipedia
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
Runlevels By Distro
Distro/Runlevel 2 3 4 5
By the book ♠ ♣ ♦ FDebian FGentoo ♠ F ♦Red Hat 4 ♣ ♦ FSUSE ♠ ♣ ♦ F
Key:
♦ = Undefined
F = Multi-user with display manager
♣ = Multi-user without display manager
♠ = Multi-user without networking or display manager
4 = Multi-user with networking but without mostnetwork services
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
How do I change runlevels’ services?
Old Answer:
Debian: manually create/rm symlinks (orupdate-rc.d. . . if you’re a script)
Red Hat: use chkconfig
New Answer:Use chkconfigYay! Convergence!
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
How do I start/stop/restart a service?
Old Answer:
Debian: /etc/init.d/$SERVICE start
Red Hat: service $SERVICE start or that
New Answer:service $SERVICE startYay! Convergence!
Sysadmins’Rosetta Stone
MackenzieMorgan
Introduction
PackageManagement
Files
Services
References
http://en.wikipedia.org/wiki/Runlevel