Intro To Linux


Published on

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Intro To Linux

  1. 1. Intro to Linux
  2. 3. TLUG Information Archive, Forum, Wiki, News [email_address]
  3. 4. Disclaimer Bit Does everyone know the difference in source code and compiled programs? People tend to stick with what they know, so I will compare Linux to Windows and OSX. Always choose the best tool for the job.
  4. 5. Happy Linux Slides For each of these there are many alternatives.
  5. 6. Terminal
  6. 7. Web Browser
  7. 8. Office Suite
  8. 9. Development
  9. 10. Gaming
  10. 11. Media Playback
  11. 12. Media Creation
  12. 13. File Sharing
  13. 14. Instant Messaging
  14. 15. Photo Editing / Drawing
  15. 16. Servers DNS, VoIP, Web, FTP, etc
  16. 17. Audience Questions Who uses IE as their main browser? Why?
  17. 18. Audience Questions What other browsers do you use? Why?
  18. 19. Audience Questions? What is the single most important feature for a computer?
  19. 20. My most important thing Availability/Usability
  20. 21. Other Important Things Software Compatibility Speed Cost Stability
  21. 22. Cost of Windows 3 computers, 4 OS's, 4 year old Office Suite
  22. 23. Cost of Linux 2 computers, Always current OS and Office Suite Awesome Big Monitor
  23. 24. Cost for 100 Computers* Windows $407,000 Linux $278,000 *not counting IT personnel, specialized software, downtime for viruses/spyware, lost company secrets, porting VB apps to, management applications and totally using made up numbers
  24. 25. Additional Cost In 10 years, each computer needed $1,000 of additional software. Windows $507,000
  25. 26. Linux is free as in Freedom When you buy/download Windows software, you just get the compiled program. With Linux you get the source code* *there are exceptions to most rules
  26. 27. Proprietary Terminology Shareware / Freeware
  27. 28. Freedom With Linux you get the source code, you can update, fix, change, as you see fit. Others get this source code also.
  28. 29. Linux Terminology Proprietary / Closed Source
  29. 30. iPhone Development Example To develop iPhone apps, you need 10.5.XX Then you have to give Apple, your name, email, phone number for the “Free” Development tools
  30. 31. Linux is Powerful 2 “Workgroup Class” servers with lighttpd, mysql, asterisk* * VoIP uses UDP, Call quality is very important, Latency is Bad
  31. 32. Linux is Customizable Why have games on office computers? Why have any software that isn't needed? Linux lets you set up machines as you see fit. It's your computer, why let others make decisions for you?
  32. 35. Linux is even more Customizable Why do you click start to shut down? Why does it ask you if you really want to shut down? Bad design is fixed or replaced.
  33. 36. Windows Update Example <ul><li>Check install IE7 </li></ul><ul><li>Click upgrade </li></ul><ul><li>Wait </li></ul><ul><li>Wait </li></ul><ul><li>Click yes, please install </li></ul><ul><li>Wait </li></ul><ul><li>Reboot </li></ul><ul><li>Use features from 5 years ago </li></ul>
  34. 37. Why wait on Patch Tuesday? <ul><li>Linux updates/patches are issued as they released, usually hours after major security flaws are found </li></ul><ul><li>Microsoft can wait months before fixing a know issue. How is this secure? How does this benefit you? </li></ul><ul><li>Linux updates tell you what they are for </li></ul>
  35. 38. OpenSSH Example <ul><li>A flaw was found in how OpenSSH on Debian generated keys, the 'random number generator' was not exactly random and the keys could be predicted. </li></ul><ul><li>This is a big deal </li></ul><ul><li>I booted up my laptop and it told me about this problem, patched itself, then it made me generate new keys. </li></ul><ul><li>This problem was patched and spread to users in a matter of hours. </li></ul>
  36. 39. A goal of non Microsoft OS's <ul><li>Marketshare </li></ul><ul><ul><li>You have to build something </li></ul></ul><ul><ul><ul><li>Better </li></ul></ul></ul><ul><ul><ul><li>Faster </li></ul></ul></ul><ul><ul><ul><li>Easier </li></ul></ul></ul><ul><ul><ul><li>Cooler </li></ul></ul></ul><ul><ul><ul><li>More Powerful </li></ul></ul></ul>
  37. 40. A goal of Vista <ul><li>Make hardware requirements so high, that people have to buy new hardware. This keeps the hardware vendors happy so that they keep selling Microsoft Software.* </li></ul>*At least it seems that way
  38. 41. Ok, I get it, teach me Linux <ul><li>Linux is a term most people use to describe the whole thing </li></ul><ul><li>Linux is really just the Kernel ( ) </li></ul><ul><li>Linus Torvalds originally wrote it and shared it with the world. </li></ul><ul><li>Linux would not be possible without user contributions of time, money, code, testing </li></ul><ul><li>It would also not be possible without the GNU guys </li></ul>
  39. 42. GNU? <ul><li>Developed open source versions of standard UNIX tools. </li></ul><ul><li>Developed the gcc complier. </li></ul><ul><li>Were trying to build an OS called Herd </li></ul><ul><li>Want Linux Installations to be called GNU/Linux </li></ul><ul><li>Take care of a lot of the legal / licensing for open source software </li></ul>
  40. 43. GPL <ul><li>GNU General Public License </li></ul><ul><li>Share it; use it; tell everyone I made it; but if you change it, tell us </li></ul>
  41. 44. Distributions <ul><li>Include Linux Kernel </li></ul><ul><li>Include GNU tools </li></ul><ul><li>Include all kinds of software </li></ul><ul><li>Package all this together </li></ul><ul><li>Maintain all this along with mailing lists, wiki's, forums, irc channels </li></ul><ul><li>Provide support or the avenues for support </li></ul><ul><li>Can be for profit! </li></ul>
  42. 45. Distro Examples <ul><li>Debian - </li></ul><ul><li>Ubuntu - </li></ul><ul><li>Fedora - </li></ul><ul><li>Slackware - </li></ul><ul><li>Gentoo - </li></ul><ul><li>Mandriva - </li></ul><ul><li>Linux Mint - </li></ul><ul><li>OpenSuse - </li></ul>
  43. 46. Choosing a Distro <ul><li>Philosophy /Goals </li></ul><ul><li>Install </li></ul><ul><li>Support / Long Term Support </li></ul><ul><li>Package management </li></ul><ul><li>Utilities </li></ul><ul><li>Release Cycle </li></ul><ul><li>Users </li></ul>TLUG recommends Ubuntu for the beginning user
  44. 47. Installing Linux <ul><li>It is as hard as you want it to be </li></ul><ul><li>Come to the Install Fest!!! </li></ul><ul><ul><li>Even the pros are going to have a good time </li></ul></ul><ul><li>Don't forget Live CD's </li></ul>
  45. 48. Partition Tips <ul><li>Partitions </li></ul><ul><ul><li>Most Linux installs require you to partition </li></ul></ul><ul><ul><li>You need a '/' partition for all of your files </li></ul></ul><ul><ul><li>You need a 'swap' partition that is generally twice your ram, but not more than 1 gig * </li></ul></ul><ul><ul><li>You can also have a '/home' partition for your user files, but its not required </li></ul></ul><ul><ul><li>You can have as many partitions as you want </li></ul></ul>*There is much debate on this
  46. 49. User Tips <ul><li>You need at least 2 users </li></ul><ul><ul><li>root (administrator) </li></ul></ul><ul><ul><li>user (you) </li></ul></ul><ul><li>You should only use the root account for administration </li></ul>
  47. 50. File System <ul><li>/boot – kernel and boot info </li></ul><ul><li>/bin – essential executables </li></ul><ul><li>/dev – system devices </li></ul><ul><li>/etc – system configuration </li></ul><ul><li>/home – users home directories </li></ul><ul><li>/lib – system libraries </li></ul><ul><li>/mnt /media – mount points for media </li></ul><ul><li>/proc – system processes </li></ul>
  48. 51. File System Continued <ul><li>/opt – optional stuff </li></ul><ul><li>/root – admin's home directory </li></ul><ul><li>/temp – temporary stuff </li></ul><ul><li>/usr – executables and source </li></ul><ul><li>/var – spooled data and logs </li></ul><ul><li>/ - root directory </li></ul>
  49. 52. File System Examples <ul><li>/home/droops/ – my home directory </li></ul><ul><li>/etc/init.d/ - startup and shutdown processes </li></ul><ul><li>/usr/src/ - downloaded applications source </li></ul><ul><li>/usr/bin/ - user binaries (mozilla) </li></ul><ul><li>/etc/asterisk/ - asterisk config files </li></ul><ul><li>/var/lib/asterisk/sounds/ - asterisk sounds </li></ul><ul><li>/var/www/ - www files directory </li></ul>
  50. 53. Everything is a File <ul><li>There are 3 types </li></ul><ul><ul><li>ordinary or plain files </li></ul></ul><ul><ul><li>directories </li></ul></ul><ul><ul><li>special or device files. </li></ul></ul><ul><li>Configuration files are plain text, you can edit them to your liking </li></ul>
  51. 54. Asterisk Configuration Files
  52. 55. Asterisk Extensions.conf
  53. 56. CpuInfo
  54. 57. Window Managers <ul><li>The GUI part of the System </li></ul><ul><li>You do not have to have one </li></ul><ul><li>Once people find one they like, they tend to argue that its the best and that everyone else is wrong. </li></ul><ul><li>They are different in look, configuration, footprint, use </li></ul><ul><li>XFCE is the best and everyone else is wrong </li></ul>
  55. 61. Shell <ul><li>By default, bash is your shell </li></ul><ul><li>You can open shells in your Window Manager </li></ul><ul><li>The shell is sometimes the best way to configure things. </li></ul><ul><li>Some people only use the shell </li></ul><ul><li>Some people never use the shell </li></ul><ul><li>Most people mix it up a bit </li></ul>
  56. 62. Shell Help <ul><li>Tab Completion </li></ul><ul><li>man 'man wget' 'man links' </li></ul><ul><li>--help -? 'wget –help' </li></ul><ul><li>In references the shell ususally looks like '$' </li></ul><ul><li>Syntax highlighting is a must </li></ul>
  57. 63. Shell Examples <ul><li>ls – lists files in directory </li></ul><ul><li>wget – retrieve url </li></ul><ul><li>grep – search file </li></ul><ul><li>cat – display file </li></ul><ul><li>cd – change directory </li></ul><ul><li>mv - move file </li></ul><ul><li>cp – copy files </li></ul>
  58. 64. Shell Scripting <ul><li>Similar to Batch Files '.bat' </li></ul><ul><li>Can be written in bash or any other scripting language (php, python, perl) </li></ul>for a in *.wav; do sox &quot;$a&quot; -t raw -r 8000 -s -w -c 1 ` echo $a|sed &quot;s/.wav/.sln/&quot;` resample -ql; done
  59. 65. File Permissions <ul><li>Each user has different permissions </li></ul><ul><li>There are more users than you created </li></ul><ul><li>'ls -l' shows permissions </li></ul><ul><li>chmod and chown change permissions </li></ul><ul><li>Examples </li></ul><ul><ul><li>chown -hR droops /var/www/droops </li></ul></ul><ul><ul><li>chmod 755 </li></ul></ul>
  60. 66. Package Management <ul><li>Apt / Aptitude - .deb </li></ul><ul><li>Dpkg - .deb </li></ul><ul><li>Yum - .rpm </li></ul><ul><li>Yast - .rpm </li></ul><ul><li>Source - tar / tar.gz / .tgz </li></ul><ul><li>I am sure there are others </li></ul>
  61. 67. OpenSSH Example Continued <ul><li>OpenSSH is not part of the core OS </li></ul><ul><li>It was something that I installed on my own </li></ul><ul><li>Why was Linux managing something that I installed on my own, that wasn't part of the OS? </li></ul>
  62. 68. Package management is Killer App <ul><li>With Debian and derivatives, apt is your best friend. </li></ul>$ apt-get update $ apt-cache search browser $ apt-get install dillo $ apt-get remove dillo $ apt-get install iceweasel
  63. 69. Install from Source $ cd /usr/src $ wget $ tar -xzvf app.tar.gz $ cd app $ ./configure $ make $ make install
  64. 70. Text Editors <ul><li>Vi, Emacs, Mcedit, Leafpad... </li></ul><ul><li>Learn to use one well and you will be eternally happy </li></ul>
  65. 71. Vim
  66. 72. Second to Last Slide <ul><li>Places to get help </li></ul><ul><ul><li>Forums </li></ul></ul><ul><ul><li>Wiki's </li></ul></ul><ul><ul><li>Google!!!! </li></ul></ul><ul><ul><li>Irc </li></ul></ul><ul><ul><li>LUG Meetings </li></ul></ul><ul><ul><li>Application Mailing Lists </li></ul></ul>