TLUG Information http://tlug.latech.edu Archive, Forum, Wiki, News [email_address]
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.
Happy Linux Slides For each of these there are many alternatives.
Photo Editing / Drawing
Servers DNS, VoIP, Web, FTP, etc
Audience Questions Who uses IE as their main browser? Why?
Audience Questions What other browsers do you use? Why?
Audience Questions? What is the single most important feature for a computer?
My most important thing Availability/Usability
Other Important Things Software Compatibility Speed Cost Stability
Cost of Windows 3 computers, 4 OS's, 4 year old Office Suite
Cost of Linux 2 computers, Always current OS and Office Suite Awesome Big Monitor
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 VB.net, management applications and totally using made up numbers
Additional Cost In 10 years, each computer needed $1,000 of additional software. Windows $507,000
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
Proprietary Terminology Shareware / Freeware
Freedom With Linux you get the source code, you can update, fix, change, as you see fit. Others get this source code also.
Linux Terminology Proprietary / Closed Source
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
Linux is Powerful 2 “Workgroup Class” servers with lighttpd, mysql, asterisk* * VoIP uses UDP, Call quality is very important, Latency is Bad
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?
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.
Windows Update Example
Check install IE7
Click yes, please install
Use features from 5 years ago
Why wait on Patch Tuesday?
Linux updates/patches are issued as they released, usually hours after major security flaws are found
Microsoft can wait months before fixing a know issue. How is this secure? How does this benefit you?
Linux updates tell you what they are for
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.
This is a big deal
I booted up my laptop and it told me about this problem, patched itself, then it made me generate new keys.
This problem was patched and spread to users in a matter of hours.
A goal of non Microsoft OS's
You have to build something
A goal of Vista
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.*
*At least it seems that way
Ok, I get it, teach me Linux
Linux is a term most people use to describe the whole thing
Linux is really just the Kernel ( http://kernel.org )
Linus Torvalds originally wrote it and shared it with the world.
Linux would not be possible without user contributions of time, money, code, testing
It would also not be possible without the GNU guys
Developed open source versions of standard UNIX tools.
Developed the gcc complier.
Were trying to build an OS called Herd
Want Linux Installations to be called GNU/Linux
Take care of a lot of the legal / licensing for open source software
GNU General Public License
Share it; use it; tell everyone I made it; but if you change it, tell us
Include Linux Kernel
Include GNU tools
Include all kinds of software
Package all this together
Maintain all this along with mailing lists, wiki's, forums, irc channels
Provide support or the avenues for support
Can be for profit!
Debian - debian.org
Ubuntu - ubuntu.com
Fedora - fedoraproject.org
Slackware - slackware.com
Gentoo - gentoo.org
Mandriva - mandriva.com
Linux Mint - linuxmint.com
OpenSuse - opensuse.org
Choosing a Distro
Support / Long Term Support
TLUG recommends Ubuntu for the beginning user
It is as hard as you want it to be
Come to the Install Fest!!!
Even the pros are going to have a good time
Don't forget Live CD's
Most Linux installs require you to partition
You need a '/' partition for all of your files
You need a 'swap' partition that is generally twice your ram, but not more than 1 gig *
You can also have a '/home' partition for your user files, but its not required
You can have as many partitions as you want
*There is much debate on this
You need at least 2 users
You should only use the root account for administration
/boot – kernel and boot info
/bin – essential executables
/dev – system devices
/etc – system configuration
/home – users home directories
/lib – system libraries
/mnt /media – mount points for media
/proc – system processes
File System Continued
/opt – optional stuff
/root – admin's home directory
/temp – temporary stuff
/usr – executables and source
/var – spooled data and logs
/ - root directory
File System Examples
/home/droops/ – my home directory
/etc/init.d/ - startup and shutdown processes
/usr/src/ - downloaded applications source
/usr/bin/ - user binaries (mozilla)
/etc/asterisk/ - asterisk config files
/var/lib/asterisk/sounds/ - asterisk sounds
/var/www/ - www files directory
Everything is a File
There are 3 types
ordinary or plain files
special or device files.
Configuration files are plain text, you can edit them to your liking
Asterisk Configuration Files
The GUI part of the System
You do not have to have one
Once people find one they like, they tend to argue that its the best and that everyone else is wrong.
They are different in look, configuration, footprint, use
XFCE is the best and everyone else is wrong
By default, bash is your shell
You can open shells in your Window Manager
The shell is sometimes the best way to configure things.
Some people only use the shell
Some people never use the shell
Most people mix it up a bit
man 'man wget' 'man links'
--help -? 'wget –help'
In references the shell ususally looks like '$'
Syntax highlighting is a must
ls – lists files in directory
wget – retrieve url
grep – search file
cat – display file
cd – change directory
mv - move file
cp – copy files
Similar to Batch Files '.bat'
Can be written in bash or any other scripting language (php, python, perl)
for a in *.wav; do sox "$a" -t raw -r 8000 -s -w -c 1 ` echo $a|sed "s/.wav/.sln/"` resample -ql; done
Each user has different permissions
There are more users than you created
'ls -l' shows permissions
chmod and chown change permissions
chown -hR droops /var/www/droops
chmod 755 file.pl
Apt / Aptitude - .deb
Dpkg - .deb
Yum - .rpm
Yast - .rpm
Source - tar / tar.gz / .tgz
I am sure there are others
OpenSSH Example Continued
OpenSSH is not part of the core OS
It was something that I installed on my own
Why was Linux managing something that I installed on my own, that wasn't part of the OS?
Package management is Killer App
With Debian and derivatives, apt is your best friend.