SlideShare ist ein Scribd-Unternehmen logo
1 von 70
Downloaden Sie, um offline zu lesen
Programming for Evolutionary Biology
             April 3rd- 19th 2013
             Leipzig, Germany




Introduction to Unix-like systems
      Part 1: What is Unix?
          Giovanni Marco Dall'Olio
          Universitat Pompeu Fabra
              Barcelona (Spain)
Schedule
   9.30 – 11.00: “What is Unix?” 
   11.30 – 12.30: Introducing the terminal
   14:30 – 16:30: Grep & Unix philosophy
   17:00 – 18:00: awk, make, and question time
Schedule
   9.30 – 11.00: “What is Unix?” 
   11.30 – 12.30: Introducing the terminal
   14:30 – 16:30: Grep, cut and sort
   17:00 – 18:00: Unix philosophy, piping and free 
      discussion
What are Unix, GNU, Linux?
   Computer programmers like to use acronyms and 
     strange names for their software
   As a result, in this course you are going to learn a 
     lot of new difficult words :­)
   Let's clarify: Unix, GNU and Linux
What does “Unix” mean?
   Let's go back to the '70s, when computers were very 
     large like houses 
   A big problem was that each computer carried a 
     different operating system: so, a software written 
     for one computer didn't work in any other
What is an operating
             system?
   The set of all the programs needed to use a 
     computer properly
          A software to coordinate all the components of the 
            computer (kernel)
          A software to draw windows and folders (graphical 
            interface)
          Software to edit texts, browse Internet, install other 
             software, etc..
What does “Unix” mean?
   To solve the problem of 
      computer compatibility, 
      the Bell lab released an 
      operating system called 
      Unix
What does “Unix” mean?
   To solve the problem of 
      computer compatibility, 
      the Bell lab released an 
      operating system called 
      Unix
   Unix was rapidly adopted 
     worldwide, and became 
     the standard operating 
     system, specially in 
     universities
What does “Unix” mean?
   To solve the problem of 
      computer compatibility, 
      the Bell lab released an 
      operating system called 
      Unix
   Unix was rapidly adopted 
     worldwide, and became 
     the standard operating 
     system, specially in         Ken Thompson and Dennis Ritchie, creators of Unix

     universities
Innovations introduced by
           Unix
   A novel approach to organizing files and scripts
   Good approach to data analysis
   Free License for universities and companies
Commercial versions of Unix
   Solaris → developed by Sun microsystems
            The computers in our room run Solaris
            Historically used in many multi­processor clusters
   BSD → developed by the University of Berkeley
   ….
What is GNU?
   In the '80s, commercial versions of Unix started 
      appearing
   As a reaction a group leaded by Richard Stallman at 
     MIT started developing a new operating system 
     called GNU 
What is GNU?
   In the '80s, commercial versions of Unix started 
      appearing
   As a reaction a group leaded by Richard Stallman at 
     MIT started developing a new operating system 
     called GNU 




                                   Richard Stallman, creator of GNU and of the GNU GPL license
What is GNU?
   GNU is the name of an operating system, inspired 
     to Unix and distributed as free software
   It was never fully completed, but most of its tools 
       are still used
What is GNU?
   GNU is the name of an operating system, inspired 
     to Unix and distributed as free software
   It was never fully completed, but most of its tools 
       are still used
   Most of the commands we will see today are GNU
What is GNU/Linux?
   The original GNU project was never fully 
     completed
   In 1991, it was merged with another project called 
      Linux, which provided the last component that 
      missing in GNU
GNU/Linux: a free Unix-like
         system
   When it appeared in 1991, GNU/Linux finally 
     provided a free Unix­like operating system
   Thanks to the adoption of GNU/Linux servers, 
     Internet grew considerably in 1991­1992, 
Resume: Unix, GNU, and
            Linux
   Unix is the name of an operating system developed 
     in the '70s
   GNU is the name of a operating system, inspired to 
     Unix but distributed for free, developed in the 
     '80s
   GNU/Linux is a modern operating system, merging 
     GNU with another project (Linux)
Which operating system are
  we going to use in this
         course?
   All the computers in front of you use the Solaris 
     operating system. 
   However, we are going to connect to a central 
     server, where a GNU/Linux system (Fedora) is 
     installed.
What is the difference
      between Solaris and
           GNU/Linux?
   Most of the software will be compatible
   Solaris is a commercial system, bundled together 
     with a specific hardware
Raise-your-hands time!
   Have you ever used a Unix­based operating system 
     before today? 
Hands on Solaris
   Let's turn on the computers!
       ●   Username: evop<computer id>
               –   Example: if your computer is 30, the username is 
                    evop30
       ●   Password: Pro4EvBi (Programming 4 Evolutionary 
             Biology)
