Linux works fine on obsolete computers with slow CPUs and tight RAM. Consider installing it on one of your old boat anchors for experiments, rather than installing it via the more complex dual boot.
Sun supports Java on Linux. The independent Blackdown Java seems to have been abandoned.
This document is designed to help a naïve user install and get started with, Ubuntu, Red Hat Fedora Core 8 or Red Hat Enterprise Linux, especially if you have a Windows background. Since I originally wrote this essay, everything has changed for the better. All current distributions have vastly improved installers. You can now install in under an hour from a single DVD. This installation process will leave you with a working system connected to the Internet with a full set of development tools, databases, an office productivity suite and all the Internet utilities including Apache. To get to the comparable state with Windows can easily take several days. Windows requires many reboots and when you are done installing the OS, you still need to download and install all the applications.
Please take anything you read here with a large grain of salt. Please let me know of any errors or omissions. I had an exceedingly frustrating time getting Linux to work. Further, I have been overwhelmed by the sheer volume of documentation. Most of what I wrote here is what people told me. I did not do it from personal experience. I hope to make your way a little easier.
Windows | Linux | Notes |
---|---|---|
+ (concatenation) | cat | |
< (input redirect) | < | |
> (output redirect) | > | 1> redirects stdout, normal output. 2> redirects stderr. 2>&1 redirects stderr to go to wherever stdout is going. |
| (pipe) | | | tee splits the stream to both the console and a file. |
alias (4DOS) | alias | to temporarily turn off an alias and get at the original meaning of a word, precede it with a \. To permanently turn it off use unalias. |
attrib | chmod chown |
There are three sets read/write/execute permission attribute bits for each file, one for the owner, one for the group the file belongs to and one for the universe at large. Each file has an owner and a group. A lead dot on a filename is similar to the DOS (Disk Operating System) hidden attribute. You need ls -a to see them. Any easy way to maintain this information is with Midnight Commander, mc. |
autoexec.bat | /etc/*rc*, .login, .profile, .bash_profile, .bash_login, .bashrc, .cshrc . |
/etc/*rc* execute when you first boot. .login, .profile, .bash_profile, .bash_login execute when you first login. .bashrc, .cshrc execute when you first start a script. |
beep | echo -en \a | |
boot manager | LILO, ELILO, GRUB | To modify the Linux boot manager modify /etc/lilo_config then run lilo to parse it and poke the information into the various absolute locations on hard disk. Grub uses BIOS (Basic Input Output System) to access the disk. |
browser | Firefox | Most distributions include Firefox. Opera, Arena, Lynx (a fast text-only browser) |
call myscript.bat | . myscript | . means run in the same process. Without the ., the new scripts starts up a new process. exec myscript stops the current script and starts a new one. |
cd | cd, pwd | cd changes to a directory, default the $HOME directory, where pwd tells you where you are now, PWD (Print Working Directory). |
config.sys | contents of /etc/sysconfig. | |
close | kill | |
com1: | dev/ttyS0 | |
command | bash, sh, csh, Zsh, exec, perl | |
command line interface | Terminal interface | |
copy | cp -p, scp | scp can be used inside or outside of an SSH (Secure Shell) (secure remote) session. When you use it outside one, it will automatically login, do the copying work and logout. -R is recursive like XCOPY /S. Watch out cp ignores directories and files beginning with . |
del | rm | |
dialler | ppp | |
dial up networking | rsh (regular) almost never used anymore because it transmits files in clear text, ssh -v (secure) | See SSH. You no longer need to compile ssh yourself. It will come preconfigured with the distribution. The easiest way to set up communication with another host is to exchange public keys via email and insert the host’s key in the known_hosts file and the user’s key in the authorized_keys file. You can use a null passphrase by typing ssh-keygen -p. |
dir | ls, dir | ls -F will mark each executable with a *, directories with a / and symbolic links with a @. Often ls is aliased to ls -F by default. |
Disk Explorer | mc | On Gnome desktops the Windows Explorer equivalent is Nautilus. Also consider
Midnight Commander. You will have to install this manually. You will have to
mount the CD-ROM (Compact Disc — Read Only Memory) first with: cd / mount /dev/cdrom /mnt/cdrom and get to the directory where the install files are with: cd /mnt/cdrom/RedHat/RPMS then install: rpm -i mc-3.2.11-2.i386.rpm |
DOS box | Terminal | |
echo %MU% | echo $MU | |
edit | Editors include: emacs, xemacs, nedit, kde, vi, vim, gvim, joe, pico, jedit, gedit, Slickedit. gedit is the Gnome graphical editor. Gedit and vi should both work out of the box. vi is usable with only the standard keys, so it can be used to recover severely broken systems because it is usable when no other editor will work. | Linux editors are highly configurable. They are almost unusable out the box. You need to edit text files that control how they work. Catch 22! Without special configuring, even simple things like the Del key won’t work properly. I think the authors deliberately make the default configurations infuriating to force you, like a tormented oyster, into learning the configuring tools and creating a pearl. Slickedit can be configured to behave in perfectly standard CUA (Common User Access) fashion. Others can be coerced grudgingly to sort of behave in a CUA way. The advantage of vi is it is small and ubiquitous. |
empty afile | : > afile | |
empty the trash | rm -R '#'* | to get rid of the #xxx files emacs leaves behind as backup. The single quotes ensure # is not treated as a comment. |
Eudora | Evolution | or mutt, Pine, Mozilla Thunderbird or Ximian. |
exit | exit | |
fdisk | gparted, fdisk, sfdisk, cfdisk and parted. | |
file/disk space used, Norton FS | du -s /myDir | |
find | locate xxx find / -name xxx -mount which xxx type xxx whence xxx find / -name xxx -print to list all files called xxx. You need to enclose the name in single quotes if you’re using wild card characters. find / -type f -print | xargs grep -l String To Search For |
You need to arrange for updatedb to periodically update the database that locate uses. The database does not get updated as a side effect of creating, deleting or copying or moving files. Normally, cron runs updatedb every night. You only need to run it yourself if you want to use the database immediately after an install. |
finger | finger | |
free disk space SNIFF C: D: |
df -k /myDir | |
help | man -k, info, apropos. You’d usually use apropos foo to find a man page and man foo to read it. whatis rpm, would briefly tell you what the RPM command does. | You need to run mkwhatis before apropos and whatis will work. Mkwhatis is run automatically overnight to pick up the day’s changes. |
ide | Eclipse | Check out the various IDEs to see which ones will run under Linux. Also IntelliJ Idea and Netbeans. |
IE (Internet Explorer) | Firefox | Opera, Arena |
if %x == orange echo fruit | if [ ${x} = orange" ] then echo fruit if | |
if not exist myfile.txt echo oops | if [ ! -f myfile.txt ] then echo oops if | |
install | RPM UP2DATE, YUM or AGET | |
Internet Explorer | Firefox | Opera, Arena |
md | mkdir | |
more | more, less | |
MS DOS prompt | shell, bash, sh | |
password | passwd | passwd is used to change your password. Passwords are stored in the /etc/passwd file in encrypted form. If any are in plain text, the account was not properly set up. The root user can set other people’s password with passwd someUserId. |
pause | read -p | |
move | mv | |
Netscape | Netscape, Opera, Firefox | |
Paint, Paintshop Pro, Photoshop etc. | The Gimp | |
path | echo $PATH | |
lpr nenscript cp afile /dev/lp0 |
lpr adds files to the print queue. nenscript converts text files to PostScript | |
SVN (Subversion)/ CVS (Concurrent Versions System)/PVCS (Polytron Version Control System) | SVN/CVS | CVS is included in most distributions. If it is not included in yours, you can download the source for the cvs version control software from nongnu. Subversion is a considerable improvement on CVS. |
rd | rmdir, rm -r | |
REM ::REM |
# | comments in scripts |
remote shell | rsh, ssh | See dial up networking. |
rename | mv | |
replace | cp -u | |
resync | cp --recursive --update dir1/* dir2 cp --recursive --update dir2/* dir1 |
To resynchronise two directory trees to make them identical, propagating the newest version of each file in the directory to the other. You can use the short switches -R and -u. Also rsync, which can synchronise two disks by doing the minimum work needed to bring the copy into line with the master. Wget (which is also available for Windows). Use it to retrieve a complete web page hierarchy unless robots.txt says it mustn’t. |
set | env | sort, setenv, export | |
shortcut | link, ln -s /usr/local/netscape/netscape netsc | Soft Links will be left dangling if the original file is deleted. See section later on soft links. |
spawn | & | |
splice cut | split | |
subst | mount, umount, ln -s- | Before you can use a CD-ROM
disc you must mount it with a command like this: cd / mount /dev/cdrom /mnt/cdrom /mnt/cdrom must be a preexisting, but unused, directory where the CD-ROM files will appear. Further, it may not be the current directory. Any files there will be invisible during the time the directory is being used as a mount. Don’t expect a meaningful error message if you violate any of these rules. Every time you change discs you must umount and re-mount, as if you were changing a removable disk pack on an ancient mainframe. Mounts are easier to do with the X Windows control-panel. Edit your etc/fstab to have two lines in it one for /dev/cdrom and one for /dev/had. Use mount point /mnt/cdrom and options iso9660,noauto,ro 0 0. Modern distributions will automount removable devices ( USB (Universal Serial Bus), CD (Compact Disc), DVD (Digital Video Disc)) and put an icon on the desktop. Right-click the Icon and Eject appears on a drop-down menu. Clicking it unmounts the device. |
task list | top, ps, ps aux | grep roedy | |
task scheduler | cron is used to run regularly scheduled tasks. at runs a task once at a given time. | |
tasks | tasks, jobs | |
telnet | telnet. Telnet is used only for debugging and for
accessing legacy applications and sometimes for configuring routers. It has
the problem of transmitted plain text passwords.
minicom and kermit, are the equivalent of the Windows serial port terminal emulator combined with the xmodem/ymodem file transfer facilities. | |
TS (Text Search) | grep -i Abc myfile grep '$' myfile grep $USER: myfile fgrep |
grep looks for regular expressions. -i allows case insensitive matches. If your string contains any magic regular expression character such as []$\{}<>, or space then you need to enclose it in apostrophes. If you want $ environment expressions expanded, use quotes. |
type | cat | |
uninstall | rpm -e uninstallPackageName | The catch is, you don’t use the same package name to install as to uninstall! To find out the uninstall names, do a rpm -q -a | less. Very likely you will want to uninstall the existing Java and replace it with the latest. |
who is logged on? | w | |
Windows | startx, Gnome, KDE, X-Windows, Fvwm (F*cking Virtual Window Manager) | Fvwm |
WinAmp | XMMS and Audacious | |
WinFTP | ftp, ncftp sftp does encrypted ftp and gftp gives you a GUI (Graphic User Interface), similar to Windows WS-FTP. | |
WinZip | tar -xvzf afilename.tar.gz tar -xvf afilename.tar gunzip afilename.gz unzip afilename.zip zip and unzip are compatible with Windows PkZip and WinZip. emacs |
with emacs configured with (auto-compression-mode 1). |
word | open office | word processor of some sort will likely come bundled with your distribution. Also Kate, the KDE Text Editor for small jobs. |
xcopy | cp -R /sourceDir /targetDir find. -name '*.c' -print | cpio -pd /targetDir tar cf - myfiles* | (cd /targetDir; tar xf -) |
The first form copies the entire directory and Recursively copies the subdirectories. The second form selects just some of the files by wildcard. find lists the files to copy and cpio makes the copies. -d means create new directories as needed. The third form uses the tar, tape backup utility. cpio can be persuaded to avoid copying over top of newer files. |
.zip | .tar, .tar.gz, .gz | Watch out trying to download .tar.gz files with Windows. The names will sometimes get mangled since Windows does not like more than one dot per name. You will have to correct them once you get them to Linux. See WinZip entry for various utilities to pack/unpack these files. |
Linux-only Partitioning | ||
---|---|---|
Name | Size in MB | Purpose |
boot | 1000 MB | kernel boot image(s) |
/ | 2 GB | login, essential programs, temp disk, root. |
var | 2 GB | system logs, NNTP (Network News Transfer Protocol) files, mailboxes |
usr | 15 GB | standard Linux programs |
home | 15 GB | /home holds all user logins and their private data |
swap | 8 GB | 4 × RAM |
You can mount your DOS/Windows partition, either read-only or read-write. You don’t set it up during the sysgen. You add it later with a bit of fussing. You first need to mkdir a /windows directory as the mount point. Then you need to use the control-panel in X-Windows to add a new partition. Add, not edit! You need to set its type to vfat not DOS It will be added to the /etc/fstab the auto option, so it will be automatically remounted on any reboot. If you want to set it up before you get X-Windows working, you can edit the /etc/fstab to insert an entry of type vfat, mount point /win and options auto,noexec,nosuid,nouser,rw 0 0. You need to do one mount /dev/sda1 manually and from then on it seems to work automatically.
There are several jobstreams running during the install. You can flip back and forth with Alt-F1 Alt-F2 etc. or Ctrl-Alt-F1 if under X Windows. To get back to X-Windows use Alt-F7.
If you are a masochist, you will love Xfree86. It is almost like a build-it-yourself driver toolkit but more frustrating. If you want to spend less than a month of your life solving the problem of making the screen display something, use Red Hat 5.0 and the enclosed commercial Metro-X drivers and use configX. Be careful to fill in both panels one for the monitor and one for the video card and don’t touch the add button.
Use Xconfigurator to configure X-Windows and X or startx to start it. Once you have X working you can use the control-panel that you can access inside X to configure a second printer, configure ppp access, add users etc.
If Xconfigurator does not work, you may have to start over from scratch installing Linux or use RPM to make sure you have the right video driver. Look over all the choices, don’t just grab the first one that looks good. If X still does not work, try installing fewer video modes in particular leave out some of the higher resolution ones. I found the old xf86config line-oriented configuration program gave better results, though it was more awkward to use. Without it I could not get at the high resolution modes and I could not change modes with Ctrl-Alt-Keypad+ and Ctrl-Alt-Keypad-. If X hangs on fireup, hit Alt-F1 and you will be able see some error messages about why it failed. Use xvidtune within X-Windows to fine tune the configuration so that the image is sized and centered properly on the monitor in all modes. Not that xvidtune does not change your XF86Config file for you. It just displays settings you can manually add to it. It may be easier to use your monitor’s adjustments, then adjust other OS ’s to those settings.
The first entry on the modes line is the one your X-Windows will come up in. When
you hit Ctrl-Alt-+, it should step through them in order.
Modes 640x480 800x600 1024x768 "1280x1024
"
You can control which colour depth your X-Windows comes up in with: startx -- -bpp 16
In theory you should by able to permanently configure this by creating a file in your home directory called .xserverrc with the line exec X :0 -bpp 16 in it. However, I have not got that to work myself.
To properly solve this configuration problem you have to have entries that exactly match the documented modes supported by your video bios. This may require setting up modes that are specific to a colour depth because your video card my require different rates for different colour depths with the same resolution. I have yet not found documentation on how to generate the required magic numbers.
After that is done, you can start thinking about configuring your .fvwmrc file to configure the menus etc.
The standard install program ignores much of your hardware, e.g. tape backup, sound card, scanner. To use these devices you must generate a new kernel, or find a pre-built one that has the support you need. I’m told
CD /usr/src/linuxmake configThough I have not had quite the nerve to try it yet.
For a sound card you may want commercial drivers from http://www.4front-tech.com.
autoexec script | when run |
---|---|
/etc/*rc* | when the system boots |
/home/yourname.login, .profile, .bash_profile | when you log in |
.cshrc, .bashrc | whenever you start a new shell |
I am a puzzled by the Unix folk having so many ways of handling the GUI. I have heard of Gnome 1 2 3, KDE, X-Windows, Xfce, Unify
Because we get a choice over the L&F. Everything uses X11, aka X-windows: that’s the underlying display technology for all graphical displays on UNIX/Linux but it doesn’t do window management/desktops. X-term is a non- graphical way of using X11 as a text-mode terminal — rather like a DOS box, but capable of talking to both local and remote hosts.
To do anything useful with X11 you use a window manager: all distros pick one to use as default and each has its own style of handling the desktop, decorating application windows, launching applications, etc. etc. — hence the religious wars and differences of opinion over them. The common ones are Gnome and KDE (the two commonest ones), Xfce (very basic, but lightweight. If you run up VNC (Virtual Network Computing), the default desktop for it is Xfce) and Unity (currently restricted to Ubuntu, introduced because they hate Gnome 3 but its reportedly disliked just as much). The true answer is even more complex, since the GUI is layered and you can mixed pieces together from different desktop environments, window managers and toolkits.
Gnome 1,2,3 are just versions of Gnome — think Java 2,3,4,5 6 …
Which does Java use?
None, but Swing has a limited ability provide the same look and feel as the native windows manager for the system the JVM (Java Virtual Machine) is installed on as well as Java’s cross-platform Metal look & feel, e.g. G3 buttons and text entry boxes have rounded corners, but Java doesn’t and its default button background gradient is different, as is the main menu bar though the appearance is fairly close. The title bar and its drop-down menus are, however, identical. AWT (Advanced Windowing Toolkit) uses GTK (the Gimp ToolKit). SWT (Standard Widget Toolkit) uses GTK.
When you write a C program do you have to pick a GUI manager? or do they share a common core API (Application Programming Interface)?
No, they have different APIs (Application Programming Interfaces). My distro uses Gnome by default but can support KDE. Almost all the apps I use are Gnome apps, but I do use one or two KDE apps. They run OK, but have a slightly different look & feel and drag in a whole bunch of KDE support libraries — but a decent package installer deals with that automatically. Package installers also differ: Red Hat distros such as Fedora and Red Hat clones use YUM, Ubuntu and the other Debian clones use APT.
However, you often want to make changes that apply to all users. This used to be done by editing /etc/profile — something that needed to be redone after a reinstall. Now there’s a better way. /etc/profile shouldn’t need changing because its final act is to run every script it finds in /etc/profile.d. So, make a short script setting the customisations for everything to do with a particular program or package and drop it into /etc/profile.dand keep a copy in a safe place. That way after a clean install, you just drop this set of scripts into /etc/profile.d
Here is a Java customisation script, java.sh
The second and third items in the paths that form the definitions of JAVA_HOME to MSTOR are symbolic links. This means that java.sh is independent of software versions and is installation-proof:Be very careful about copying files to and from a Windows partition. You will lose the owner, the attribute bits and files and directories beginning with . will not be copied. Files will be redated.
Simply editing /etc/HOSTNAME is not sufficient. Change the name with the X Control Panel netconfig.
Your computer also has another name, localhost@localdomain with dummy IP (Internet Protocol) 127.0.0.1.
Program | How To Get Out |
---|---|
emacs | Ctrl-G Ctrl-M Ctrl-C N yes |
less | Ctrl-Q Q |
man | Ctrl-Q Q |
vi | Esc : Q |
vim | Esc : Q |
code | meaning |
---|---|
… | expand what is inside now. |
'…' | what is inside later. |
${name} | expand name as a set parameter. |
$(name) | run the program name and expand with its output. |
$name | old way of doing ${name} |
`name` | old way of doing $(name) |
cd /B ln -s A/x y
JAVA_HOME=/usr/local/java/jdk15 JDK_HOME=$JAVA_HOME PATH=$JAVA_HOME/bin:$PATHThese may go in your .bash-profile or your /etc/profile.
Emacs is designed solely for the convenience of advanced users. You might think if it as a suite of word processing LISP (List Processing language) functions. You edit a file by running in an interactive programming mode where you compose and execute a LISP program on the fly where each keystroke invokes one LISP function.
To begin to make it friendly, (bind home jump to start of line instead of start of file, bind end jump to end of line, bind ^@ behave like Shift-^@ and bind ^- to behave like ^C_) create a .emacs file in your $HOME directory like this:
Here is a table of the basic commands to get you started. M-x in Linux-speak means Alt-x, C-x means Ctrl-x and S-x means Shift-X.
Keystrokes | Effect |
---|---|
Home or M-< | Move to beginning of file |
End or M-> | Move to end of file |
PgDn or C-v | Page down |
PgUp or M-v | Page up |
M-% | Replace text |
C-@ or C-space | Place mark at cursor location |
C-g | cancel current command. |
C-x C-f | load a file |
C-x C-s | Save a file |
C-x C-c | Exit Emacs with option to save |
C-x u | Undo the last change |
C-x 1 | go back to having a single window |
C-x 2 | Split the window in two |
C-x o | Other window |
C-d | Delete a character |
M-d | Delete a word |
C-g | Cancels the current command |
C-k | Cuts text from cursor to end of line |
M-q | Justifies the current paragraph |
C-s | Search for text |
C-t | Transposes two characters |
M-t | Transposes two words |
M-u | Capitalises current word |
C-w | Cuts text between cursor and mark |
M-w | Copies text between cursor and mark |
C-y | Paste/Uncuts text |
Andrew Langmead |
Bob Friesenhahn |
Daniel Kulp |
Harvey Fishman |
James Janney |
Matija Grabnar |
Joanne Dow |
Alan Ogden |
Keven Kreiser |
John Strom |
C. D. Inchauste |
Martin Gregorie |
Linux Distributions | |
---|---|
Distribution | cost |
Ubuntu | Download free. Easiest for the novice. Supported by a combination of professionals and volunteers. It is good for getting your feet wet since you can also run it from CD without installing it and you ran run it under Windows. |
Red Hat Fedora | free |
Red Hat Desktop | to Depending on how many machines and how much support you want. Last revised/verified: 2008-01-27 |
Debian | Download free with jigdo. |
Centos | Download free. CENTOS (Community Enterprise Operating System) Binary clone of Red Hat. Basically it is Red Hat without the professional support. This is legal since Red Hat is open source. |
Slackware | Download free with BitTorrent. On hold since the main person holding it together got sick. Supports GNOME only. For hard core hackers. |
Knoppix | Download free with BitTorrent. |
Gentoo | Last revised/verified: 2008-01-27 |
SuSe Personal | free Last revised/verified: 2008-01-27 |
Mandrake/Mandriva | |
Oracle Java Desktop Personal: with Solaris | free Last revised/verified: 2008-01-27 |
recommend book⇒The Official Ubuntu Book (9th Edition) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
by | Matthew Helmke, Elizabeth K. Joseph, Jose Antonio Rey | 978-0-13-451342-3 | paperback | |||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
publisher | Prentice Hall | 978-0-13-451249-5 | eBook | |||||||||||||||||||||||||||||||||||||||||||||||||||||
published | 2016-07-30 | B01IFCKT96 | kindle | |||||||||||||||||||||||||||||||||||||||||||||||||||||
Aimed at first time users. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Greyed out stores probably do not have the item in stock. Try looking for it with a bookfinder. |
recommend book⇒Running Linux, fifth edition | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
by | Matthias Kalle Dalheimer, Matt Welsh | 978-0-596-00760-7 | paperback | |||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
publisher | O’Reilly | 978-0-613-91175-7 | hardcover | |||||||||||||||||||||||||||||||||||||||||||||||||||||
published | 2005-12-29 | 978-0-596-55300-5 | eBook | |||||||||||||||||||||||||||||||||||||||||||||||||||||
B0043EWUNE | kindle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Good introduction to Linux and Unix in general | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Greyed out stores probably do not have the item in stock. Try looking for it with a bookfinder. |
recommend book⇒Peter van der Linden’s Guide to Linux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
by | Peter van der Linden | 978-0-13-187284-4 | paperback | |||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
publisher | Prentice Hall | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
published | 2005-08-18 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Peter is fun to read. So many texts are so dry you have to force yourself to plod through. With Peter it is more like a good novel you can’t put down. This is a book for people wanting to get started with Linux written in standard English. Peter has a knack for bringing the esoteric down to earth and making it simple. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Greyed out stores probably do not have the item in stock. Try looking for it with a bookfinder. |
This page is posted |
http://mindprod.com/jgloss/linux.html | |
Optional Replicator mirror
|
J:\mindprod\jgloss\linux.html | |
Please read the feedback from other visitors,
or send your own feedback about the site. Contact Roedy. Please feel free to link to this page without explicit permission. | ||
Canadian
Mind
Products
IP:[65.110.21.43] Your face IP:[3.139.87.234] |
| |
Feedback |
You are visitor number | |