Linux Basics: Weesan Lee
Linux Basics: Weesan Lee
http://www.cs.ucr.edu/~weesan/cs183/
Roadmap
What is Unix?
What is Linux?
Which Linux Distribution is better?
Getting help in Terminal
Basic Commands
Vi and Emacs
Q&A
References
http://www.cs.ucr.edu/~weesan/cs183/
What is Unix?
http://www.cs.ucr.edu/~weesan/cs183/
What is Linux?
A clone of Unix
Developed in 1991 by Linus Torvalds, a Finnish
graduate student
Inspired by and replacement of Minix(by Andrew S.
Tanenbaum)
Linus' Minix became Linux
Consist of
Linux Kernel
GNU (GNU is Not Unix) Software
Software Package management
Others
http://www.cs.ucr.edu/~weesan/cs183/ http://www.linuxdevices.com/files/misc/ibm-watchpad.jpg
What is Linux?
http://www.cs.ucr.edu/~weesan/cs183/
Which Linux Distribution is better?
Ubuntu
Debian
Knoppix
Slackware Gentoo
CentOS
Redhat
Source:
http://www.cs.ucr.edu/~weesan/cs183/
http://futurist.se/gldt/
Which Linux Distribution is better?
http://www.cs.ucr.edu/~weesan/cs183/
Getting help in Terminal (cont)
Info
Text-based, menu-based help from GNU
?, h, n, p, t, u Enter
$ info info
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands
ls which
$ ls -l $ which ls
$ ls -a whereis
$ ls -la $ whereis ls
$ ls -l --sort=time locate
$ ls -l --sort=size -r $ locate stdio.h
cd $ locate iostream
$ cd /usr/bin Apt (install packages/software)
pwd $ apt install emacs
$ pwd $ apt remove emacs
~ $ apt search emacs
$ cd ~ $ rpm -qa | sort | less
~user find
$ cd ~weesan $ find / | grep stdio.h
What will “cd ~/weesan” do? $ find /usr/include | grep stdio.h
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands (cont)
echo rm
$ echo “Hello World” $ rm foo
$ echo -n “Hello World” $ rm -rf foo
cat $ rm -i foo
$ cat /etc/hostname $ rm -- -foo
$ cat /proc/cpuinfo chgrp
$ cat /proc/meminfo $ chgrp bar /home/foo
cp chsh
$ cp foo bar $ chsh foo
$ cp -a foo bar chfn
mv $ chfn foo
$ mv foo bar chown
$ chown -R foo:bar /home/foo
mkdir
$ mkdir foo
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands (cont)
tar Pipe
$ tar cvfp lab1.tar lab1 $ cal > foo
gzip $ cat /dev/zero > foo
$ gzip -9 lab1.tar $ cat < /etc/passwd
untar & ungzip $ who | cut -d’ ‘ -f1 | sort |
$ gzip -cd lab1.tar.gz | tar xvf – uniq | wc –l
$ tar xvfz lab1.tar.gz backtick
touch $ echo “The date is `date`”
$ touch foo $ echo `seq 1 10`
$ cat /dev/null > foo Hard, soft (symbolic) link
ln vmlinuz-2.6.24.4 vmlinuz
ln -s firefox-2.0.0.3 firefox
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands (cont)
Disk usage
$ df -h /
File space usage
$ du -sxh ~/
Advance stuff
$ ssh eon who
$ ssh eon ‘cd .html ; tar cvfp - cs183 | gzip -9c’ | tar
xvfpz -
$ ssh kilo-1 ‘tar cvfp - /extra/weesan’ | tar xvfp - -C /
http://www.cs.ucr.edu/~weesan/cs183/
Vim
2 modes Delete
dd (delete a line)
Input mode
d10d (delete 10 lines)
ESC to back to cmd mode d$ (delete till end of line)
Command mode dG (delete till end of file)
Cursor movement x (current char.)
h (left), j (down), k (up), l (right) Paste
^ (first char.) p (paste after)
$ (last char.) P (paste before)
G (bottom page) Undo
:1 (goto first line) u
Swtch to input mode Search
a (append) /
i (insert) Save/Quit
o (insert line after :w (write)
O (insert line before) :q (quit)
:wq (write and quit)
:q! (give up changes)
http://www.cs.ucr.edu/~weesan/cs183/
Other
Windows Linux
Notepad, Wordpad Gedit, nano, vim
MS OFFICE Libreoffice
IE, Mozilla Firefox Mozilla Firefox
VLC VLC
Explorer(GUI) Gnome, KDE
Command Prompt Gnome-terminal,
Konsole
http://www.cs.ucr.edu/~weesan/cs183/
Q&A
http://www.cs.ucr.edu/~weesan/cs183/
References
LAH
Ch 1: Where to Start
Unix history
http://en.wikipedia.org/wiki/Unix
http://upload.wikimedia.org/wikipedia/commons/7/77/Unix_
history-simple.svg
Linus Torvalds
http://en.wikipedia.org/wiki/Linus_Torvalds
Linux Kernel
http://www.kernel.org/
http://www.cs.ucr.edu/~weesan/cs183/
References
http://www.cs.ucr.edu/~weesan/cs183/
References
Nintendo DS Lite
http://www.nintendo.com/ds/
Nokia N810
http://www.nokia.com/
http://www.engadget.com/2007/10/17/nokia-n810-gets-official/
Linux Distribution
http://en.wikipedia.org/wiki/Linux_distribution
http://www.distrowatch.com/
http://www.linux.org/dist/
http://www.cs.ucr.edu/~weesan/cs183/