While the computer loads:
make yourself comfortable!




 http://www.codinghorror.com/blog/2007/08/computer-workstation-ergonomics.html
This is how your desktop should
   look like, after logging in:
The Solaris interface
   The Solaris interface is different from Windows and 
     MacOS, but it should not be difficult to use
       ●   You have a “Launch” menu, from which you can 
            access all the applications installed 
       ●   The interface is similar to an early Windows system
Our course - computers
     infrastructure
Connecting to evopserver
   During this course, we are going to do all the 
     exercises on a remote Fedora server
   Let's see how to connect to it
Connecting to evopserver
   The first thing to do is to launch a terminal emulator
       ●   Go to Applications­>Utilities­>Terminal 
How does a terminal looks
          like?
Connect to the evopserver
   Use the following command to connect to the evopserver:
        ●   “ssh ­X <your_username>@evopserver.bioinf.uni­leipzig.de”
   Password:
           “HafbbiL!”  (as “Have again fun by bioinf in Leipzig !”)
Connect to the evopserver
   Use the following command to connect to the evopserver:
        ●   “ssh ­X <your_username>@evopserver.bioinf.uni­leipzig.de”
   For example, if your username is giovanni, you should type:
        ●   “ssh ­X giovanni@evopserver.bioinf.uni­leipzig.de”
   Don't forget the “­X” option!
Connecting to the
             evopserver
   The evopserver will ask you to confirm if you want 
     to connect
   Type “yes” (not “y”), and press Enter
Connecting to the
             evopserver
   Now you should be asked for a password. Enter it 
     and you should be able to access to the 
     evopserver
Are you here?
   If you have done everything right, you should see 
       something like the following:
Browsing files in the
            evopserver
   We will see how to use the terminal later today
   For now, let's see which files are in the server
   Do to so, type “nautilus” in the terminal
Type “nautilus” in the
      terminal
Did you get an error when
    typing “nautilus” ?
   Did you get the following error: “Could not 
     parse arguments: Can not open display” ?
   It means that you forgot to provide the ­X 
       option when you connected
   Type “exit” to logout, then ssh ­X 
     giovanni@evopserver.bioinf.uni­leipzig.de
nautilus
   When you type “nautilus”, you should see a 
     windows showing all the files in the evopserver 
     computer
Nautilus - explanation
   “nautilus” is the name 
      of the software used 
      to visualize folders in 
      GNU/Linux
   When we type 
     “nautilus” in the 
     terminal, we execute 
     it from the 
     evopserver computer
The Unix file system
   All the files in a Unix system are organized in 
     directories
   Directories are organized as a “tree” of diretories
   The base directory is called “root” and indicated by 
     a “/”
Exercise: look at the file
    system of a Unix system
   Click on “File System” on the left frame
Contents of the “root”
            directory
   /bin, /usr, /local, /sys → these folders contain the 
      software installed
   /etc, /var, → system­wide configuration
   /home → contains users' private files
   Other folders → you can ignore them for now 
The Home folder
   The /home folder contains all the users' folder
   If you open it, you will see a different folder for 
       each of you
       ●   Only the administrator has the right of open other 
            people's folder
   There is a special folder called “evopadmin”, which 
     contains the materials of the course
The home folder
The course materials
   All the course materials are located in the 
     /home/evopadmin folder
   The slides of this module are in 
     /home/evopadmin/unix_intro
Exercise
   Copy all the materials of the course in your home 
     directory
   Just open two separate windows, one for your home 
      and one for /evopadmin, and drag­drop the 
      unix_course folder
What is in the unix_intro
           directory?
   exercises: files needed for exercises today
   slides: all the slides of this module
   cheatsheets: some cards to help you remember the 
      commands we are going to use today
Launching a text editor
        from evopserver
   gedit is a text editor software
   You will use it to write scripts in the next modules 
     of this course
Launching a text editor
        from evopserver
   gedit is a text editor software
   You will use it to write scripts in the next modules 
     of this course
   To run it, execute gedit from the command line:
Launching a web browser
        from evopserver
   Some modules of this course will require to use a 
     web browser
   Use the command google­chrome on evopserver:
Launching a web browser
        from evopserver
   Some modules of this course will require to use a 
     web browser
   Use the command google­chrome on evopserver:
Restoring the prompt
         after launching
          google-chrome
   Note that after launching google­chrome, the 
     terminal will not accept commands anymore
   To restore it, use the key CTRL­z
Restoring the prompt
         after launching
          google-chrome
   To restore google­chrome, after CTRL­z, use the bg 
     command
How can I use a Unix system
     at my home / lab?
