SlideShare une entreprise Scribd logo
1  sur  20
http://www.cs.ucr.edu/~weesan/cs183/
Linux Basics
WeeSan Lee <weesan@cs.ucr.edu>
http://www.cs.ucr.edu/~weesan/cs183/
Roadmap
 What is Unix?
 What is Linux?
 Which Linux Distribution is better?
 Fish vs. Fishing
 Basic Commands
 Vi and Emacs
 Q&A
 References
http://www.cs.ucr.edu/~weesan/cs183/
What is Unix?
 A multi-task and multi-user Operating System
 Developed in 1969 at AT&T’s Bell Labs by
 Ken Thompson (Unix)
 Dennis Ritchie (C)
 Douglas Mcllroy (Pipes - Do one thing, do it well)
 Some other variants: System V, Solaris, SCO
Unix, SunOS, 4.4BSD, FreeBSD, NetBSD,
OpenBSD, BSDI
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
 Linus' Minix became Linux
 Consist of
 Linux Kernel
 GNU (GNU is Not Unix) Software
 Software Package management
 Others
http://www.linuxdevices.com/files/misc/ibm-watchpad.jpg
http://www.cs.ucr.edu/~weesan/cs183/
What is Linux?
 Originally developed for
32-bit x86-based PC
 Ported to other
architectures, eg.
 Alpha, VAX, PowerPC,
IBM S/390, MIPS, IA-64
 PS2, TiVo, cellphones,
watches, Nokia N810,
NDS, routers, NAS, GPS,
…
* See references at the end
for the corresponding websites.
http://www.cs.ucr.edu/~weesan/cs183/
Which Linux Distribution is better?
 > 300 Linux Distributions
 Slackware (one of the oldest, simple and stable distro.)
 Redhat
 RHEL (commercially support)
 Fedora (free)
 CentOS (free RHEL, based in England)
 SuSe ( based in German)
 Gentoo (Source code based)
 Debian (one of the few called GNU/Linux)
 Ubuntu (based in South Africa)
 Knoppix (first LiveCD distro.)
 …
http://www.cs.ucr.edu/~weesan/cs183/
Which Linux Distribution is better?
Source:
http://futurist.se/gldt/
CentOS
Ubuntu
Knoppix
Gentoo
Slackware
Redhat
Debian
http://www.cs.ucr.edu/~weesan/cs183/
Which Linux Distribution is better?
 Ask yourself these questions (from LAH)
 Is it going to be around in 5 yrs?
 Is it giong to stay on top of the latest security
patches?
 Is it going to release updated software promptly?
 If I have problems, will the vendor talk to me?
 Personally, I use Slackware
 But, we will use CentOS (possibly along with
Slackware :)
http://www.cs.ucr.edu/~weesan/cs183/
Fish vs. Fishing
 Manpage
 $ man ls
 $ man 2 mkdir
 $ man man
 $ man -k mkdir
 Manpage sections (LAH
Table 1.2 @ page 12)
 1 User-level cmds and apps
 /bin/mkdir
 2 System calls
 int mkdir(const char *, …);
 3 Library calls
 int printf(const char *, …);
 4 Device drivers and
network protocols
 /dev/tty
 5 Standard file formats
 /etc/hosts
 6 Games and demos
 /usr/games/fortune
 7 Misc. files and docs
 man 7 locale
 8 System admin. Cmds
 /sbin/reboot
 $ manpath
 $ env | grep MANPATH
 /etc/man.config
http://www.cs.ucr.edu/~weesan/cs183/
Fish vs. Fishing (cont)
 Google
 linux package management -rpm
 “linux package management” -rpm
 linux OR windows
 rpm site:redhat.com
 linux faq filetype:pdf
 Info
 Text-base, menu-based help from GNU
 ?, h, u, t, ^N, ^P, Enter
 $ info info
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands
 ls
 $ ls -l
 $ ls -a
 $ ls -la
 $ ls -l --sort=time
 $ ls -l --sort=size -r
 cd
 $ cd /usr/bin
 pwd
 $ pwd
 ~
 $ cd ~
 ~user
 $ cd ~weesan
 What will “cd ~/weesan” do?
 which
 $ which ls
 whereis
 $ whereis ls
 locate
 $ locate stdio.h
 $ locate iostream
 rpm
 $ rpm -q bash
 $ rpm -qa
 $ rpm -qa | sort | less
 find
 $ find / | grep stdio.h
 $ find /usr/include | grep stdio.h
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands (cont)
 echo
 $ echo “Hello World”
 $ echo -n “Hello World”
 cat
 $ cat /etc/motd
 $ cat /proc/cpuinfo
 cp
 $ cp foo bar
 $ cp -a foo bar
 mv
 $ mv foo bar
 mkdir
 $ mkdir foo
 rm
 $ rm foo
 $ rm -rf foo
 $ rm -i foo
 $ rm -- -foo
 chgrp
 $ chgrp bar /home/foo
 chsh
 $ chsh foo
 chfn
 $ chfn foo
 chown
 $ chown -R foo:bar /home/foo
