
76bb392392c4ef1c1999cecceb547c65.ppt
- Количество слайдов: 63
Every Thing You Should Know About Linux Prabhaker Mateti Department Of Computer Science and Engineering Wright State University May 2008 Mateti-Everything-About-Linux
Are you sure you have not used Linux already? May 2008 Mateti-Everything-About-Linux
May 2008 Mateti-Everything-About-Linux 3
Linux runs on … PDA? Smart Phone? l GPS? l Ti. VO? l Router? Wireless AP? l Wrist watch? l Car? Airplane? l May 2008 Mateti-Everything-About-Linux 4
Linux Cell Phones l l l Motorola Rokr E 8 Quad GSM/GPRS Multi-codec music player Full HTML browser Jan. 10, 2008 May 2008 Mateti-Everything-About-Linux 5
Linux Cell Phones l l l http: //openmoko. org Open source hardware Free CAD files May 2008 Mateti-Everything-About-Linux 6
Linux on i. Pods l l u. CLinux + podzilla www. ipodlinux. org/ i. POds to 5. 5 G i. Pod Nano 1 G May 2008 Mateti-Everything-About-Linux 7
One Laptop Per Child l l May 2008 Runs on Linux Sugar “desktop” promotes sharing and learning. Mateti-Everything-About-Linux 8
Google Linux Clusters l GFS: The Google File System l thousands of terabytes of storage across thousands of disks on over a thousand machines 150 million queries per day l Average response time of 0. 25 sec l Near-100% uptime l May 2008 Mateti-Everything-About-Linux 9
Smallest Linux System l l l l Mar. 28, 2005 Digi. Connect ME RJ-45 Plus 0. 75 x 1. 4 in 18 grams 2. 4. 27 u. Clinux 32 -bit ARM 7 TDMI May 2008 Mateti-Everything-About-Linux 10
Overview of the Rest of the. Talk 1. 2. 3. 4. 5. 6. 7. May 2008 Linux Internals Distributions Desktop Environments Linux Clusters Security Open Source Software Important Applications Mateti-Everything-About-Linux 11
Linux Internals May 2008 Mateti-Everything-About-Linux
Academic Def: An OS consists of File Systems l Virtual Memory Management l Process Management l Network Layer l Input/Output Subsystem l User Management l (Booting the OS) l [Collection of System Programs] l May 2008 Mateti-Everything-About-Linux 13
Academic Definition of Kernel OS are expected to be implemented as Layers l Kernel is the inner most layer l Layers are architecturally supported by CPU privilege modes. l Micro-kernel architecture l May 2008 Mateti-Everything-About-Linux 14
“Linux kernel” The OS as we defined – boot – Sys. Prgs l Monolithic l As Files l l /boot/vmlinuz l /boot/initrd l /lib/modules/* single file about 3500 files 4 Million lines of code l Several thousand contributors l May 2008 Mateti-Everything-About-Linux 15
Linux Kernels l Numbering Scheme: Major. Minor. Release l 2. 2 (1999) l 2. 4 (2001) l 2. 6 (2003) l Current Source Code Versions: l linux-2. 6. 25. 3. tar. bz 2 10 -May-2008 46 MB l linux-2. 4. 36. 4. tar. bz 2 07 -May-2008 30 MB l linux-2. 2. 26. tar. bz 2 24 -Feb-2004 15 MB May 2008 Mateti-Everything-About-Linux 16
“Linux” as used in this Talk l l l Linux Kernel System Programs: /sbin, /usr/sbin UI l l l Utilities l l /bin, /usr/bin, … Applications l l Desktop Env: X 11, KDE, Gnome, … Shells: Bash, csh, ksh, … Publishing: Te. X, Meta. Post, PS, PDF, … Multimedia: Audio, Video Sotware Development: Perl, Python, Ruby, Servers l l l May 2008 Web File Compute Mateti-Everything-About-Linux 17
K Desktop Environment (KDE) 4 Million lines of code l Over 800 contributors help to develop KDE. l The translation team: about 300. l KDE has about 20 official WWW mirrors in 12 countries. l KDE has more than 106 official FTP mirrors in over 39 countries l May 2008 Mateti-Everything-About-Linux 18
KDE Components l l l l l a. Rts: Analog realtime synthesizer and sound daemon. KDE 4. 0 uses Phonon KDE-Libs: Various run-time libraries KDE-Base: window-manager, desktop, panel, Konqueror KDE-Network: KNode, KNewsticker, Kppp, . . . KDE-Pim: KMail, KAddressbook, KOrganizer, KPilot, . . . KDE-Graphics: Graphics applications such as KDVI, KGhostview, KPaint, KFax, . . . KDE-Multimedia: Noatun, KMidi, KSCD, . . . KDE-Accessibility: applications to improve computer access for disabled people. . . KDE-Utilities: KEdit, KCalc, KHex. Edit, KNotes, . . . KDE-Edu: Edutainment applications KDE-Games: KAsteroids, KPat, KTetris, . . . KDE-Admin: Various tools to aid system administration KDE-SDK: Script and tools which simplify development of KDE applications KOffice: Integrated office suite KDevelop: C/C++ Integrated Development Environment KDE-Bindings: bindings for various languages (Python, Ruby, Perl, Java. . . ) KDEWebdev: Web Development Tool May 2008 Mateti-Everything-About-Linux 19
Native Linux File Systems l Extended File System l Ext 2 l Ext 3 l Ext 4 l Other Journaling File Systems l Reiser. FS l SGI XFS l IBM JFS May 2008 Mateti-Everything-About-Linux 20
Linux Non-Native File Systems NTFS 5: Full read/write operations l Native File Systems of every major OS fully supported: l l FAT, FAT 16, FAT 32 of Windows l Mac. OS l Solaris l BSD May 2008 Mateti-Everything-About-Linux 21
Distributed File Systems l Classic DFS l NFS l AFS l Samba l for Windows Linux is a rich test bed for DFS research l KOSMOS http: //kosmosfs. sourceforge. net/ l Ceph http: //ceph. newdream. net/ l Many encrypted file systems May 2008 Mateti-Everything-About-Linux 22
Linux Distributions May 2008 Mateti-Everything-About-Linux
Linux Distributions Define “distribution”! l Major Distributions l l Debian, Ubuntu l Red. Hat, Fedora l Novell Su. Se, Open Suse l Mandriva l Slackware l Minor Distributions l 1000+ May 2008 Mateti-Everything-About-Linux 24
How Do Distributions Differ? l What is included in the default installation l l Operating System UI l l l Utilities Selected Applicatins Patches provided by the Distro Installing New Components/Applications l Updates l l Shells GUI Security New versions Browsing for Available Software Look and Feel of the Initial Install May 2008 Mateti-Everything-About-Linux 25
How Do Distributions Differ? l Versions of installed libraries l l l Configuration l l /lib/ /usr/lib/ Location of Files Syntax GUI/command line tools Distributions from Scratch l Build it from Source l May 2008 Gentoo Mateti-Everything-About-Linux 26
Ubuntu l l Ubuntu is a derivative of Debian “Ubuntu will always be l l l l “free to download, “free to use and “free to distribute to others. ” Desktop Edition Server Edition X 86 -32, x 86 -64, and Mac Ubuntu, Kubuntu, Xubuntu, … May 2008 Mateti-Everything-About-Linux 27
Linux Live CD/DVD fully writable root filesystem l hardware auto-detection l can be installed to local hard disk l can be installed on USB MSD l Automated scripts to make a Live. DVD from any distro l http: //www. linux-live. org/ l May 2008 Mateti-Everything-About-Linux 28
Knoppix Live. DVD l General Purpose Linux l l l Excellent hardware detection Large collection of applications l l Try it without installing on HDD KDE, …, fluxbox Open Office, Emacs, gcc, … Web browsers, … Uncompresses on the fly l l May 2008 Several GB of software Relatively Slow Mateti-Everything-About-Linux 29
Damn Small Linux About 50 MB l Can run without a HDD l X 11 Desktop l Many useful applications l l Office l Web surfing l Email l Multimedia May 2008 Mateti-Everything-About-Linux 30
Linux on a USB Drive l l Install on a USB MSD as a HDD Install a Live Image on USB MSD l l Lab on Installing Linux on a USB Drive l l On the fly uncompression Fast installation Relatively slow execution http: //www. cs. wright. edu/~pmateti/Courses/233 -2008 Spring/Labs/OS-on-USB/OSon. USBLab. htm http: //pendrivelinux. com/ May 2008 Mateti-Everything-About-Linux 31
Scientific Linux Live. DVD l l l l By Fermilab, CERN, and other labs and universities Live. DVD 32 bit/64 bit with Gnome/KDE/Icewm desktop 5. 1 for i 386 and x 86_64 released on 2008 -02 -18 Red. Hat Enterprise Linux Fully writable root filesystem Hardware auto-detection http: //www. scientificlinux. org May 2008 Mateti-Everything-About-Linux 32
Embedded Linux u. CLinux (Micro Controller Linux) l Linux kernels 2. 0, 2. 4 and kernel 2. 6 l collection of user applications l libraries and l tool chains l u. CLinux ported widely l May 2008 Mateti-Everything-About-Linux 33
Linux Clusters May 2008 Mateti-Everything-About-Linux
Cluster Characteristics Commodity off the shelf hardware l Networked l Common Home Directories l Open source software and OS l Support message passing programming l Batch scheduling of jobs l Process migration l May 2008 Mateti-Everything-About-Linux 35
Why are Linux Clusters Good? l Low initial implementation cost l Inexpensive PCs l Standard components and Networks l Free Software: Linux, GNU, MPI, PVM Scalability: can grow and shrink l Familiar technology, easy for user to adopt the approach, use and maintain system. l May 2008 Mateti-Everything-About-Linux 36
Example Clusters July 1999 l 1000 nodes l Used for genetic algorithm research by John Koza, Stanford University l www. geneticprogramming. com/ l May 2008 Mateti-Everything-About-Linux 37
Largest Cluster System l l l l IBM Blue. Gene, 2007 DOE/NNSA/LLNL Memory: 73728 GB OS: CNK/SLES 9 Interconnect: Proprietary Power. PC 440 106, 496 nodes 478. 2 Tera FLOPS on LINPACK May 2008 Mateti-Everything-About-Linux 38
Message Passing Interface (MPI( http: //www-unix. mcs. anl. gov/mpi/ l MPI-2. 0 http: //www. mpi-forum. org/docs/ l MPICH: www. mcs. anl. gov/mpich/ by Argonne National Laboratory and Missisippy State University l LAM: http: //www. lam-mpi. org/ l http: //www. open-mpi. org/ l May 2008 Mateti-Everything-About-Linux 39
Parallel Virtual Machine (PVM) PVM enables a heterogeneous collection of networked computers to be used as a single large parallel computer. l Older than MPI l Large scientific/engineering user community l http: //www. csm. ornl. gov/pvm/ l May 2008 Mateti-Everything-About-Linux 40
Kernels Etc Mods for Clusters l l l Dynamic load balancing Transparent process-migration Kernel Mods l l http: //openssi. org/ http: //ci-linux. sourceforge. net/ l l Gluster. FS: Clustered File Storage of peta bytes. Gluster. HPC: High Performance Compute Clusters http: //boinc. berkeley. edu/ l l CLuster Membership Subsystem ("CLMS") and Internode Communication Subsystem http: //www. gluster. org/ l l http: //openmosix. sourceforge. net/ http: //kerrighed. org/ Open-source software for volunteer computing and grid computing Condor clusters May 2008 Mateti-Everything-About-Linux 41
OS Share of Top 500 OS Count Linux 426 Windows 6 Unix 30 BSD 2 Mixed 34 Mac. OS 2 Totals 500 Share Rmax (GF) Rpeak (GF) Processor 85. 20% 4897046 7956758 970790 1. 20% 47495 86797 12112 6. 00% 408378 519178 73532 0. 40% 44783 50176 5696 6. 80% 1540037 1900361 580693 0. 40% 28430 44816 5272 100% 6966169 10558086 1648095 http: //www. top 500. org/stats/list/30/osfam Nov 2007 May 2008 Mateti-Everything-About-Linux 42
Security of Linux l Security flaws are largely due to l l Number of exploits, number of advisories similar to those of other OS l l Network protocol design flaws Sloppy programming by software authors Poor configuration Worms, not viruses Compromised crypto Buffer overflows Considerable research analysis of Linux source code May 2008 Mateti-Everything-About-Linux 43
Security Hardened Linux Portions of Linux replaced, re-designed, enhanced for improved security l Stack top randomization l Prevention of data page execution l Linux Security Modules (LSM) l SELinux l May 2008 Mateti-Everything-About-Linux 44
Security Tools on Linux l l l l l Penetration Testing Network analysis (e. g. nmap, tcpdump) Password cracking Disaster recovery (e. g. gparted, gpart, partimage, testdisk, recover) Virus scanning (Clam Antivirus, the GUI xfprot for F-Prot) computer forensics (e. g. chkrootkit, foremost, rootkit hunter) Backtrack 3 http: //backtrack. offensive-security. com/ STD http: //www. knoppix-std. org/ INSERT http: //www. inside-security. de/insert_en. html May 2008 Mateti-Everything-About-Linux 45
Important Applications May 2008 Mateti-Everything-About-Linux
A Few Ubuntu/Debian packages l Electric l l Vi. PEC l l Electronic schematic and PCB design software QCad 2 l l analysis of high frequency, linear electrical networks. Vi. PEC supports lumped elements as well as distributed networks Kicad l l custom IC layout (ASICs), schematic drawing, hardware description language specifications, and electro-mechanical hybrid layout. A professional CAD System with ISO-texts and DXF-files. Python. CAD l May 2008 drafting program scriptable with Python Mateti-Everything-About-Linux 47
Example Applications Email: kmail, evolution, sylpheed, thunderbird l Surfing: konqueror, firefox, galeon, opera l Software Development: compilers for nearly all known languages l Drawing: dia, graphviz, kchart, inkscape l Music: amarok, gnupod l Games: Sauerbraten, Savage, Doom l May 2008 Mateti-Everything-About-Linux 48
Applications on Publishing l Te. X/La. Te. X l l l l Kyle Lyx Te. Xmacs Meta. Post drawing language Graph. Viz Scribus Office Suites l l l May 2008 Abiword Koffice Open. Office Mateti-Everything-About-Linux 49
Matlab : : Scilab, Octave, Rlab Not 100% compatible with m-files. l Matrix-based programming languages. l Built-in support for complex numbers. l Powerful built-in math functions and extensive function libraries. l Extensibility in the form of user-defined functions. l May 2008 Mateti-Everything-About-Linux 50
Computer Algebra Systems l l Manipulation of symbolic and numerical expressions, including differentiation, integration, Taylor series, Laplace transforms, ordinary differential equations, systems of linear equations, polynomials, and sets, lists, vectors, matrices, and tensors. http: //maxima. sourceforge. net/ http: //mathomatic. orgserve. de/math/ Maple on Linux: commercial product May 2008 Mateti-Everything-About-Linux 51
Software Development on Linux Develop software for Linux on Linux l Develop software for other OS on Linux l Every well-known PL has compilers/ interpreters on Linux l Excellent Debuggers l Virtualization l Team Support Environments l May 2008 Mateti-Everything-About-Linux 52
C and C++ on Linux These are the “native” languages. l Compilers l l GNU compilers l Intel compilers l IBM compilers l Sun Studio compilers l Princeton LCC May 2008 Mateti-Everything-About-Linux 53
GNU Compilers l Fortran 95 standard l a few Fortran 2003 features l Java l compilation to machine code l as well as byte code Objective-C, Objective-C++ l Ada and Pascal l May 2008 Mateti-Everything-About-Linux 54
Virtualization Run multiple virtual machines on a single host. l VMware l XEN l QEMU/KVM l Virtual. Logix l lguest l Open. VZ l May 2008 Mateti-Everything-About-Linux 55
Li. Mo Foundation Platform l l Open, hardwareindependent, Linux-based OS for mobile devices. January 2007 Motorola, NEC, NTT Do. Co. Mo, Panasonic, Samsung and Vodafone www. limofoundation. org/ May 2008 Mateti-Everything-About-Linux 56
Specific Uses of Linux May 2008 Mateti-Everything-About-Linux
Linux DIY Servers Home Multi. Media/File Server l LAMP Server l l LAMP stands for Linux, Apache, My. SQL, PHP l Word. Press l Blog server l Email server l spam May 2008 assassin Mateti-Everything-About-Linux 58
Linux Firewall l Take a standard PC and install one of these: l IPcop http: //www. ipcop. org/ l Smoothwall http: //www. smoothwall. org/ l Firestarter http: //www. fs-security. com/ l Kaladix http: //www. kaladix. org/ l STD http: //www. knoppix-std. org/ l En. Garde http: //www. engardelinux. org/ May 2008 Mateti-Everything-About-Linux 59
Linux Digital Video Recorders l www. tivo. com/linux/ l l “In compliance with the GPL version 2, we are pleased to provide our modifications to the Linux Kernel, as well as a few new commands, and some tools to get you into the code. ” Myth. TV May 2008 Mateti-Everything-About-Linux 60
Linux Installation Issues l Linux-only PCs l Newbies l should be able to install Multi-boot PCs Problem Areas l Partitioning of the hard disks l Installation of OS Boot Loader l Mix and Match Distributions l Impractical to mix and match l Best to Compile from Source Code May 2008 Mateti-Everything-About-Linux 61
Linux Installation Issues l Device Drivers Unavailable for l Latest Graphics cards l Latest Wireless cards l Other devices are OK l Tainted/Restricted Drivers l Not “fully open source” drivers l ndiswrapper May 2008 Mateti-Everything-About-Linux 62
Linux Links distrowatch. com/ – Distributions news l kernel. org/ -- Kernel source code l tldp. org/ -- Linux Documentation Project l linux-live. org/ – Live. DVD build tools l linuxsecurity. com/ - Linux security portal l May 2008 Mateti-Everything-About-Linux 63
76bb392392c4ef1c1999cecceb547c65.ppt