The GNU/Linux distributions
   There is not a single official “GNU/Linux” 
     operating system
   Rather, there are many “Linux distributions”, 
     created by different groups of people for different 
     tasks
What is the difference
between linux distributions?
   The software included by default when you install the 
      system
        ●   e.g. some may have a different default text editor
        ●   Some linux distributions include only free software, 
              others are less strict
        ●   However, all the software available for Linux is 
             installable in any other distribution 
What is the difference
between linux distributions?
   The software included by default when you install the 
      system
        ●   e.g.: one linux distribution can have “gedit” as the default 
              editor, while another has “emacs”
        ●   Some linux distributions include only free software, 
              others are less strict
        ●   However, all the software available for Linux is 
             installable in any other distribution 
   Some technical details such as the libraries used to compile 
      the software
   The default configuration (desktop, windows...)
Examples of Linux
            Distributions
               (2012)
   Ubuntu is a popular Linux distribution targeted at 
     beginners
   BioLinux is a Linux distribution targeted at 
     bioinformaticians
   Fedora is a popular Linux distribution, used in 
      many academic institutions
Ubuntu

       One of the most 
         popular distributions
       Good for novices 
         (doesn't need much 
         extra configuration)
BioLinux
       Distribution designed 
         for bioinformaticians
       When installed, it 
         already contains a lot 
         of bioinformatics 
         tools
              Blast, bioperl, etc..
Biolinux DVDs
          You should have 
            received a DVD of 
            Bio­Linux along with 
            the materials of the 
            course
          To use it, insert it in 
            your computer and 
            reboot
Fedora

        Fedora is another 
           GNU/Linux 
           distribution
        Popular in many 
          universities
Is MacOS an Unix-based
       operating system?
   Yes, the MacOS system is also inspired to Unix
   In principle, you can do bioinformatics and follow 
      this course on a MacOS system
   Installing bioinformatics­specific software may be a 
      bit more difficult
What if I don't want to
      switch from Windows?
   Many alternatives:
          Cygwin → simulates a Linux environment and 
            command line from Windows
          Emulation → emulate a whole computer, which can 
            run Linux or other operating systems 
          Connect to a cluster or a Cloud computing instance
Cygwin
      Cygwin can be installed as 
        a standard Windows 
        software
      It provides a command 
          line interface, and 
          allows to launch Linux 
          software
      Installing non­standard 
         software may be 
         difficult, because you'll 
         need to compile it 
Emulating Linux from
           Windows
   A popular emulation 
     software is 
     “virtualbox”
   https://www.virtualbox
    .org/wiki/Downloads
       
Connecting to a cluster
   putty: allows to 
     connect to a remote 
     server (from 
     Windows)
Cloud computing
   Cloud computing is a 
     service where you 
     “rent” a remote 
     computer
   You pay depending on 
     the CPUs/RAM/time 
     used
Resume of the session
   Unix → Operating system that in the '70s, 
     introduced innovative approach
   Materials of the course → they are all in the 
     /home/evopadmin folder
   GNU/Linux, Fedora, Ubuntu → modern operating 
     systems inspired to Unix
Let's have a break!

Weitere ähnliche Inhalte

Was ist angesagt?

Lesson 1 Linux System Fundamentals
Lesson 1 Linux System Fundamentals  Lesson 1 Linux System Fundamentals
Lesson 1 Linux System Fundamentals Sadia Bashir
 
Terminal Commands (Linux - ubuntu) (part-1)
Terminal Commands  (Linux - ubuntu) (part-1)Terminal Commands  (Linux - ubuntu) (part-1)
Terminal Commands (Linux - ubuntu) (part-1)raj upadhyay
 
Unix command line concepts
Unix command line conceptsUnix command line concepts
Unix command line conceptsArtem Nagornyi
 
Linux powerpoint
Linux powerpointLinux powerpoint
Linux powerpointbijanshr
 
Module 02 Using Linux Command Shell
Module 02 Using Linux Command ShellModule 02 Using Linux Command Shell
Module 02 Using Linux Command ShellTushar B Kute
 
Unix(introduction)
Unix(introduction)Unix(introduction)
Unix(introduction)meashi
 
50 most frequently used unix linux commands (with examples)
50 most frequently used unix   linux commands (with examples)50 most frequently used unix   linux commands (with examples)
50 most frequently used unix linux commands (with examples)Rodrigo Maia
 
Introduction to-linux
Introduction to-linuxIntroduction to-linux
Introduction to-linuxkishore1986
 
Useful linux-commands
Useful linux-commandsUseful linux-commands
Useful linux-commandsHimani Singh
 
