SlideShare una empresa de Scribd logo
Linux
       Philosophy & Internals
Chintalagiri Shashank chintal@iitk.ac.in
This work is licensed under the Creative Commons
 Attribution-Noncommercial-Share Alike 2.5 India License.
 To view a copy of this license, visit
 http://creativecommons.org/licenses/by-nc-sa/2.5/in/ or
 send a letter to Creative Commons, 171 Second Street,
 Suite 300, San Francisco, California, 94105, USA.




Chintalagiri Shashank <chintal@iitk.ac.in>
Series Agenda
    Philosophy and Architecture
         Free Software and Software Freedoms
         Free Software Licenses
         Anatomy of the Linux Operating System
         Kernel-space
         Files and Filesystems
         User-space Applications
         Application / package management
    Linux system administration (or, installing and using linux)
    More about linux


    Chintalagiri Shashank <chintal@iitk.ac.in>
Free Software and Software Freedom




    What Freedom?
    Why Freedom?
    _Whose_ Freedom?




    Chintalagiri Shashank <chintal@iitk.ac.in>
Software Freedom & licenses
    (a very brief) History of Software licenses
    ‘Ownership’ of Software
    Richard Stallman and the GNU GPL
    Copyleft
    Open Source



    Show me the code.
    Give me the code.
    Let me do what I want with the code.

    Chintalagiri Shashank <chintal@iitk.ac.in>
Anatomy of the linux operating system

 Kernel-space vs User-space.
 What is the ‘Operating System’?
 What is ‘Linux’?
 GNU/Linux
As an aside,
 GNU Herd
 BSDs
 UNIXes and POSIX compliance
 Windows


    Chintalagiri Shashank <chintal@iitk.ac.in>
Kernel Space
    What is the kernel
    Designed capabilities of the kernel - What it does and
     what it doesn’t
    Hardware drivers
    System calls
    FUSE
    ‘Binary blobs’, protection of freedom, and why linux
     graphics drivers suck.
    Modularity
    Linus’ Branch

    Chintalagiri Shashank <chintal@iitk.ac.in>
Files and filesystems
    Everything is a file
    Hierarchical filesystems
    /
         /boot
         /bin
         /etc
         /usr
         /var
         /tmp
         /home


    Chintalagiri Shashank <chintal@iitk.ac.in>
Files and Filesystems
    Mounting stuff
         /mnt
         multiple filesystem support
              Ext2, ext3, ext4, reiserfs, xfs, jfs, ntfs, fat, cdfs, ….
              FUSE – filesystems in userspace
              Network resources. Smbfs, curlftpfs, …
              Loop mounting




    Chintalagiri Shashank <chintal@iitk.ac.in>
User-space Applications
    Command line centric – Graphical applications build on
     command line functionality
    The X Window System
    Window Managers – Metacity, Kwin, twm, etc
    Desktop Environments – GNOME, KDE, XFCE, etc.




    Chintalagiri Shashank <chintal@iitk.ac.in>
User-space Applications
    Scriptability
    Human readable configuration files
    Human editable configuration files
    Do you _need_ to ever see the command line?
    Eye candy and visual effects – Compiz fusion and Kwin
    Libraries & toolkits – GTK, Qt (widget toolkits)
    Niche software and the supply-demand problem
    Standards. Standards compliance.
         Some applications are compilant.
         Some are not.

    Chintalagiri Shashank <chintal@iitk.ac.in>
Installing programs
    /usr/bin
    /usr/share/doc
    /etc
    ~/.<program>
    Dependencies
    Packages - .deb, .rpm, ebuilds, …
    Compiling from source
         ./configure; make; make install
         Development headers - *-dev, *-devel
         Static linking, dynamic linking, lib versions


    Chintalagiri Shashank <chintal@iitk.ac.in>
Package Management
    Aptitude, Yum, Yast
    Synaptic, Adept

    User permissions, privileges.
    Root, sudo, and su.
    Repositories
         (Debian based) - Main, universe, multiverse, security
         Backports
         Third-party repositories
    Dependency hell

    Chintalagiri Shashank <chintal@iitk.ac.in>
Installing Linux
    Things you might need to know
         Partition tables and file systems
         Ext3 vs reiserfs vs …
         Root user
         GRUB
         Useful separate partitions
              /home – take your preferences and data with you
              /boot – keep your bootloader separate from the OS, ~50-100 MB
              /var or /srv – on servers
              /tmp
              Swap, swapfs, sharing swap.



    Chintalagiri Shashank <chintal@iitk.ac.in>
