1 Linux Intro

Embed Size (px)

DESCRIPTION

Linux

Citation preview

  • Introduction to Linux

  • Introduction to LinuxWhat is Linux, and Who Created it?GNU and the GPLUnix/GNU, What is the Difference?POSIX ComplianceOther POSIX Operating SystemsUses of LinuxAdvantages and Disadvantages

  • What is LinuxLinux is a UNIX cloneIt can run on 32 bit and 64 bit hardwareLinux is a true multitasking environment Fully capable of taking advantage of multiple processorsCan address up to 64 GB of RAMPartial POSIX Compliance

  • Penguin PowerLinux is freeAnyone can download and compile the sourceThe code can be modified by anyone provided the modifications are released to the community

  • HistoryThe history of Linux began with Unix in 1969Unix was created at Bell Labs with the goals:SimplicityRecycleable codeWritten in C as opposed to assemblyDevelopment started in 1991Linus Torvalds wanted to create a free implementation of UNIXBy 1993 there were 12000 Linux usersToday Linux rivals UNIX in stability and scalability

  • The KernelLinux is not an Operating SystemLinux is a kernelLinux Distrobutions use the Linux kernel together with the GNU Operating SystemA kernel is a program that allocates and controls hardware resources in a system

  • The Linux KernelThe Linux kernel is currently maintained by Linus Torvalds and a few hundred other developersReleases are numbered in a very ordered fashion.Major.minor.patchlevelOdd minor numbers are development kernelsThus2.4.20 latest stable kernel2.5.67 latest development kernelWill become the 2.6 kernel

  • DesignThe Linux kernel has a monolithic designThe other approach is the microkernel designBoth have their upsides and downsidesMonolithic kernelsEasier to build and designGenerally fasterMore recompilesLess object orientedMicro kernelsConsidered saferEasier to develop drivers forOnly recompile for upgradesGenerally slowerMuch harder to build and design

  • Other *NIX KernelsThe BSD kernelThis is the kernel used by the open source BSD'sFreeBSD, OpenBSD, NetBSDIt is neither GNU nor GPLThe GNU HURDHird of Unix Replacing DaemonsHurd of Interfaces Representing DeathThe world's first doubly recursive acronymMicro kernelNot very functional

  • Isn't a GNU an Animal?GNU stands for GNU Not UnixThe goal of GNU Create a free and complete UNIX-like operating systemThis has been in development since 1984Towards this goal the GNU project has released:GCC, GNU Emacs, Bash, to name a fewFor more information see the GNU Manifestohttp://www.gnu.org/gnu/manifesto.html

  • What is the GNU GPL?The GNU General Public LicenseEnsures that GNU software stays freeThis is done through Copy LeftingAny modification to GPL software is required to be released to the publicLinux is released under the GPLDue to its restrictive nature the GPL has recently come under firehttp://www.linux.org.uk/GPL.html

  • Does the GPL Matter?Depends on your point of viewNot as important for usersVery important for developersAny GPL code that is incorportated into a program makes the entire program GPLNo closed source software can use any GPL software

  • So Unix Costs Money and GNU/Linux is FreeEssentially this is the caseBoth have the goals of POSIX complianceCommercial UNIXes are in general closerThis is generally in implementation, not in useCommercial UNIXes generally perform better in large systemsBut even this is difference is shrinkingThe biggest difference is that UNIX is trademarked and must be commericialnot free

  • POSIX? Another Operating System?Nope, its yet another acronymPortable Operating System InterfacePOSIX is a set of specifications Describes how the operating system should behaveBoth to the user, and to other programsPOSIX was created to combat the plethora of UNIXes that popped up in the 1980, all of which had a different look and feel

  • POSIX cont...The Open Group controls the UNIX trademarkThey also release their own UNIX specificationThe latest POSIX specification has been merged with the Open Group's UNIX specificationFor more information see:http://www.pasc.orghttp://www.opengroup.org/

  • Other POSIX OSesIBM AIXSun SolarisSGI IRIXHP HP--UXCompaq TRU64 UNIX

  • So Why Should I Use Linux?As a server platform few other operating systems can match Linux in:PerformancePriceStabilityFor DevelopersResources:Linux has a tremendous number of tools available for developers. And they are all free.For the DesktopIt's fun

  • AdvantagesLinux is freeCan't say that enoughIt's great for poor college studentsLearning Linux means learning UNIX, and UNIX is the largest server platform in the worldCommunityThe Linux community is very active and helpfulThis makes support very rapid

  • But it's hard to learnLinux is much harder than WindowsIt's harder to use than WindowsIt lacks all those great automated installation toolsYou have to manually configure hardwareThere is lots of hardware out there that just won't run in Linux

  • So You Are Ready to Take the PlungeWhat do I need to know?Not all distros are the sameLinux From Scratch is a bad starting placeInternet Resourceswww.linux.orgwww.tldp.orgwww.justlinux.orgwww.desktoplinux.orgWhat distro should I start with?RedhatMandrakeSuse

  • Some Linux BasicsFile SystemLinux is much more hierarcal than WindowsEverything starts at the root/Boot -- contains the kernel and system mapBin -- contains the basic system binariesDev -- all the device entriesEtc -- can't think of any other place to put itHome -- where all the users liveLib -- system librariesMnt -- place to mount filesystemsProc -- system informationRoot -- the root user's homeSbin -- system binariesUsr -- where user accessible programs goVar -- logs and such

  • Basics cont...CLIThe command line interfaceBash is the most common shellThe CLI in Linux is quite useableNavigationls -- lists files and directoriescd -- changes directoriesrm -- removes filesNavigation switchesMost programs have options that you can pass to them via switches, for ex. ls -h gives you all the options that ls can take and what they do

  • 6 RunlevelsLevel 0HaltLevel 1Single User modeLevel 2ReservedLevel 3Full MulituserLevel 4ReservedLevel 5XwindowsLevel 6Reboot

  • XWindowsLinux Graphical EnvironmentInvoked via the startx commandTwo major environmentsKDEGnomeThe difference is primarily in philosophyRedhat trys to erase the differences with BluecurveDoes everything Windows does and more

  • A Few Good DistrosRedhatMandrakeSuseLycorisGentooKnoppix

  • Hat's offRedhatProsEasy installTons of graphical toolsGreat hardware supportOne of the most mature distrosConsIt's slowTheir stock kernel is somewhat bloatedInstalls files in non-standard directoriesNot customizeable

  • DrakoMandrakeBased on RedhatModified to suit desktop systems more than RedhatSupports that funky DVD Decoder Card you have to useMore on the edge than RedhatUses a modified kernel

  • Tame the LizardSuseProsAvoids much of the bloat of Redhat and MandrakeGreat hardware supportThe easiest Linux installation I have ever hadConsStill hard to customize

  • PerfectionGentooProsBuilds Linux from scratch, optimizing for the architecture of your PCBlazing speedHighly customizeableUser Forums are a great place for supportRuns Quake and Unreal Tournament 2003 out of the boxHas a kernel specifically modified for gamersConsCan be overwhelmingTakes a long time to buildDo not trip over the power cable while it is building

  • KnoppixSelf containedCan boot almost any pc that supports cdrom bootingSettings can be stored locally or on USB pen driveGreat to learn onDoes not require resizing partions or wiping drives