http://www.cs.ucr.edu/~weesan/cs183/
Basic Commands (cont)
 tar
 $ tar cvfp lab1.tar lab1
 gzip
 $ gzip -9 lab1.tar
 untar & ungzip
 $ gzip -cd lab1.tar.gz | tar xvf –
 $ tar xvfz lab1.tar.gz
 touch
 $ touch foo
 $ cat /dev/null > foo
 Pipe
 $ cal > foo
 $ cat /dev/zero > foo
 $ cat < /etc/passwd
 $ who | cut -d’ ‘ -f1 | sort |
uniq | wc –l
 backtick
 $ echo “The date is `date`”
 $ echo `seq 1 10`
 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/
Vi
 2 modes
 Input mode
 ESC to back to cmd mode
 Command mode
 Cursor movement
 h (left), j (down), k (up), l (right)
 ^f (page down)
 ^b (page up)
 ^ (first char.)
 $ (last char.)
 G (bottom page)
 :1 (goto first line)
 Swtch to input mode
 a (append)
 i (insert)
 o (insert line after
 O (insert line before)
 Delete
 dd (delete a line)
 d10d (delete 10 lines)
 d$ (delete till end of line)
 dG (delete till end of file)
 x (current char.)
 Paste
 p (paste after)
 P (paste before)
 Undo
 u
 Search
 /
 Save/Quit
 :w (write)
 :q (quit)
 :wq (write and quit)
 :q! (give up changes)
http://www.cs.ucr.edu/~weesan/cs183/
Emacs
 $ emacs
 Cursor movement
 ^f (forward one char.)
 ^b (backward one char.)
 ^a (begin of line)
 ^e (end of line)
 ^n (next line)
 ^p (prev. line)
 ^v (page up)
 alt-v (page down)
 Deletion
 ^d (delete one char)
 alt-d (delete one word)
 ^k (delete line)
 Paste
 ^y (yank)
 Undo
 ^/
 Load file
 ^x^f
 Cancel
 ^g
 Save/Quit
 ^x^c (quit w/out saving)
 ^x^s (save)
 ^x^w (write to a new file)
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
 GNU (Gnu’s Not Unix)
 http://www.gnu.org/
 Linux Distribution
 http://en.wikipedia.org/wiki/Linux_distribution
 http://en.wikipedia.org/wiki/List_of_Linux_distributions
 PS2: Computational Cluster
 http://arrakis.ncsa.uiuc.edu/ps2/cluster.php
 Linux Gadgets
 http://linuxdevices.com/articles/AT4936596231.html
 TiVo
 http://dynamic.tivo.com/linux/linux.asp
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
 GNU/Linux Distro Timeline: http://futurist.se/gldt/
 http://www.distrowatch.com/
 http://www.linux.org/dist/
 Google Advance Search
 http://www.google.com/intl/en/help/refinesearch.html

Contenu connexe

Similaire à 01_linux_basics.ppt

Unix shell scripting basics
Unix shell scripting basicsUnix shell scripting basics
Unix shell scripting basicsManav Prasad
 
Unix Shell Scripting Basics
Unix Shell Scripting BasicsUnix Shell Scripting Basics
Unix Shell Scripting BasicsSudharsan S
 
Unleash your inner console cowboy
Unleash your inner console cowboyUnleash your inner console cowboy
Unleash your inner console cowboyKenneth Geisshirt
 
Linuxppt
LinuxpptLinuxppt
LinuxpptReka
 
Unix shell scripting basics
Unix shell scripting basicsUnix shell scripting basics
Unix shell scripting basicsAbhay Sapru
 
Unix Shell Scripting Basics
Unix Shell Scripting BasicsUnix Shell Scripting Basics
Unix Shell Scripting BasicsDr.Ravi
 
Unix OS & Commands
Unix OS & CommandsUnix OS & Commands
Unix OS & CommandsMohit Belwal
 
Introduction to-linux
Introduction to-linuxIntroduction to-linux
Introduction to-linuxrowiebornia
 
Introduction-to-Linux.pptx
Introduction-to-Linux.pptxIntroduction-to-Linux.pptx
Introduction-to-Linux.pptxDavidMaina47
 
Introduction khgjkhygkjiyhgikjyhgikygkii
Introduction khgjkhygkjiyhgikjyhgikygkiiIntroduction khgjkhygkjiyhgikjyhgikygkii
Introduction khgjkhygkjiyhgikjyhgikygkiicmdept1
 
Unix and Linux - The simple introduction
Unix and Linux - The simple introductionUnix and Linux - The simple introduction
Unix and Linux - The simple introductionAmity University Noida
 
Unleash your inner console cowboy
Unleash your inner console cowboyUnleash your inner console cowboy
Unleash your inner console cowboyKenneth Geisshirt
 
5.Shell And Environment
5.Shell And Environment5.Shell And Environment
5.Shell And Environmentphanleson
 

Similaire à 01_linux_basics.ppt (20)

Shell scripting
Shell scriptingShell scripting
Shell scripting
 
Linuxppt
LinuxpptLinuxppt
Linuxppt
 
Unix shell scripting basics
Unix shell scripting basicsUnix shell scripting basics
Unix shell scripting basics
 
Unix Shell Scripting Basics
Unix Shell Scripting BasicsUnix Shell Scripting Basics
Unix Shell Scripting Basics
 
Unleash your inner console cowboy
Unleash your inner console cowboyUnleash your inner console cowboy
Unleash your inner console cowboy
 
50 most frequently used unix
50 most frequently used unix50 most frequently used unix
50 most frequently used unix
 
50 most frequently used unix
50 most frequently used unix50 most frequently used unix
50 most frequently used unix
 
Linuxppt
LinuxpptLinuxppt
Linuxppt
 
Unix shell scripting basics
Unix shell scripting basicsUnix shell scripting basics
Unix shell scripting basics
 
Unix Shell Scripting Basics
Unix Shell Scripting BasicsUnix Shell Scripting Basics
Unix Shell Scripting Basics
 
50 Most Frequently Used UNIX Linux Commands -hmftj
50 Most Frequently Used UNIX  Linux Commands -hmftj50 Most Frequently Used UNIX  Linux Commands -hmftj
50 Most Frequently Used UNIX Linux Commands -hmftj
 
Linuxppt
LinuxpptLinuxppt
Linuxppt
 
Unix OS & Commands
Unix OS & CommandsUnix OS & Commands
Unix OS & Commands
 
Introduction-to-Linux.pptx
Introduction-to-Linux.pptxIntroduction-to-Linux.pptx
Introduction-to-Linux.pptx
 
Introduction to-linux
Introduction to-linuxIntroduction to-linux
Introduction to-linux
 
Introduction-to-Linux.pptx
Introduction-to-Linux.pptxIntroduction-to-Linux.pptx
Introduction-to-Linux.pptx
 
Introduction khgjkhygkjiyhgikjyhgikygkii
Introduction khgjkhygkjiyhgikjyhgikygkiiIntroduction khgjkhygkjiyhgikjyhgikygkii
Introduction khgjkhygkjiyhgikjyhgikygkii
 
Unix and Linux - The simple introduction
Unix and Linux - The simple introductionUnix and Linux - The simple introduction
Unix and Linux - The simple introduction
 
Unleash your inner console cowboy
Unleash your inner console cowboyUnleash your inner console cowboy
Unleash your inner console cowboy
 
5.Shell And Environment
5.Shell And Environment5.Shell And Environment
5.Shell And Environment
 

Dernier

WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024SimonedeGijt
 
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypseTomasz Kowalczewski
 
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdfAzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdfryanfarris8
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...WSO2
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
WSO2Con2024 - Software Delivery in Hybrid Environments
WSO2Con2024 - Software Delivery in Hybrid EnvironmentsWSO2Con2024 - Software Delivery in Hybrid Environments
WSO2Con2024 - Software Delivery in Hybrid EnvironmentsWSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 

Dernier (20)

WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
 
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
 
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdfAzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
AzureNativeQumulo_HPC_Cloud_Native_Benchmarks.pdf
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...
WSO2Con2024 - Navigating the Digital Landscape: Transforming Healthcare with ...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2Con2024 - Software Delivery in Hybrid Environments
WSO2Con2024 - Software Delivery in Hybrid EnvironmentsWSO2Con2024 - Software Delivery in Hybrid Environments
WSO2Con2024 - Software Delivery in Hybrid Environments
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 

01_linux_basics.ppt

  • 2. http://www.cs.ucr.edu/~weesan/cs183/ Roadmap  What is Unix?  What is Linux?  Which Linux Distribution is better?  Fish vs. Fishing  Basic Commands  Vi and Emacs  Q&A  References
  • 3. http://www.cs.ucr.edu/~weesan/cs183/ What is Unix?  A multi-task and multi-user Operating System  Developed in 1969 at AT&T’s Bell Labs by  Ken Thompson (Unix)  Dennis Ritchie (C)  Douglas Mcllroy (Pipes - Do one thing, do it well)  Some other variants: System V, Solaris, SCO Unix, SunOS, 4.4BSD, FreeBSD, NetBSD, OpenBSD, BSDI
  • 4. 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  Linus' Minix became Linux  Consist of  Linux Kernel  GNU (GNU is Not Unix) Software  Software Package management  Others http://www.linuxdevices.com/files/misc/ibm-watchpad.jpg
  • 5. http://www.cs.ucr.edu/~weesan/cs183/ What is Linux?  Originally developed for 32-bit x86-based PC  Ported to other architectures, eg.  Alpha, VAX, PowerPC, IBM S/390, MIPS, IA-64  PS2, TiVo, cellphones, watches, Nokia N810, NDS, routers, NAS, GPS, … * See references at the end for the corresponding websites.
  • 6. http://www.cs.ucr.edu/~weesan/cs183/ Which Linux Distribution is better?  > 300 Linux Distributions  Slackware (one of the oldest, simple and stable distro.)  Redhat  RHEL (commercially support)  Fedora (free)  CentOS (free RHEL, based in England)  SuSe ( based in German)  Gentoo (Source code based)  Debian (one of the few called GNU/Linux)  Ubuntu (based in South Africa)  Knoppix (first LiveCD distro.)  …
  • 7. http://www.cs.ucr.edu/~weesan/cs183/ Which Linux Distribution is better? Source: http://futurist.se/gldt/ CentOS Ubuntu Knoppix Gentoo Slackware Redhat Debian
  • 8. http://www.cs.ucr.edu/~weesan/cs183/ Which Linux Distribution is better?  Ask yourself these questions (from LAH)  Is it going to be around in 5 yrs?  Is it giong to stay on top of the latest security patches?  Is it going to release updated software promptly?  If I have problems, will the vendor talk to me?  Personally, I use Slackware  But, we will use CentOS (possibly along with Slackware :)
  • 9. http://www.cs.ucr.edu/~weesan/cs183/ Fish vs. Fishing  Manpage  $ man ls  $ man 2 mkdir  $ man man  $ man -k mkdir  Manpage sections (LAH Table 1.2 @ page 12)  1 User-level cmds and apps  /bin/mkdir  2 System calls  int mkdir(const char *, …);  3 Library calls  int printf(const char *, …);  4 Device drivers and network protocols  /dev/tty  5 Standard file formats  /etc/hosts  6 Games and demos  /usr/games/fortune  7 Misc. files and docs  man 7 locale  8 System admin. Cmds  /sbin/reboot  $ manpath  $ env | grep MANPATH  /etc/man.config
  • 10. http://www.cs.ucr.edu/~weesan/cs183/ Fish vs. Fishing (cont)  Google  linux package management -rpm  “linux package management” -rpm  linux OR windows  rpm site:redhat.com  linux faq filetype:pdf  Info  Text-base, menu-based help from GNU  ?, h, u, t, ^N, ^P, Enter  $ info info
  • 11. http://www.cs.ucr.edu/~weesan/cs183/ Basic Commands  ls  $ ls -l  $ ls -a  $ ls -la  $ ls -l --sort=time  $ ls -l --sort=size -r  cd  $ cd /usr/bin  pwd  $ pwd  ~  $ cd ~  ~user  $ cd ~weesan  What will “cd ~/weesan” do?  which  $ which ls  whereis  $ whereis ls  locate  $ locate stdio.h  $ locate iostream  rpm  $ rpm -q bash  $ rpm -qa  $ rpm -qa | sort | less  find  $ find / | grep stdio.h  $ find /usr/include | grep stdio.h
  • 12. http://www.cs.ucr.edu/~weesan/cs183/ Basic Commands (cont)  echo  $ echo “Hello World”  $ echo -n “Hello World”  cat  $ cat /etc/motd  $ cat /proc/cpuinfo  cp  $ cp foo bar  $ cp -a foo bar  mv  $ mv foo bar  mkdir  $ mkdir foo  rm  $ rm foo  $ rm -rf foo  $ rm -i foo  $ rm -- -foo  chgrp  $ chgrp bar /home/foo  chsh  $ chsh foo  chfn  $ chfn foo  chown  $ chown -R foo:bar /home/foo
  • 13. http://www.cs.ucr.edu/~weesan/cs183/ Basic Commands (cont)  tar  $ tar cvfp lab1.tar lab1  gzip  $ gzip -9 lab1.tar  untar & ungzip  $ gzip -cd lab1.tar.gz | tar xvf –  $ tar xvfz lab1.tar.gz  touch  $ touch foo  $ cat /dev/null > foo  Pipe  $ cal > foo  $ cat /dev/zero > foo  $ cat < /etc/passwd  $ who | cut -d’ ‘ -f1 | sort | uniq | wc –l  backtick  $ echo “The date is `date`”  $ echo `seq 1 10`  Hard, soft (symbolic) link  ln vmlinuz-2.6.24.4 vmlinuz  ln -s firefox-2.0.0.3 firefox
  • 14. 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 /
  • 15. http://www.cs.ucr.edu/~weesan/cs183/ Vi  2 modes  Input mode  ESC to back to cmd mode  Command mode  Cursor movement  h (left), j (down), k (up), l (right)  ^f (page down)  ^b (page up)  ^ (first char.)  $ (last char.)  G (bottom page)  :1 (goto first line)  Swtch to input mode  a (append)  i (insert)  o (insert line after  O (insert line before)  Delete  dd (delete a line)  d10d (delete 10 lines)  d$ (delete till end of line)  dG (delete till end of file)  x (current char.)  Paste  p (paste after)  P (paste before)  Undo  u  Search  /  Save/Quit  :w (write)  :q (quit)  :wq (write and quit)  :q! (give up changes)
  • 16. http://www.cs.ucr.edu/~weesan/cs183/ Emacs  $ emacs  Cursor movement  ^f (forward one char.)  ^b (backward one char.)  ^a (begin of line)  ^e (end of line)  ^n (next line)  ^p (prev. line)  ^v (page up)  alt-v (page down)  Deletion  ^d (delete one char)  alt-d (delete one word)  ^k (delete line)  Paste  ^y (yank)  Undo  ^/  Load file  ^x^f  Cancel  ^g  Save/Quit  ^x^c (quit w/out saving)  ^x^s (save)  ^x^w (write to a new file)
  • 18. 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/
  • 19. http://www.cs.ucr.edu/~weesan/cs183/ References  GNU (Gnu’s Not Unix)  http://www.gnu.org/  Linux Distribution  http://en.wikipedia.org/wiki/Linux_distribution  http://en.wikipedia.org/wiki/List_of_Linux_distributions  PS2: Computational Cluster  http://arrakis.ncsa.uiuc.edu/ps2/cluster.php  Linux Gadgets  http://linuxdevices.com/articles/AT4936596231.html  TiVo  http://dynamic.tivo.com/linux/linux.asp
  • 20. 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  GNU/Linux Distro Timeline: http://futurist.se/gldt/  http://www.distrowatch.com/  http://www.linux.org/dist/  Google Advance Search  http://www.google.com/intl/en/help/refinesearch.html