Part 6 of "Introduction to linux for bioinformatics": Productivity tips
Part 6 of "Introduction to linux for bioinformatics": Productivity tipsPart 6 of "Introduction to linux for bioinformatics": Productivity tips
Part 6 of "Introduction to linux for bioinformatics": Productivity tipsJoachim Jacob
 
Common linux ubuntu commands overview
Common linux  ubuntu commands overviewCommon linux  ubuntu commands overview
Common linux ubuntu commands overviewAmeer Sameer
 
Terminal commands ubuntu 2
Terminal commands ubuntu 2Terminal commands ubuntu 2
Terminal commands ubuntu 2raj upadhyay
 
Top 10 Random Linux/Ubuntu Commands
Top 10 Random Linux/Ubuntu CommandsTop 10 Random Linux/Ubuntu Commands
Top 10 Random Linux/Ubuntu CommandsYusuf Felly
 

Was ist angesagt? (20)

Lesson 1 Linux System Fundamentals
Lesson 1 Linux System Fundamentals  Lesson 1 Linux System Fundamentals
Lesson 1 Linux System Fundamentals
 
Terminal Commands (Linux - ubuntu) (part-1)
Terminal Commands  (Linux - ubuntu) (part-1)Terminal Commands  (Linux - ubuntu) (part-1)
Terminal Commands (Linux - ubuntu) (part-1)
 
Basic linux commands
Basic linux commandsBasic linux commands
Basic linux commands
 
Unix command line concepts
Unix command line conceptsUnix command line concepts
Unix command line concepts
 
Linux powerpoint
Linux powerpointLinux powerpoint
Linux powerpoint
 
Module 02 Using Linux Command Shell
Module 02 Using Linux Command ShellModule 02 Using Linux Command Shell
Module 02 Using Linux Command Shell
 
Unix(introduction)
Unix(introduction)Unix(introduction)
Unix(introduction)
 
50 most frequently used unix linux commands (with examples)
50 most frequently used unix   linux commands (with examples)50 most frequently used unix   linux commands (with examples)
50 most frequently used unix linux commands (with examples)
 
Introduction to-linux
Introduction to-linuxIntroduction to-linux
Introduction to-linux
 
Linux Commands
Linux CommandsLinux Commands
Linux Commands
 
Useful linux-commands
Useful linux-commandsUseful linux-commands
Useful linux-commands
 
Part 6 of "Introduction to linux for bioinformatics": Productivity tips
Part 6 of "Introduction to linux for bioinformatics": Productivity tipsPart 6 of "Introduction to linux for bioinformatics": Productivity tips
Part 6 of "Introduction to linux for bioinformatics": Productivity tips
 
Common linux ubuntu commands overview
Common linux  ubuntu commands overviewCommon linux  ubuntu commands overview
Common linux ubuntu commands overview
 
BASIC COMMANDS OF LINUX
BASIC COMMANDS OF LINUXBASIC COMMANDS OF LINUX
BASIC COMMANDS OF LINUX
 
Linux final exam
Linux final examLinux final exam
Linux final exam
 
Unix practical file
Unix practical fileUnix practical file
Unix practical file
 
Basic 50 linus command
Basic 50 linus commandBasic 50 linus command
Basic 50 linus command
 
Terminal commands ubuntu 2
Terminal commands ubuntu 2Terminal commands ubuntu 2
Terminal commands ubuntu 2
 
Unix environment [autosaved]
Unix environment [autosaved]Unix environment [autosaved]
Unix environment [autosaved]
 
Top 10 Random Linux/Ubuntu Commands
Top 10 Random Linux/Ubuntu CommandsTop 10 Random Linux/Ubuntu Commands
Top 10 Random Linux/Ubuntu Commands
 

Andere mochten auch (20)

Agile bioinf
Agile bioinfAgile bioinf
Agile bioinf
 
Version control
Version controlVersion control
Version control
 
Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...
Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...
Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...
 
Wagner chapter 5
Wagner chapter 5Wagner chapter 5
Wagner chapter 5
 
Wagner chapter 2
Wagner chapter 2Wagner chapter 2
Wagner chapter 2
 
Wagner chapter 4
Wagner chapter 4Wagner chapter 4
Wagner chapter 4
 
Wagner chapter 1
Wagner chapter 1Wagner chapter 1
Wagner chapter 1
 
Wagner chapter 3
Wagner chapter 3Wagner chapter 3
Wagner chapter 3
 
Linux intro 5 extra: makefiles
Linux intro 5 extra: makefilesLinux intro 5 extra: makefiles
Linux intro 5 extra: makefiles
 
Linux intro 4 awk + makefile
Linux intro 4  awk + makefileLinux intro 4  awk + makefile
Linux intro 4 awk + makefile
 