Distributions
    Repositories
    Distribution modifications
    Packages availability
    Stability and simplicity
    Management tools
    Update frequency
    Bleeding edge vs Stable

    Debian stable, unstable, experimental


    Chintalagiri Shashank <chintal@iitk.ac.in>
Installing Linux - Decisions
    Which Distribution?

    Partition Table
    GRUB, LILO, GRUB2
    GDM, KDM, XDM
    Desktop environments – KDE vs GNOME vs other




    Chintalagiri Shashank <chintal@iitk.ac.in>
Meet the terminal
    Shells – bash, ksh, …
    Virtual terminals, virtual desktops
    Terminal emulators – konsole, gnome-terminal, xterm,
     aterm …

    Tab completion
    Pipes, redirections
    Scripts
    Exit status


    Chintalagiri Shashank <chintal@iitk.ac.in>
Command Structure
    <command name> [options] <files>
    Options and switches – behavior modification
    -h, --help – prints out usage instructions
    Use man to get more details

    ls, mv, cp, man
    cat, grep, sed, awk




    Chintalagiri Shashank <chintal@iitk.ac.in>
Mounting Filesystems
    /dev
    mount –t [type] <device> <mountpoint>
    Mount permissions
    /etc/fstab
    /etc/mtab
    mount –o loop, loop mounting
    fuse mounting
         curlftpfs -o allow_other <ftp-address> <mountpoint>




    Chintalagiri Shashank <chintal@iitk.ac.in>
Network (debian and derivatives)
    Useful files :
         /etc/hostname
         /etc/network/interfaces
         /etc/resolv.conf
         /etc/hosts


    Useful commands :
         ifconfig, route, nslookup, ping, nmap
         ifup, ifdown
         /etc/init.d/networking


    Chintalagiri Shashank <chintal@iitk.ac.in>
X
    /etc/X11/xorg.conf – mostly obsolete
    xrandr
    (debian and derivatives) dpkg –reconfigure xserver-xorg
    Modelines, monitor resolutions
    glxinfo, glxgears




    Chintalagiri Shashank <chintal@iitk.ac.in>
Administration
    File permissions
         Owner, group, all
         Read, write, execute
         Chmod and chown
    Ports
         <1000 reserved for root
              80 : http, 81: https, 20: ftp, 22: ssh …
         Iptables and firestarter
    Daemons
         /etc/init.d/
    Users
         /etc/passwd

    Chintalagiri Shashank <chintal@iitk.ac.in>

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Linux Char Device Driver
Linux Char Device DriverLinux Char Device Driver
Linux Char Device Driver
 
Unix Operating System
Unix Operating SystemUnix Operating System
Unix Operating System
 
Linux File System
Linux File SystemLinux File System
Linux File System
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernel
 
Tutorial 2
Tutorial 2Tutorial 2
Tutorial 2
 
UNIX Operating System ppt
UNIX Operating System pptUNIX Operating System ppt
UNIX Operating System ppt
 
Linux device driver
Linux device driverLinux device driver
Linux device driver
 
Linux history & features
Linux history & featuresLinux history & features
Linux history & features
 
Ch1 linux basics
Ch1 linux basicsCh1 linux basics
Ch1 linux basics
 
Making Linux do Hard Real-time
Making Linux do Hard Real-timeMaking Linux do Hard Real-time
Making Linux do Hard Real-time
 
Linux IO
Linux IOLinux IO
Linux IO
 
Linux kernel
Linux kernelLinux kernel
Linux kernel
 
Host security
Host securityHost security
Host security
 
linux device driver
linux device driverlinux device driver
linux device driver
 
Unix
UnixUnix
Unix
 
Linux fundamentals Training
Linux fundamentals TrainingLinux fundamentals Training
Linux fundamentals Training
 
Type of Embedded core
Type of Embedded core Type of Embedded core
Type of Embedded core
 
Arm device tree and linux device drivers
Arm device tree and linux device driversArm device tree and linux device drivers
Arm device tree and linux device drivers
 
Introduction to linux at Introductory Bioinformatics Workshop
Introduction to linux at Introductory Bioinformatics WorkshopIntroduction to linux at Introductory Bioinformatics Workshop
Introduction to linux at Introductory Bioinformatics Workshop
 
Linux Security
Linux SecurityLinux Security
Linux Security
 

Destacado

Bridging the Gaps : Electronic Interconnect Protocols
Bridging the Gaps : Electronic Interconnect ProtocolsBridging the Gaps : Electronic Interconnect Protocols
Bridging the Gaps : Electronic Interconnect ProtocolsShashank Chintalagiri
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 

