Linux

From Christoph's Personal Wiki
Jump to: navigation, search

Linux is a computer operating system and its kernel. It is one of the most prominent examples of free software and of open-source development: unlike proprietary operating systems such as Windows and Mac OS, all of its underlying source code is available to the public and anyone can freely use, modify, improve, and redistribute it.

Kernel

The kernel is the core piece of the Linux operating system.

The kernel manages the resources of the Linux OS; such as the following:

  • File management
  • Multitasking
  • Memory management
  • I/O management
  • Process management: /proc/
  • Device management: /dev/
  • Networking support (including IPv4 and IPv6)
  • Virtual memory, shared libraries, demand loading, etc.

The kernel decides who will use these resources, for how long, and when.

Keyboard shortcuts

Ctrl+Alt+Del 
shut down computer
Ctrl+Alt+(F1,F2,...,Fn
switch to n-th console
Alt+<- | Alt+-> 
switch to next|previous virtual terminal
Ctrl+k 
clear CLI from cursor position to end of line
Ctrl+u 
clear CLI from cursor position to beginning of line
Ctrl+a 
move cursor to beginning of CLI
Ctrl+l 
clear console screen
Ctrl+z 
pause (see 'bg' and 'fg')
Ctrl+r 
incremental search of previous command history
Tab 
CLI-autocompletion
Scroll Lock 
lock terminal input/output
Shift+pgUp | Shift+pgDn 
scroll console buffer up|down
Ctrl+Alt++ | Ctrl+Alt+- 
change screen resolution higher|lower
Ctrl+Alt+Bksp 
kill X-server (note: running aps will be terminated)
Alt+F2 
run command box (on KDE)
Ctrl+Shift+NumLock 
turn keypad into mouse keys

Tutorials

Beginner

Intermediate

Advanced

Distributions

Linux is predominantly used as part of a Linux distribution (commonly called a 'distro'). These are compiled by individuals, loose-knit teams, and various professional organizations. They include additional system software and application programs, as well as certain processes to install these systems on a computer.

My favourite distributions include:

How to determine which Linux distribution is installed

Normally, the output of one of these should tell you which distro is installed:

cat /proc/version
uname -a
cat /etc/*rel*
echo /etc/*_ver* /etc/*-rel*; cat /etc/*_ver* /etc/*-rel*
cat /etc/version
cat /etc/issue
cat /etc/issue.net

The following is normally where various distros store the release/version information:

Annvix: /etc/annvix-release
Arch Linux: /etc/arch-release
Arklinux: /etc/arklinux-release
Aurox Linux: /etc/aurox-release
BlackCat: /etc/blackcat-release
Cobalt: /etc/cobalt-release
Conectiva: /etc/conectiva-release
Debian: /etc/debian_version, /etc/debian_release (rare)
Fedora Core: /etc/fedora-release
Gentoo Linux: /etc/gentoo-release
Immunix: /etc/immunix-release
Knoppix: knoppix_version
Linux-From-Scratch: /etc/lfs-release
Linux-PPC: /etc/linuxppc-release
Mandrake: /etc/mandrake-release
Mandriva/Mandrake Linux: /etc/mandriva-release, /etc/mandrake-release, /etc/mandakelinux-release
MkLinux: /etc/mklinux-release
Novell Linux Desktop: /etc/nld-release
PLD Linux: /etc/pld-release
Red Hat: /etc/redhat-release, /etc/redhat_version (rare)
Slackware: /etc/slackware-version, /etc/slackware-release (rare)
SME Server (Formerly E-Smith): /etc/e-smith-release
Solaris SPARC: /etc/release
Sun JDS: /etc/sun-release
SUSE Linux: /etc/SuSE-release, /etc/novell-release
SUSE Linux ES9: /etc/sles-release
Tiny Sofa: /etc/tinysofa-release
TurboLinux: /etc/turbolinux-release
Ubuntu Linux: /etc/lsb-release
UltraPenguin: /etc/ultrapenguin-release
UnitedLinux: /etc/UnitedLinux-release (covers SUSE SLES8)
VA-Linux/RH-VALE: /etc/va-release
Yellow Dog: /etc/yellowdog-release

See: here for more details.

Linux commands you should never run

WARNING: Do not run any of the following commands! They are extremely dangerous! I am only listing them here for illustrative purposes.

NOTE: There is little, if anything, you can do to recover if you execute any of the following:

rm -rf /                # Deletes _everything_ on your computer recursively
:(){ :|: & };:          # Fork Bomb
mv ~ /dev/null          # Move everything to NULL (i.e. nowhere)
mkfs.ext3 /dev/sda      # Formats your entire hard drive
any-command > /dev/sda  # Send STDOUT of <any-command> to your HDD (i.e., overwrites your entire HDD)

See also

External links

Tutorials

Tools / resources

Books

Hardware compatibility

This article is curently a "stub". This means it is an incomplete article needing further elaboration.

I always welcome suggestions, comments, and criticism. If you have something to contribute to this site, please follow this link: Contributing Information. Thank you!