Linux intro 5 extra: awk
Linux intro 5 extra: awkLinux intro 5 extra: awk
Linux intro 5 extra: awk
 
Linux intro 3 grep + Unix piping
Linux intro 3 grep + Unix pipingLinux intro 3 grep + Unix piping
Linux intro 3 grep + Unix piping
 
Unix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell ScriptUnix/Linux Basic Commands and Shell Script
Unix/Linux Basic Commands and Shell Script
 
Unix Operating System
Unix Operating SystemUnix Operating System
Unix Operating System
 
TMG Intro To Linux
TMG Intro To LinuxTMG Intro To Linux
TMG Intro To Linux
 
Linux Intro
Linux   IntroLinux   Intro
Linux Intro
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
Intro To Linux
Intro To LinuxIntro To Linux
Intro To Linux
 
Encryption basics
Encryption basicsEncryption basics
Encryption basics
 
Linux day 2016 la shell in linux
Linux day 2016   la shell in linuxLinux day 2016   la shell in linux
Linux day 2016 la shell in linux
 

Ähnlich wie Linux intro 1 definitions

I Am Linux-Introductory Module on Linux
I Am Linux-Introductory Module on LinuxI Am Linux-Introductory Module on Linux
I Am Linux-Introductory Module on LinuxSagar Kumar
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linuxMedhat Dawoud
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to LinuxAjmaineKhan
 
Introduction to Linux for bioinformatics
Introduction to Linux for bioinformaticsIntroduction to Linux for bioinformatics
Introduction to Linux for bioinformaticsBITS
 
Introduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxIntroduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxSheila Eiffert
 
Intro tounix
Intro tounixIntro tounix
Intro tounixdjprince
 
Linux ppt
Linux pptLinux ppt
Linux pptlincy21
 
Introduction to Linux_by_Amit & Jiban
Introduction to Linux_by_Amit & Jiban Introduction to Linux_by_Amit & Jiban
Introduction to Linux_by_Amit & Jiban Amit Nath
 
IntroToUnix.ppt.intro.to.linuxlinuxintroduction
IntroToUnix.ppt.intro.to.linuxlinuxintroductionIntroToUnix.ppt.intro.to.linuxlinuxintroduction
IntroToUnix.ppt.intro.to.linuxlinuxintroductionNagavelliMadhavi
 
Linux Basic
Linux BasicLinux Basic
Linux BasicMozaSaid
 
Linux operating system
Linux operating systemLinux operating system
Linux operating systemMohamed Essam
 
ppt on linux by MUKESH PATEL
ppt on linux by MUKESH PATELppt on linux by MUKESH PATEL
ppt on linux by MUKESH PATELneo_patel
 

Ähnlich wie Linux intro 1 definitions (20)

I Am Linux-Introductory Module on Linux
I Am Linux-Introductory Module on LinuxI Am Linux-Introductory Module on Linux
I Am Linux-Introductory Module on Linux
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
Linux opearting system ppt
Linux opearting system pptLinux opearting system ppt
Linux opearting system ppt
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linux
 
Introduction to Linux for bioinformatics
Introduction to Linux for bioinformaticsIntroduction to Linux for bioinformatics
Introduction to Linux for bioinformatics
 
Introduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/LinuxIntroduction To Opensource And GNU/Linux
Introduction To Opensource And GNU/Linux
 
Foss Presentation
Foss PresentationFoss Presentation
Foss Presentation
 
Intro tounix
Intro tounixIntro tounix
Intro tounix
 
Linux ppt
Linux pptLinux ppt
Linux ppt
 
Linux
LinuxLinux
Linux
 
Introduction to Linux_by_Amit & Jiban
Introduction to Linux_by_Amit & Jiban Introduction to Linux_by_Amit & Jiban
Introduction to Linux_by_Amit & Jiban
 
IntroToUnix.ppt
IntroToUnix.pptIntroToUnix.ppt
IntroToUnix.ppt
 
IntroToUnix.ppt.intro.to.linuxlinuxintroduction
IntroToUnix.ppt.intro.to.linuxlinuxintroductionIntroToUnix.ppt.intro.to.linuxlinuxintroduction
IntroToUnix.ppt.intro.to.linuxlinuxintroduction
 
Intro tounix
Intro tounixIntro tounix
Intro tounix
 
Linux Basic
Linux BasicLinux Basic
Linux Basic
 
Ch1-Unix.pptx
Ch1-Unix.pptxCh1-Unix.pptx
Ch1-Unix.pptx
 
Unix Project
Unix Project Unix Project
Unix Project
 
macOS a fetish object for the Bourgeois - macOS vs Unix
macOS a fetish object for the Bourgeois - macOS vs UnixmacOS a fetish object for the Bourgeois - macOS vs Unix
macOS a fetish object for the Bourgeois - macOS vs Unix
 