Destacado (7)

Programming
ProgrammingProgramming
Programming
 
Roboclub, IITK (2008)
Roboclub, IITK (2008)Roboclub, IITK (2008)
Roboclub, IITK (2008)
 
Bridging the Gaps : Electronic Interconnect Protocols
Bridging the Gaps : Electronic Interconnect ProtocolsBridging the Gaps : Electronic Interconnect Protocols
Bridging the Gaps : Electronic Interconnect Protocols
 
Linux Community
Linux CommunityLinux Community
Linux Community
 
Pelizaeus–Merzbacher disease
Pelizaeus–Merzbacher diseasePelizaeus–Merzbacher disease
Pelizaeus–Merzbacher disease
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 

Similar a Linux - Introduction

Basics of Linux Commands, Git and Github
Basics of Linux Commands, Git and GithubBasics of Linux Commands, Git and Github
Basics of Linux Commands, Git and GithubDevang Garach
 
Android memory analysis Debug slides.pdf
Android memory analysis Debug slides.pdfAndroid memory analysis Debug slides.pdf
Android memory analysis Debug slides.pdfVishalKumarJha10
 
Security Walls in Linux Environment: Practice, Experience, and Results
Security Walls in Linux Environment: Practice, Experience, and ResultsSecurity Walls in Linux Environment: Practice, Experience, and Results
Security Walls in Linux Environment: Practice, Experience, and ResultsIgor Beliaiev
 
Introduction to Unix
Introduction to UnixIntroduction to Unix
Introduction to UnixSudharsan S
 
7 unixsecurity
7 unixsecurity7 unixsecurity
7 unixsecurityricharddxd
 
CEHv10 M0 Introduction.pptx
CEHv10 M0 Introduction.pptxCEHv10 M0 Introduction.pptx
CEHv10 M0 Introduction.pptxYasserOuda2
 
Visual comparison of Unix-like systems & Virtualisation
Visual comparison of Unix-like systems & VirtualisationVisual comparison of Unix-like systems & Virtualisation
Visual comparison of Unix-like systems & Virtualisationwangyuanyi
 
Linux: Everyting-as-a-service
Linux: Everyting-as-a-serviceLinux: Everyting-as-a-service
Linux: Everyting-as-a-serviceRohit Sansiya
 
How to Audit Linux - Gene Kartavtsev, ISACA MN
How to Audit Linux - Gene Kartavtsev, ISACA MNHow to Audit Linux - Gene Kartavtsev, ISACA MN
How to Audit Linux - Gene Kartavtsev, ISACA MNGene Kartavtsev
 

Similar a Linux - Introduction (20)

Introduction to SELinux Part-I
Introduction to SELinux Part-IIntroduction to SELinux Part-I
Introduction to SELinux Part-I
 
Basics of Linux Commands, Git and Github
Basics of Linux Commands, Git and GithubBasics of Linux Commands, Git and Github
Basics of Linux Commands, Git and Github
 
Architecture Of The Linux Kernel
Architecture Of The Linux KernelArchitecture Of The Linux Kernel
Architecture Of The Linux Kernel
 
Android memory analysis Debug slides.pdf
Android memory analysis Debug slides.pdfAndroid memory analysis Debug slides.pdf
Android memory analysis Debug slides.pdf
 
Linux filesystemhierarchy
Linux filesystemhierarchyLinux filesystemhierarchy
Linux filesystemhierarchy
 
.ppt
.ppt.ppt
.ppt
 
Security Walls in Linux Environment: Practice, Experience, and Results
Security Walls in Linux Environment: Practice, Experience, and ResultsSecurity Walls in Linux Environment: Practice, Experience, and Results
Security Walls in Linux Environment: Practice, Experience, and Results
 
Introduction to Unix
Introduction to UnixIntroduction to Unix
Introduction to Unix
 
Unix 3 en
Unix 3 enUnix 3 en
Unix 3 en
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linux
 
7 unixsecurity
7 unixsecurity7 unixsecurity
7 unixsecurity
 
CEHv10 M0 Introduction.pptx
CEHv10 M0 Introduction.pptxCEHv10 M0 Introduction.pptx
CEHv10 M0 Introduction.pptx
 
Visual comparison of Unix-like systems & Virtualisation
Visual comparison of Unix-like systems & VirtualisationVisual comparison of Unix-like systems & Virtualisation
Visual comparison of Unix-like systems & Virtualisation
 
Linux
LinuxLinux
Linux
 
