linux [2005]

56
L I N L I N U X U X Fernando González Fernando González Lucette Sánchez Lucette Sánchez Joel Maysonet Joel Maysonet Raúl Soto Raúl Soto GSI 640

Upload: raul-soto

Post on 11-May-2015

805 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Linux [2005]

L I N U L I N U XX

Fernando GonzálezFernando GonzálezLucette SánchezLucette Sánchez

Joel MaysonetJoel MaysonetRaúl SotoRaúl Soto

GSI 640

Page 2: Linux [2005]

What is Linux?What is Linux?

• Linux is a Linux is a freely distributedfreely distributed, complete multitasking, , complete multitasking, multi-user multi-user operating system operating system

• Designed specifically for the PC platform; takes advantage Designed specifically for the PC platform; takes advantage of its design to give users comparable performance to of its design to give users comparable performance to high-end UNIX workstations.high-end UNIX workstations.

• Most famous example of free software and Most famous example of free software and open source open source development development – its underlying code is available to the – its underlying code is available to the public, and anyone can freely use, modify, and redistribute public, and anyone can freely use, modify, and redistribute it.it.

• LINUX refers to the LINUX refers to the kernelkernel, and to the combination of , and to the combination of libraries and tools from the GNU projectlibraries and tools from the GNU project

• There are over 300 Linux distributions availableThere are over 300 Linux distributions available

Page 3: Linux [2005]

What is Linux?What is Linux?

• Linux behaves like Linux behaves like UNIXUNIX in terms of kernel behavior and in terms of kernel behavior and peripheral support.peripheral support.

• Originally used by individual enthusiasts, currently is Originally used by individual enthusiasts, currently is supported by major corporations such as HP, IBM, and supported by major corporations such as HP, IBM, and Novell for servers, desktops.Novell for servers, desktops.

• Originally developed for Intel 80386 CPUs, now supports Originally developed for Intel 80386 CPUs, now supports various architectures.various architectures.

• 25% of servers and 3% of desktops were running Linux in 25% of servers and 3% of desktops were running Linux in 2002.2002.

• Clustering technology enables a large number of Linux Clustering technology enables a large number of Linux machines to be combined into a single computing entity: machines to be combined into a single computing entity: a parallel computer. a parallel computer.

Page 4: Linux [2005]

What is a Kernel?

• Originally, "Linux" was only the name of the kernelkernel.

• The term "kernelkernel" properly refers to the low-level system software that provides:

• hardware abstraction layer

• disk and filesystem control

• multi-tasking

• load-balancing

• networking

• security enforcement

• A kernel is not a complete operating system (as the term is usually understood). A complete system built around the Linux kernel is commonly known as the Linux operating system, although some prefer to call the system GNU/Linux

Page 5: Linux [2005]

What is UNIX?What is UNIX?• First practical multi-user, multi-tasking OSFirst practical multi-user, multi-tasking OS

• Designed by Bell Labs in the early 70’s, along with C Designed by Bell Labs in the early 70’s, along with C languagelanguage

• Rapidly adopted by universities and corporationsRapidly adopted by universities and corporations

• Used to develop the InternetUsed to develop the Internet

• Implemented on a wide variety of platforms, from Cray to Implemented on a wide variety of platforms, from Cray to AppleApple

• Several “flavors” depending on sourceSeveral “flavors” depending on source– System V : Bell LabsSystem V : Bell Labs– BSD : UC BerkeleyBSD : UC Berkeley– AIXAIX– SolarisSolaris– HPIX, etc.HPIX, etc.

Page 6: Linux [2005]

Who created Linux ?

• The Linux kernel was initially written by Linus Torvalds a student at the University of Helsinki, Finland.

• Based on Minix, a simplified kernel used for teaching OS design.

• Linux was originally written in Intel 386 assembly and C, booted from floppy to run outside OS

• First version released to the Internet in September 1991.

Page 7: Linux [2005]

Who created Linux ?

25 Aug 1991 - Linus posts to comp.os.minix:

(http://groups.google.com/groups?selm=1991Aug25.205708.9541%40klaava.Helsinki.FI&output=gplain )

"I'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready…”

Page 8: Linux [2005]

Who created Linux ?

• Story of Linux closely related to the GNU free software project led by Richard Stallman, for the purpose of developing a Unix-like OS with free development tools and user applications.

• The GNU project had already produced all the necessary components for this free system – except the kernel. Linux was adapted to work with the GNU components.

Linux kernel and OS are licensed under the GNU General Public License (GPL).

Page 9: Linux [2005]

History

• In 1991, MS DOS was the predominant PC Operating System

• Unix was far more expensive.

• Unix source code, once taught in universities courtesy of Bell Labs, was now cautiously guarded and not published publicly.

• Big players in the software market did not provide an efficient solution to this problem.

• A solution seemed to appear in form of MINIXMINIX. Written by Andrew S. Tanenbaum, a US-born Dutch professor who wanted to teach his students the inner workings of a real operating system.

• Minix was designed to run on the Intel 8086 microprocessors (XT)

Page 10: Linux [2005]

History

• MINIX was not a superb OS, but it had the advantage that the the source code was availablesource code was available. Anyone who happened to get the book 'Operating System' by Tanenbaum could get hold of the 12,000 lines of code, written in C and assembly language.

• MINIX was good, but still it was simply an operating system for the students, designed as a teaching tool rather than an industry strength one.

• In 1991, Linus Benedict Torvalds was a second year student of Computer Science at the University of Helsinki and a self-taught hacker.

• At the time, the GNU project had created many of the components required for a free operating system, but its own kernel, the GNU Hurd, was incomplete and unavailable.

• The Linux kernel filled that space

Page 11: Linux [2005]

GPL License

• The Linux kernel and most every other program that is part of a distribution are released under the GPL, or General Public License, also called a 'copyleft license‘

• This license makes provisions for the distribution and modification of free software like Linux.

• Anyone may modify and/or distribute GPL software, as long as all subsequent modifications are released under this same GPL.

• The GPL ensures that everyone can distribute and continue to have access to this same software without restrictions.

• GPL software is copyrighted to the author or authors, and is not public domain software or shareware.

Page 12: Linux [2005]

Linux Workload Management• The classic environments typically slated for

migration to Linux are:– File and Print: monitoring basic network functions

like file sharing, remote printing– Email: including SMTP mail and authentication– Web/Internet: ranging from simply serving static

web pages to ostensibly delivering a customized website to every user

– Firewall & other I/O bound applications: LDAP directories, other apps that access data across multiple systems

– Business Intelligence: data warehousing apps– Other CPU bound apps: calculation-intensive apps

like CAD/CAM, statistical packages– Mixed workload: servers running various apps.

Page 13: Linux [2005]

Advantages of Linux

1. 1. Costs LessCosts Less

2. 2. Works BetterWorks Better

Page 14: Linux [2005]

Costs Less• Internet and LAN functions built in

– Apache web server– Firewall– TCP / IP, FTP

• TCO: Total Cost of Ownership– To determine whether long-term

ownership of Linux servers is truly less expensive than Unix or Windows servers, one needs to examine all aspects of ownership:

• Custom programming• Deployment of new applications• Ongoing maintenance • Type of hardware used

Page 15: Linux [2005]

Costs Less

• Linux can be freely copied, subject to reasonable licensing fees

• BUT initial price is NOT the only consideration

• Ongoing operational expenses, licensing fees and support costs for applications, can all be much larger than the initial cost

• HP Study: Comparison Linux vs Sun Solaris (Unix)– 10 servers; 10,000 Gb storage; 5,000 users– TCO with Linux was 56% lower– Solaris TCO = over $1 M– Linux TCO = $472,000– Savings = $593,000

Page 16: Linux [2005]

Works Better

• Much more stable: – Hard to crash, Linux servers can run for months, even

years, without rebooting– Only root can see, change, execute everything– Ordinary users can see, change, execute only their own

files, unless given specific permission by another user– Each user’s session can be separately customized

• Much faster:– Linux servers typically can handle several times as

many users as NT, with the same hardware– Can be custom-compiled for speed and small size– Can be optimized for a specific CPU type– Scalable: multiple processors, clustered PCs possible

Page 17: Linux [2005]

Works Better:Linux Clusters

"Beowulf" Linux PC Cluster

• NASA 256-CPU cluster

• cost approx $100K

• one of the 100 fastest computers in the world.

Page 18: Linux [2005]

• Much more flexible:– User has choice of shell

(command interpreter), GUI– Linux shells offer many more

features than the standard DOS/Windows shell

– Complete modularity, any component can be upgraded

Works Better• Much smaller:

– Can run on a 4Mb Intel 386– Users don’t have to upgrade hardware as often– “obsolete” machines can be productive as

terminals or servers (i.e. a 486 with 16Mb can be a server/firewall for a home or small office)

Page 19: Linux [2005]

Works Better:Linux GUI

• Unlike Windows, Linux separates the GUI into two modular components– Graphical server

• handles display hardware• does the actual drawing• “standard” is XFree86

– Window manager• Provides the “look and feel”• Most common

– Fvwm– KDE– GNOME

Page 20: Linux [2005]

KDE

Page 21: Linux [2005]

GNOME

Page 22: Linux [2005]

Works Better:Linux File System

• Flexibility– Long file names– All devices which accept or emit data are treated as

files• com ports, printers, sound cards, LAN, internet

connection, etc.

– No drive letters. Extra partitions or physical drives are subdirectories of one tree structure

• Security– All files and directories have read, write, and execute

privileges for the owner, the owner’s workgroup, and all others

Page 23: Linux [2005]

Works Better:Hardware Management

• Monolithic kernel: all the device drivers are part of the kernel proper.

• Demand paging: only the sections of a program that are necessary are read into RAM.

• Supports copy-on-write:a process that if more than one copy of a particular application is loaded, all tasks can share the same memory.

• Swap space: Swap space allows pages of memory to be written to a reserved area of a disk and treated as an extension of physical memory.

• Supports diverse file systems, as well as those compatible with DOS and OS/2. Linux's file system, ext2fs, is intended for best possible use of the disk.

Page 24: Linux [2005]

Linux Directory Structure/ root

/bin Linux itself/boot Linux itself/proc Linux itself/sbin Linux itself/var Linux itself

/mail/spool/temp

/dev I/O devices/usr shared files for all users

/bin standard utilities/lib shared libraries/man manual pages (help system)/doc misc.documentation/X11 Xwindow system files. . .

/lib shared libraries/etc administrivia/tmp temporary – usable by all programs/home ordinary user’s home directories

/rsoto/zrodrig

/root superuser home directory

Page 25: Linux [2005]

Works Better: DLL Management

• Windows allows the use of DLLs (Dynamic Link Libraries) to modularize applications and reuse code.

• When an application is starting up, it locates the DLL and calls functions inside it.

• Advantages:– The application does not need to contain the code itself, – other applications can reuse the same code, – different people (even different companies) can provide components that other

people can link to and use.

• Windows has no version control on DLLs. • When you install application1, it installs version 1 of "frog.dll". Then you

install app2, which uses version 2 of "frog.dll". The new version overwrites the old version. The next time you start app1, it opens "frog.dll" and finds something other than version 1, leading to unpredictable results.

• It might work fine (if you're lucky). It might immediately crash. It might look like it's working but really be slowly corrupting your data.

Page 26: Linux [2005]

Works Better: DLL Management

• Many Windows users have installed an application (even one written by Microsoft) and had it break other programs that were working fine, or even render the machine unbootable, requiring a full reinstall of Windows.

• There are third-party applications that help to deal with this problem, but they don't allow you to run applications that require conflicting DLLs at the same time.

• Linux (among other operating systems) does not have this problem.

• Linux uses DLLs, too (in Unix terms they are called "shared objects""shared objects"), but the OS keeps track of the versions.

• When you run app1, Linux notes that it needs version 1 of "frog.so", and automatically links it in. When you run app2, Linux automatically links version 2 of "frog.so". This happens even if app1 and app2 are running at the same time.

Page 27: Linux [2005]

Linux Networking

• UUCP (Unix-to-Unix Copy): Unix programs for transferring files over modem / serial lines, eMail, remote program execution, among others. Old technology, narrow bandwith.

• Net-3 software provides Linux with support for– TCP/IP– Ethernet– SLIP / PLIP (serial / parallel line IP)

• Other networking capabilities– PPP (point to point protocol)– AX.25 (for HAM radio)– IPX (in development)– Samba - NetBIOS

Page 28: Linux [2005]

• Besides the reliable TCP/UDP/IP protocol suite, a number of new features has been added to the networking kernel:– firewalls– QoS : Quality of Service– tunneling – firewall implementation using IPchains– VPN implementation using GRE tunnels – advanced routing implementation using netlink sockets.

Linux Networking

Page 29: Linux [2005]

Linux Security

• Linux’s design ensures that one user can never harm another user's files or any system files without explicit permission.

• Linux’s permission structure ensures that even if a bug in one process is found, it does not affect other processes

• Linux ensures that no user is capable of denying service to any other user through crashing the machine, resource depletion, or a number of other more subtle approaches.

• Open source nature of Linux ensures bugs are caught and fixed quickly – usually within hours

• Linux supports disk quotas, limiting the amount of space a malicious or mistaken user can take up.

Page 30: Linux [2005]

Linux Security: Viruses

• Very few viruses have been written for Linux (Bliss, Staog)• Open source code is a tough place for a virus to hide• In Linux, each application runs in its own protected memory

space, which prevents viruses from infecting applications running in RAM.

• The file permission structure greatly limits the damage a virus may do:

» Permissions: Read, Write, Execute» Users: File’s owner, users in the same group,

others» A virus would only be able to infect the

applications for which ONE specific user has WRITE permission.

Page 31: Linux [2005]

seLinux

• Security-Enhanced Linux was released by the US National Security Agency (NSA) http://www.nsa.gov/selinux/

• Source code was released to the public as part of Linux’s GPL license.

• Strong, flexible mandatory access control architecture incorporated into the major subsystems of the kernel.

• Provides mechanism to enforce the separation of information based on confidentiality and integrity requirements.

• Enables the confinement of damage that can be caused by malicious or flawed applications.

• Linux chosen by NSA as platform because its growing success and open development environment provided an opportunity to demonstrate that this functionality can be successful in a mainstream OS and, at the same time, contribute to the security of a widely used system.

Page 32: Linux [2005]

Linux Applications

• Netscape suite• Office suites :

– word processor, spreadsheet, graphics, database, scheduler, etc.

– Corel Office Suite– StarOffice– ApplixWare

• GIMP– GNU Image Management Program– PhotoShop look-alike

Page 33: Linux [2005]
Page 34: Linux [2005]

Linux Applications:

• LILO– LInux Loader– allows user with multiple OS in the same PC to

select which one to load at your computer's startup.

– LILO is generally stable and easy to use. – Distributions like Red Hat bundle LILO with their

installation.

• Text Editors- – Emacs Editor is a very popular text editor in

the Linux world. – Has become a standard for many Linuxers. – Emacs is usually loaded with the distribution

installation.

Page 35: Linux [2005]

• Emulators- – Allow users to run DOS or Windows files directly on the

Linux system.– Two popular DOS emulators are Dosemu and xdos. – For the Windows emulation, the current project is

Wine. – Programs will run just as fast, maybe even faster with

the Linux environment.

• Gaming– The gaming industry is just gaining speed on Linux.– Companies like id are beginning to tailor to Linux

gamers.– Games like Quake 3 are beginning to have Linux

versions– Many best-selling games like Starcraft have to be

emulated on the Linux box using Wine.

Linux Applications:

Page 36: Linux [2005]

• Wine– Forms a layer between the MS Windows application

and the Linux OS– Behaves more as an interpreter than a full emulator– More than 1,000 applications run under Wine– Wine can take advantage of all Unix strong points in

Linux, such as stability, flexibility, remote administration; while using common Windows apps.

– Wine is open software, can be modified as needed

• Bochs– PC emulation package written in C++– Provides complete x86 emulation, including the x86

processor, hardware devices, and memory– Similar to having a machine inside another machine

Wine and Bochs

Page 37: Linux [2005]

Linux Labels

• Many big-name companies have joined the Linux bandwagon such as IBM and Compaq, offering systems pre-installed with Linux.

• Many companies have started Linux packages. For example– Red Hat– Corel– Samba

• However, they can only charge for services and documentation packaged with the Linux software.

• More and more businesses are using Linux as an efficient and more economical way to run their networks.

Page 38: Linux [2005]

• RedHat Linux– One of the most popular distributions out there right now– supports the Intel, Alpha, and SPARC platforms– Many users prefer RedHat Linux because of its ease of use, installation,

and live tech support– Primarily comes bundled with the X Windows System, GNOME and KDE

desktop environments, as well as the StarOffice suite

• Linux Mandrake– Similar to RedHat, it also bundles the X Windows System, GNOME, KDE,

and StarOffice. – Improved ease of use, plus a few added extra tools and utilities

• Corel Linux– less popular than RedHat– continues to shine with its usability and ease of installation through its

Install Express. – comes with only the KDE environment, – also includes WordPerfect for Linux instead of Sun's StarOffice

Linux Labels

Page 39: Linux [2005]

• Debian/GNU– Debian/GNU is intended for the more advanced Linux

users out there. – More difficult to use than other distributions, but is

frequently chosen for web server purposes. – Its stability and web adminstration tools are the reason

many webmasters rely on Debian/GNU for their server environment.

• Slackware– One of the first distributions of Linux created, continues

to be fairly popular. – Includes the usual X Window System, GNOME, and KDE. – Excellent stability, at the expense of less updated code

and more intermediate to advanced user appeal.

Linux Labels

Page 40: Linux [2005]

• SuSE Linux– Full feature bundle– Originally created by German programmers, has become

popular in Europe, gaining much recognition in the United States.

– Includes the standard X Windows System, KDE and GNOME environments,

– Distances itself from the other offerings by including a huge amount of bundled software

– this distribution is also recommended for newer users.

• Caldera OpenLinux– Primarily designed for the business and power user, – Focuses on internet applications. – Includes a full collection of internet connectivity and

access tools, – helps anyone take full of advantage of the internet

through Linux.

Linux Labels

Page 41: Linux [2005]

Linux example: Linux example: SuSESuSE• Cost: $27Cost: $27• Linux OS, about 1 release behindLinux OS, about 1 release behind• Installation and maintenance Installation and maintenance

programsprograms• 442-pg manual, complete online 442-pg manual, complete online

documentsdocuments• Several GUI and shellsSeveral GUI and shells• 5 CDs, 850 application programs:5 CDs, 850 application programs:

– GNU C++, FORTRAN, LISP, Perl, GNU C++, FORTRAN, LISP, Perl, Emacs, etc.Emacs, etc.

– TeX / LaTeX typesetting programTeX / LaTeX typesetting program– Netscape 4.5 suiteNetscape 4.5 suite– GIMP – Photoshop cloneGIMP – Photoshop clone– Lots of games (i.e. QUAKE)Lots of games (i.e. QUAKE)

Page 42: Linux [2005]

Linux vs Microsoft OS- Similarities

• ALL OS have standard features, such as:– Hardware-level I/O– Job control– Memory management– Task switching– Utilities for management

• Unix / Linux and DOS / Windows also have:– Similar file structure (subdirectory tree) concept:

• /users/rsv21/fotos/enero2005.jpg is a legal filename– This means Linux can read and write DOS/Windows partitions

(FAT32, NTFS) in addition to its native “ext2”.– Command interpreter, batch files– Similar command line utilities (ls=dir, cp=copy, etc.)– Files are executable (binary or batch) or data– User has choice of command line shell, GUI, or both

Page 43: Linux [2005]

Linux vs Microsoft OS- Differences

• Linux can be implemented in several hardware platforms (Intel, Mac, Alpha, MIPS, etc.)

• Programs compiled to run on Linux won’t run on DOS/Windows.

• Some DOS/Windows programs can be run under Linux using emulators

• Modularity : Linux user is not locked in to one shell or GUI

• MS OS are owned by proprietary systems. MS controls their interface and design, and only MS may implement code changes.

Page 44: Linux [2005]

Linux vs. Unix• In terms of features, Unix and Linux are quite

similar.

• Unix was designed specifically for networking. Linux runs perfectly fine as a personal Unix system and on large servers.

• Linux supports a much wider range of hardware than Unix and because of the Open Source model, any driver for certain hardware can be written for Linux as long as someone has the time to do so.

• Many universities and companies are beginning to use Linux instead of Unix because it can provide the functionality of a workstation on PC hardware at a fraction of the cost.

Page 45: Linux [2005]

Disadvantages of Linux

• Flexibility can be intimidating– Complex installation, no “turnkey”– Some vendors won’t pre-install in new computers

• HP, Dell, IBM now pre-install and support on request– Many command options (in this case, use a GUI)

• Not designed to be user-friendly– Written by programmers for programmers

• Significant learning curve when moving from Windows OS– User must learn new commands and vocabulary– Different “look and feel” for OS and applications– Case sensitive names

• Fewer consumer-oriented applications

Page 46: Linux [2005]

Disadvantages of Linux

• Support– Linux is maintained and enhanced by an informal

community of developers– This makes it relatively more difficult to obtain

guaranteed, qualified support

• Many companies have found that managing these risks responsibly is worth the benefits that Linux brings.

Page 47: Linux [2005]

How to use Linux?• Before the installation

– Research of what do you have in your computer

• Why?– Because some peripherals have been

created for Windows only. – e.g. Winmodem, sound card, video card use

proprietary drivers.

• After the installation– You can install different applications.

Page 48: Linux [2005]

Linux Today• Linux is one of the fastest growing

operating systems in history• The big businesses have 'discovered'

Linux, and have poured millions of dollars into the development effort

• IBM has come forward with a huge fund for development of open source Linux based solutions.

• A continuously increasing band of developers spread throughout the world work to improve upon the features of Linux.

• A well designed development model supervised by some maintainers is adopted.

• There are thousands of developers working to port various applications to Linux.

• Some distributions: Red Hat, SuSE, Caldera, Slackware, Debian.

Page 49: Linux [2005]

Linux Today

• Commercial enterprises are no longer wary of Linux. With a large number of vendors providing support for Linux based products, it is no longer a 'do-at-your-own-risk' thing to use Linux at the office.

• Reliability: Linux certainly proved it during the nasty attacks of the CIH virus in 1999 and the love bug a year later, during which Linux based machines proved to be immune to the damages caused by these otherwise quite simple computer viruses.

• With this added confidence, many large and small businesses have adopted Linux based servers and workstations as an integral part of their offices.

Page 50: Linux [2005]

Linux in Supercomputers

Shared Hierarchical Academic Research Computing Network(SHARCNET)

• Canada’s largest high-performance computing (HPC) research facility• 64-bit, 2-way Intel Itanium 2 processor clusters running Linux

The TeraGrid (www.teragrid.com)• Completed in September 2004• Massively parallel supercomputer clusters• 40 teraflops of computing power• 2 petabytes of rotating storage • Connected network of US supercomputing centers (currently 8, and growing)• Each of the four original sites operates a Linux cluster, interconnected by

means of a 10-30 Gigabit/sec dedicated optical network

Page 51: Linux [2005]
Page 52: Linux [2005]
Page 53: Linux [2005]

Q u e s t i o n s ?Q u e s t i o n s ?

Page 54: Linux [2005]

Thank You !Thank You !

Page 55: Linux [2005]

BACKUP SLIDES

Page 56: Linux [2005]

Costs Less

IT Operation $620,116 $181,913 $438,203

IT Administration $49,797 $29,175 $20,622

Facilities and Overhead $50,000 $20,000 $30,000

Downtime $46,485 $104,592 - $58,107

TCO Summary $1,064,929 $471,810 $593,119

Savings with Linux = 56%

TCO per System $106,493 $47,181 $59,312

TCO per user $213 $94 $119

TCO Comparison: Sun Solaris vs HP Linux

Sun Solaris Linux Savings with Linux

Hardware $178,531 $70,130 $108,401

Software $120,000 $66,000 $54,000

HP study: 10 servers; 10,000 Gb storage; 5,000 users