Linux operating system
Linux operating systemLinux operating system
Linux operating system
 
ppt on linux by MUKESH PATEL
ppt on linux by MUKESH PATELppt on linux by MUKESH PATEL
ppt on linux by MUKESH PATEL
 

Mehr von Giovanni Marco Dall'Olio

Mehr von Giovanni Marco Dall'Olio (11)

Fehrman Nat Gen 2014 - Journal Club
Fehrman Nat Gen 2014 - Journal ClubFehrman Nat Gen 2014 - Journal Club
Fehrman Nat Gen 2014 - Journal Club
 
Hg for bioinformatics, second part
Hg for bioinformatics, second partHg for bioinformatics, second part
Hg for bioinformatics, second part
 
Hg version control bioinformaticians
Hg version control bioinformaticiansHg version control bioinformaticians
Hg version control bioinformaticians
 
The true story behind the annotation of a pathway
The true story behind the annotation of a pathwayThe true story behind the annotation of a pathway
The true story behind the annotation of a pathway
 
Plotting data with python and pylab
Plotting data with python and pylabPlotting data with python and pylab
Plotting data with python and pylab
 
Pycon
PyconPycon
Pycon
 
Makefiles Bioinfo
Makefiles BioinfoMakefiles Bioinfo
Makefiles Bioinfo
 
biopython, doctest and makefiles
biopython, doctest and makefilesbiopython, doctest and makefiles
biopython, doctest and makefiles
 
Web 2.0 e ricerca scientifica - Web 2.0 and scientific research
Web 2.0 e ricerca scientifica - Web 2.0 and scientific researchWeb 2.0 e ricerca scientifica - Web 2.0 and scientific research
Web 2.0 e ricerca scientifica - Web 2.0 and scientific research
 
Perl Bioinfo
Perl BioinfoPerl Bioinfo
Perl Bioinfo
 
(draft) perl e bioinformatica - presentazione per ipw2008
(draft) perl e bioinformatica - presentazione per ipw2008(draft) perl e bioinformatica - presentazione per ipw2008
(draft) perl e bioinformatica - presentazione per ipw2008
 