淺談探索 Linux 系統設計之道
淺談探索 Linux 系統設計之道 淺談探索 Linux 系統設計之道
淺談探索 Linux 系統設計之道
 
Linux: Everyting-as-a-service
Linux: Everyting-as-a-serviceLinux: Everyting-as-a-service
Linux: Everyting-as-a-service
 
test
testtest
test
 
HeartBeat
HeartBeatHeartBeat
HeartBeat
 
How to Audit Linux - Gene Kartavtsev, ISACA MN
How to Audit Linux - Gene Kartavtsev, ISACA MNHow to Audit Linux - Gene Kartavtsev, ISACA MN
How to Audit Linux - Gene Kartavtsev, ISACA MN
 
Edubooktraining
EdubooktrainingEdubooktraining
Edubooktraining
 

Más de Shashank Chintalagiri

Más de Shashank Chintalagiri (8)

Jugnu
JugnuJugnu
Jugnu
 
Notes on experimental methods for measure of viscosity on a falling ball
Notes on experimental methods for  measure of viscosity on a falling ballNotes on experimental methods for  measure of viscosity on a falling ball
Notes on experimental methods for measure of viscosity on a falling ball
 
Mechanosensitive Channel of Small Conductance (MscS)
Mechanosensitive Channel of Small Conductance (MscS)Mechanosensitive Channel of Small Conductance (MscS)
Mechanosensitive Channel of Small Conductance (MscS)
 
Intramembrane Proteases
Intramembrane ProteasesIntramembrane Proteases
Intramembrane Proteases
 
(2014) Quazar Data Acquisition Systems
(2014) Quazar Data Acquisition Systems (2014) Quazar Data Acquisition Systems
(2014) Quazar Data Acquisition Systems
 
Poster : STM/STS Techniques
Poster : STM/STS TechniquesPoster : STM/STS Techniques
Poster : STM/STS Techniques
 
Presentation : STM/STS Techniques
Presentation : STM/STS TechniquesPresentation : STM/STS Techniques
Presentation : STM/STS Techniques
 
Report : STM/STS Implementation
Report : STM/STS ImplementationReport : STM/STS Implementation
Report : STM/STS Implementation
 

Último

The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsStefano
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka DoktorováCzechDreamin
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfFIDO Alliance
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Buy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdfBuy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdfEasyPrinterHelp
 
Buy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxBuy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxEasyPrinterHelp
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Julian Hyde
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfChristopherTHyatt
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessUXDXConf
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxJennifer Lim
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 

Último (20)

The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Buy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdfBuy Epson EcoTank L3210 Colour Printer Online.pdf
Buy Epson EcoTank L3210 Colour Printer Online.pdf
 
Buy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxBuy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptx
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 

