SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
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

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
 
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
 
linux
linuxlinux
linux
 

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

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 

Último (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 

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>