Kürzlich hochgeladen

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Linux intro 1 definitions

  • 1. Programming for Evolutionary Biology April 3rd- 19th 2013 Leipzig, Germany Introduction to Unix-like systems Part 1: What is Unix? Giovanni Marco Dall'Olio Universitat Pompeu Fabra Barcelona (Spain)
  • 2. Schedule  9.30 – 11.00: “What is Unix?”   11.30 – 12.30: Introducing the terminal  14:30 – 16:30: Grep & Unix philosophy  17:00 – 18:00: awk, make, and question time
  • 3. Schedule  9.30 – 11.00: “What is Unix?”   11.30 – 12.30: Introducing the terminal  14:30 – 16:30: Grep, cut and sort  17:00 – 18:00: Unix philosophy, piping and free  discussion
  • 4. What are Unix, GNU, Linux?  Computer programmers like to use acronyms and  strange names for their software  As a result, in this course you are going to learn a  lot of new difficult words :­)  Let's clarify: Unix, GNU and Linux
  • 5. What does “Unix” mean?  Let's go back to the '70s, when computers were very  large like houses   A big problem was that each computer carried a  different operating system: so, a software written  for one computer didn't work in any other
  • 6. What is an operating system?  The set of all the programs needed to use a  computer properly  A software to coordinate all the components of the  computer (kernel)  A software to draw windows and folders (graphical  interface)  Software to edit texts, browse Internet, install other  software, etc..
  • 7. What does “Unix” mean?  To solve the problem of  computer compatibility,  the Bell lab released an  operating system called  Unix
  • 8. What does “Unix” mean?  To solve the problem of  computer compatibility,  the Bell lab released an  operating system called  Unix  Unix was rapidly adopted  worldwide, and became  the standard operating  system, specially in  universities
  • 9. What does “Unix” mean?  To solve the problem of  computer compatibility,  the Bell lab released an  operating system called  Unix  Unix was rapidly adopted  worldwide, and became  the standard operating  system, specially in  Ken Thompson and Dennis Ritchie, creators of Unix universities
  • 10. Innovations introduced by Unix  A novel approach to organizing files and scripts  Good approach to data analysis  Free License for universities and companies
  • 11. Commercial versions of Unix  Solaris → developed by Sun microsystems  The computers in our room run Solaris  Historically used in many multi­processor clusters  BSD → developed by the University of Berkeley  ….
  • 12. What is GNU?  In the '80s, commercial versions of Unix started  appearing  As a reaction a group leaded by Richard Stallman at  MIT started developing a new operating system  called GNU 
  • 13. What is GNU?  In the '80s, commercial versions of Unix started  appearing  As a reaction a group leaded by Richard Stallman at  MIT started developing a new operating system  called GNU  Richard Stallman, creator of GNU and of the GNU GPL license
  • 14. What is GNU?  GNU is the name of an operating system, inspired  to Unix and distributed as free software  It was never fully completed, but most of its tools  are still used
  • 15. What is GNU?  GNU is the name of an operating system, inspired  to Unix and distributed as free software  It was never fully completed, but most of its tools  are still used  Most of the commands we will see today are GNU
  • 16. What is GNU/Linux?  The original GNU project was never fully  completed  In 1991, it was merged with another project called  Linux, which provided the last component that  missing in GNU
  • 17. GNU/Linux: a free Unix-like system  When it appeared in 1991, GNU/Linux finally  provided a free Unix­like operating system  Thanks to the adoption of GNU/Linux servers,  Internet grew considerably in 1991­1992, 
  • 18. Resume: Unix, GNU, and Linux  Unix is the name of an operating system developed  in the '70s  GNU is the name of a operating system, inspired to  Unix but distributed for free, developed in the  '80s  GNU/Linux is a modern operating system, merging  GNU with another project (Linux)
  • 19. Which operating system are we going to use in this course?  All the computers in front of you use the Solaris  operating system.   However, we are going to connect to a central  server, where a GNU/Linux system (Fedora) is  installed.
  • 20. What is the difference between Solaris and GNU/Linux?  Most of the software will be compatible  Solaris is a commercial system, bundled together  with a specific hardware
  • 21. Raise-your-hands time!  Have you ever used a Unix­based operating system  before today? 
  • 22. Hands on Solaris  Let's turn on the computers! ● Username: evop<computer id> – Example: if your computer is 30, the username is  evop30 ● Password: Pro4EvBi (Programming 4 Evolutionary  Biology)
  • 23. While the computer loads: make yourself comfortable! http://www.codinghorror.com/blog/2007/08/computer-workstation-ergonomics.html
  • 24. This is how your desktop should look like, after logging in:
  • 25. The Solaris interface  The Solaris interface is different from Windows and  MacOS, but it should not be difficult to use ● You have a “Launch” menu, from which you can  access all the applications installed  ● The interface is similar to an early Windows system
  • 26. Our course - computers infrastructure
  • 27. Connecting to evopserver  During this course, we are going to do all the  exercises on a remote Fedora server  Let's see how to connect to it
  • 28. Connecting to evopserver  The first thing to do is to launch a terminal emulator ● Go to Applications­>Utilities­>Terminal 
  • 29. How does a terminal looks like?
  • 30. Connect to the evopserver  Use the following command to connect to the evopserver: ● “ssh ­X <your_username>@evopserver.bioinf.uni­leipzig.de”  Password:  “HafbbiL!”  (as “Have again fun by bioinf in Leipzig !”)
  • 31. Connect to the evopserver  Use the following command to connect to the evopserver: ● “ssh ­X <your_username>@evopserver.bioinf.uni­leipzig.de”  For example, if your username is giovanni, you should type: ● “ssh ­X giovanni@evopserver.bioinf.uni­leipzig.de”  Don't forget the “­X” option!
  • 32. Connecting to the evopserver  The evopserver will ask you to confirm if you want  to connect  Type “yes” (not “y”), and press Enter
  • 33. Connecting to the evopserver  Now you should be asked for a password. Enter it  and you should be able to access to the  evopserver
  • 34. Are you here?  If you have done everything right, you should see  something like the following:
  • 35. Browsing files in the evopserver  We will see how to use the terminal later today  For now, let's see which files are in the server  Do to so, type “nautilus” in the terminal
  • 36. Type “nautilus” in the terminal
  • 37. Did you get an error when typing “nautilus” ?  Did you get the following error: “Could not  parse arguments: Can not open display” ?  It means that you forgot to provide the ­X  option when you connected  Type “exit” to logout, then ssh ­X  giovanni@evopserver.bioinf.uni­leipzig.de
  • 38. nautilus  When you type “nautilus”, you should see a  windows showing all the files in the evopserver  computer
  • 39. Nautilus - explanation  “nautilus” is the name  of the software used  to visualize folders in  GNU/Linux  When we type  “nautilus” in the  terminal, we execute  it from the  evopserver computer
  • 40. The Unix file system  All the files in a Unix system are organized in  directories  Directories are organized as a “tree” of diretories  The base directory is called “root” and indicated by  a “/”
  • 41. Exercise: look at the file system of a Unix system  Click on “File System” on the left frame
  • 42. Contents of the “root” directory  /bin, /usr, /local, /sys → these folders contain the  software installed  /etc, /var, → system­wide configuration  /home → contains users' private files  Other folders → you can ignore them for now 
  • 43. The Home folder  The /home folder contains all the users' folder  If you open it, you will see a different folder for  each of you ● Only the administrator has the right of open other  people's folder  There is a special folder called “evopadmin”, which  contains the materials of the course
  • 45. The course materials  All the course materials are located in the  /home/evopadmin folder  The slides of this module are in  /home/evopadmin/unix_intro
  • 46. Exercise  Copy all the materials of the course in your home  directory  Just open two separate windows, one for your home  and one for /evopadmin, and drag­drop the  unix_course folder
  • 47. What is in the unix_intro directory?  exercises: files needed for exercises today  slides: all the slides of this module  cheatsheets: some cards to help you remember the  commands we are going to use today
  • 48. Launching a text editor from evopserver  gedit is a text editor software  You will use it to write scripts in the next modules  of this course
  • 49. Launching a text editor from evopserver  gedit is a text editor software  You will use it to write scripts in the next modules  of this course  To run it, execute gedit from the command line:
  • 50. Launching a web browser from evopserver  Some modules of this course will require to use a  web browser  Use the command google­chrome on evopserver:
  • 51. Launching a web browser from evopserver  Some modules of this course will require to use a  web browser  Use the command google­chrome on evopserver:
  • 52. Restoring the prompt after launching google-chrome  Note that after launching google­chrome, the  terminal will not accept commands anymore  To restore it, use the key CTRL­z
  • 53. Restoring the prompt after launching google-chrome  To restore google­chrome, after CTRL­z, use the bg  command
  • 54. How can I use a Unix system at my home / lab?
  • 55. The GNU/Linux distributions  There is not a single official “GNU/Linux”  operating system  Rather, there are many “Linux distributions”,  created by different groups of people for different  tasks
  • 56. What is the difference between linux distributions?  The software included by default when you install the  system ● e.g. some may have a different default text editor ● Some linux distributions include only free software,  others are less strict ● However, all the software available for Linux is  installable in any other distribution 
  • 57. What is the difference between linux distributions?  The software included by default when you install the  system ● e.g.: one linux distribution can have “gedit” as the default  editor, while another has “emacs” ● Some linux distributions include only free software,  others are less strict ● However, all the software available for Linux is  installable in any other distribution   Some technical details such as the libraries used to compile  the software  The default configuration (desktop, windows...)
  • 58. Examples of Linux Distributions (2012)  Ubuntu is a popular Linux distribution targeted at  beginners  BioLinux is a Linux distribution targeted at  bioinformaticians  Fedora is a popular Linux distribution, used in  many academic institutions
  • 59. Ubuntu  One of the most  popular distributions  Good for novices  (doesn't need much  extra configuration)
  • 60. BioLinux  Distribution designed  for bioinformaticians  When installed, it  already contains a lot  of bioinformatics  tools  Blast, bioperl, etc..
  • 61. Biolinux DVDs  You should have  received a DVD of  Bio­Linux along with  the materials of the  course  To use it, insert it in  your computer and  reboot
  • 62. Fedora  Fedora is another  GNU/Linux  distribution  Popular in many  universities
  • 63. Is MacOS an Unix-based operating system?  Yes, the MacOS system is also inspired to Unix  In principle, you can do bioinformatics and follow  this course on a MacOS system  Installing bioinformatics­specific software may be a  bit more difficult
  • 64. What if I don't want to switch from Windows?  Many alternatives:  Cygwin → simulates a Linux environment and  command line from Windows  Emulation → emulate a whole computer, which can  run Linux or other operating systems   Connect to a cluster or a Cloud computing instance
  • 65. Cygwin  Cygwin can be installed as  a standard Windows  software  It provides a command  line interface, and  allows to launch Linux  software  Installing non­standard  software may be  difficult, because you'll  need to compile it 
  • 66. Emulating Linux from Windows  A popular emulation  software is  “virtualbox”  https://www.virtualbox .org/wiki/Downloads  
  • 67. Connecting to a cluster  putty: allows to  connect to a remote  server (from  Windows)
  • 68. Cloud computing  Cloud computing is a  service where you  “rent” a remote  computer  You pay depending on  the CPUs/RAM/time  used
  • 69. Resume of the session  Unix → Operating system that in the '70s,  introduced innovative approach  Materials of the course → they are all in the  /home/evopadmin folder  GNU/Linux, Fedora, Ubuntu → modern operating  systems inspired to Unix
  • 70. Let's have a break!