Linux - Introduction

  • 1. Linux Philosophy & Internals Chintalagiri Shashank chintal@iitk.ac.in
  • 2. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/2.5/in/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. Chintalagiri Shashank <chintal@iitk.ac.in>
  • 3. Series Agenda  Philosophy and Architecture  Free Software and Software Freedoms  Free Software Licenses  Anatomy of the Linux Operating System  Kernel-space  Files and Filesystems  User-space Applications  Application / package management  Linux system administration (or, installing and using linux)  More about linux Chintalagiri Shashank <chintal@iitk.ac.in>
  • 4. Free Software and Software Freedom  What Freedom?  Why Freedom?  _Whose_ Freedom? Chintalagiri Shashank <chintal@iitk.ac.in>
  • 5. Software Freedom & licenses  (a very brief) History of Software licenses  ‘Ownership’ of Software  Richard Stallman and the GNU GPL  Copyleft  Open Source  Show me the code.  Give me the code.  Let me do what I want with the code. Chintalagiri Shashank <chintal@iitk.ac.in>
  • 6. Anatomy of the linux operating system  Kernel-space vs User-space.  What is the ‘Operating System’?  What is ‘Linux’?  GNU/Linux As an aside,  GNU Herd  BSDs  UNIXes and POSIX compliance  Windows Chintalagiri Shashank <chintal@iitk.ac.in>
  • 7. Kernel Space  What is the kernel  Designed capabilities of the kernel - What it does and what it doesn’t  Hardware drivers  System calls  FUSE  ‘Binary blobs’, protection of freedom, and why linux graphics drivers suck.  Modularity  Linus’ Branch Chintalagiri Shashank <chintal@iitk.ac.in>
  • 8. Files and filesystems  Everything is a file  Hierarchical filesystems  /  /boot  /bin  /etc  /usr  /var  /tmp  /home Chintalagiri Shashank <chintal@iitk.ac.in>
  • 9. Files and Filesystems  Mounting stuff  /mnt  multiple filesystem support  Ext2, ext3, ext4, reiserfs, xfs, jfs, ntfs, fat, cdfs, ….  FUSE – filesystems in userspace  Network resources. Smbfs, curlftpfs, …  Loop mounting Chintalagiri Shashank <chintal@iitk.ac.in>
  • 10. User-space Applications  Command line centric – Graphical applications build on command line functionality  The X Window System  Window Managers – Metacity, Kwin, twm, etc  Desktop Environments – GNOME, KDE, XFCE, etc. Chintalagiri Shashank <chintal@iitk.ac.in>
  • 11. User-space Applications  Scriptability  Human readable configuration files  Human editable configuration files  Do you _need_ to ever see the command line?  Eye candy and visual effects – Compiz fusion and Kwin  Libraries & toolkits – GTK, Qt (widget toolkits)  Niche software and the supply-demand problem  Standards. Standards compliance.  Some applications are compilant.  Some are not. Chintalagiri Shashank <chintal@iitk.ac.in>
  • 12. Installing programs  /usr/bin  /usr/share/doc  /etc  ~/.<program>  Dependencies  Packages - .deb, .rpm, ebuilds, …  Compiling from source  ./configure; make; make install  Development headers - *-dev, *-devel  Static linking, dynamic linking, lib versions Chintalagiri Shashank <chintal@iitk.ac.in>
  • 13. Package Management  Aptitude, Yum, Yast  Synaptic, Adept  User permissions, privileges.  Root, sudo, and su.  Repositories  (Debian based) - Main, universe, multiverse, security  Backports  Third-party repositories  Dependency hell Chintalagiri Shashank <chintal@iitk.ac.in>
  • 14. Installing Linux  Things you might need to know  Partition tables and file systems  Ext3 vs reiserfs vs …  Root user  GRUB  Useful separate partitions  /home – take your preferences and data with you  /boot – keep your bootloader separate from the OS, ~50-100 MB  /var or /srv – on servers  /tmp  Swap, swapfs, sharing swap. Chintalagiri Shashank <chintal@iitk.ac.in>
  • 15. Distributions  Repositories  Distribution modifications  Packages availability  Stability and simplicity  Management tools  Update frequency  Bleeding edge vs Stable  Debian stable, unstable, experimental Chintalagiri Shashank <chintal@iitk.ac.in>
  • 16. Installing Linux - Decisions  Which Distribution?  Partition Table  GRUB, LILO, GRUB2  GDM, KDM, XDM  Desktop environments – KDE vs GNOME vs other Chintalagiri Shashank <chintal@iitk.ac.in>
  • 17. Meet the terminal  Shells – bash, ksh, …  Virtual terminals, virtual desktops  Terminal emulators – konsole, gnome-terminal, xterm, aterm …  Tab completion  Pipes, redirections  Scripts  Exit status Chintalagiri Shashank <chintal@iitk.ac.in>
  • 18. Command Structure  <command name> [options] <files>  Options and switches – behavior modification  -h, --help – prints out usage instructions  Use man to get more details  ls, mv, cp, man  cat, grep, sed, awk Chintalagiri Shashank <chintal@iitk.ac.in>
  • 19. Mounting Filesystems  /dev  mount –t [type] <device> <mountpoint>  Mount permissions  /etc/fstab  /etc/mtab  mount –o loop, loop mounting  fuse mounting  curlftpfs -o allow_other <ftp-address> <mountpoint> Chintalagiri Shashank <chintal@iitk.ac.in>
  • 20. Network (debian and derivatives)  Useful files :  /etc/hostname  /etc/network/interfaces  /etc/resolv.conf  /etc/hosts  Useful commands :  ifconfig, route, nslookup, ping, nmap  ifup, ifdown  /etc/init.d/networking Chintalagiri Shashank <chintal@iitk.ac.in>
  • 21. X  /etc/X11/xorg.conf – mostly obsolete  xrandr  (debian and derivatives) dpkg –reconfigure xserver-xorg  Modelines, monitor resolutions  glxinfo, glxgears Chintalagiri Shashank <chintal@iitk.ac.in>
  • 22. Administration  File permissions  Owner, group, all  Read, write, execute  Chmod and chown  Ports  <1000 reserved for root  80 : http, 81: https, 20: ftp, 22: ssh …  Iptables and firestarter  Daemons  /etc/init.d/  Users  /etc/passwd Chintalagiri Shashank <chintal@iitk.ac.in>