Slashdot Mirror


Teach Yourself Unix in 24 Hours

Spencerian writes "The surge of Unix-derived operating systems such as Mac OS X, Linux, and the now-free Solaris is not slowing against the fortified but embattled breakwaters of the Microsoft operating system family. But new power users of other operating systems, including those just starting with Unix as well as the graphical interface of the operating system (such as the Mac OS Finder, or the navigators of KDE or Gnome), remain in need of a comprehensive primer for Unix that complements their previous knowledge. The fourth edition of Dave Taylor's "Teach Yourself Unix in 24 Hours" should remain on the top of the buy list for computer users in need of a strong Unix reference where they may find themselves managing or using the subtle variants of Unix flavors." Read the rest of Spencerians' review. Sams Teach Yourself Unix in 24 Hours, 4th Edition author Dave Taylor pages 518 publisher Sams Publishing rating 7.5 of 10 reviewer Kevin H Spencer ISBN 0-672-32814-3 summary The fourth edition of Dave Taylor's "Teach Yourself Unix in 24 Hours" should remain on the top of the buy list for computer users in need of a strong Unix reference where they may find themselves managing or using the subtle variants of Unix flavors.

The format of this Sams book, as with other books in this "Teach Yourself...In 24 Hours" series has not changed. The book content does favor Windows or Macintosh users when describing, comparisons and contrasts of Unix tasks to those popular operating systems. Unless the reader has been a fan of very little-used operating systems in their past and somehow managed to avoid Mac OS, Windows or Linux, absorption of what is needed for each chapter shouldn't be difficult.

Each chapter is technically noted as a one-hour lesson, although the author acknowledges that many may need more than one hour to absorb some material and should take as much time as they need to understand what they need to know. Chapters include the Unix basics such as using text editors such as vi, moving and copying files, viewing file contents and locating files in the operating system, and topics scale upward to advanced shell programming and even Perl programming. Generally, most readers need not read from beginning to end, chapter to chapter. Despite the lesson-like mode of the book, "Teach Yourself Unix" is a reference.

The "Teach Yourself" books are not advanced reference books, however, and "Teach Yourself Unix in 24 Hours" is no exception. As someone that's used more and more Unix commands in the background of Mac OS X to make things easier or to circumvent limitations or flaws of the Mac OS X Finder, the previous editions of "Teach Yourself Unix" were handy references when I needed a quick and certain process to accomplish a task. Sometimes it's too easy for graphical interface users to moan and while when the Windows Explorer or Mac OS X desktops stick and slows to a crawl when managing something as simple as copying a file, forgetting that there is another way. This book contains the basics to manage these tasks without being too basic of a reference.

The author's breadth of knowledge in many Unix-derived systems such as BSD, Solaris, and Linux continue to extend themselves well in the lessons. Each chapter contains explanations and examples to aid those that need more information. Most Slashdot readers might find this level of detail a bit plodding, but some newbies to Unix may need this since Unix is not inherently a graphical operating system that's easy to understand by sight, so things need to be literally spelled out. Peppered throughout the book are sidenotes that keep the reader apprised of exceptions or proper etiquette when handling, discussing or pronouncing Unix tasks and terminology.

There's a marginally useful amount of back matter on the book, consisting of two appendices, one on frequently-asked Unix questions, and another more useful appendix on managing the Apache web server from a command line. The back cover has a simple command-line reference that's not bad, however, being Unix, the amount of commands and versatility seem a bit limited, so the command-line reference lacks a bit of punch. Some chapters seem a bit archaic and probably need to be reconsidered in a future edition--very few of us may have a need to send mail from the command line in this age of Yahoo Mail and the sheer number of mail services available on computers in schools, businesses, homes, and even from cell phones for jotting off a quick note to a comrade for quick answers. Full-time conversing by mail in Unix isn't something I feel anyone but the most hardcore Unix user will relish--and those users aren't the audience of this book.

This book is designed for new Unix users, but intermediate users will find "Teach Yourself Unix in 24 Hours" a handy reference when having to workaround GUI pitfalls or failures. This book's previous versions have saved my bacon in reinforcing my previous experience and skills at the command line when the Mac OS Finder seizes, leaving no graphical way to complete a task. Unfortunately, given the volume of information I must remember in using both Mac OS X and Windows XP, I, for one, can't remember every nuance of Unix needed, particularly since it's not as easily remembered as icons or menus. Perhaps the author may find that a fifth edition will need information on the long-awaited Windows Vista in the event it contains Unix parts and pieces."

You can purchase Sams Teach Yourself Unix in 24 Hours from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

31 of 250 comments (clear)

  1. Good start... by fak3r · · Score: 3, Insightful

    Sounds like a good start, but know that it'll only be a base to build on. As someone that has used Linux/*BSD/Unix for over 10 years, it's something that will provide a lifetime of learning. The challenge is what I love about it; think about it this way if you want to start with a book like this.

    1. Re:Good start... by ergo98 · · Score: 5, Insightful

      Sounds like a good start, but know that it'll only be a base to build on. As someone that has used Linux/*BSD/Unix for over 10 years, it's something that will provide a lifetime of learning.

      Using and learning are very different things. There are people out there, right now - probably millions of them - doing software development the wrong way. They're implementing their small set of knowledge over and over again, for years at a time, not realizing how redundantly and incorrectly they're doing things (a great example would be the millions of developers squeezing out terrible database designs year after year - a particular vice of mine. Perhaps they'll imagine that they're expert database designers after a few years, but that couldn't be further from the truth). If they took a moment and actually learned for a few hours, it would make the implementation part much more effective, but people shun learning when they can just use what they already know as their hammer.

    2. Re:Good start... by Otter · · Score: 5, Insightful
      The challenge is what I love about it...

      See, one day I was wrestling with a CUPS upgrade that broke printing and telling myself I was learning something in the process, when it dawned on me -- there are more rewarding challenges in life than fighting with a computer.

      To the degree that Unix makes my life easier, it's worth using. (There's a VNC window open now saving me from something that would be excruciating in Windows.) But using it to make life more difficult has lost its luster.

  2. work with someone knowledgable... by SlashSquatch · · Score: 5, Informative

    ...if you can. There's no substitute.

    --
    Autonomous Retard -- Is your camp safe? UnsafeCamp.com
    1. Re:work with someone knowledgable... by s20451 · · Score: 4, Funny

      But they cost a lot more than a book.

      In India, I hear they give you a free sysadmin with your coffee at Starbucks.

      --
      Toronto-area transit rider? Rate your ride.
  3. It's on my bookshelf next to... by toupsie · · Score: 5, Funny

    It's on my bookshelf next to Nuclear Powerplant Management for Dummies and Learn to Navigate Alaskan Bound Oil Tankers in 24 Hours. I hate these cheat your way to understanding book titles.

    --
    Strange women lying in ponds distributing swords is no basis for a system of government.
    1. Re:It's on my bookshelf next to... by Overzeetop · · Score: 3, Insightful

      You must not have see these 'Sams" series books before. I picked up a C++ version about 6 ot 7 years ago. 24 hours? Try 24 lessons which can be read and completed by the author in just over an hour each. They're freakin texts. I must say I haven't seen this one in particular, but if it's like the others I've seen, a good user without some prior understanding of the subject can figure that it will take an evening - 2-3 solid hours - to thoroghly digest each chapter...longer if you work most or all of the examples. It's only the title which makes it appear quick...a more apt title would be "Teach yourself Unix in less than a month if you don't have a life".

      --
      Is it just my observation, or are there way too many stupid people in the world?
    2. Re:It's on my bookshelf next to... by WhiteWolf666 · · Score: 3, Informative

      That being said, they are quite good texts.
      Its pretty well thought and explained to be able to teach yourself .

      In 24-hours? Not unless your a crazed, methampthetamine monkey with an IQ of 180 and a degree in speed reading, not too mention the ability to type ~200 wpm.

      More realistic would be 1-3 hours per lesson, 3-5 lessons per week.

      Each 'hour' in the book is one 'lesson', and there really is no reason to try and complete each lesson in one hour; far better to go over it and make sure you grasp it, and to just generally take it at a relaxed pace.

      --
      WhiteWolf666 an exBush supporter. All you new-school,compassionate,save the children Republicans can rot in hell
  4. time by karvind · · Score: 3, Funny
    I wonder if the book tells the reader not to use his watch and use unix command time before he/she starts reading the book. That 24 hours may not be real or user time but sys instead.

    Just kidding :P

  5. screw that book by Anonymous Coward · · Score: 4, Insightful

    If you really want to understand unix you shouldn't get this book

    Some time ago I found an old text book for sysadmins written in 94.

    It skipped all that about guis and actually explained how to manage the OS via commandline.

    I had been using gnome for some time, but after reading that book I finally understood what all those scary commands meant when I configured my wifi card.

  6. Step #1 by GillBates0 · · Score: 3, Informative

    % man man

    --
    An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
    1. Re:Step #1 by DeafByBeheading · · Score: 3, Interesting

      The thing is, as a novice *nix user who is very interested in learning more, I find this approach very limiting. Sure, it'll give you info on commands, but it won't tell you anything about how the system is organized. For example, my system has a nic that's unsupported by the default kernel. There is an open source driver available, but I was only able to get an old version to work by following a step-by-step guide that had you type in commands verbatim (using backticks where necessary), explaining very little of what was actually going on. The newer version doesn't work if I just follow the same steps. The forums have not been of much help. Learning enough to do this by manning would take ages.

      *nix has a weird learning curve. At first, the CLI-centered approach is intimidating. Then you learn the FHS (or BSD's hier); some basic commands like man, apropos, ls, cd, cp, mv, rm, and eventually find, grep, and a couple of other things; and it's not so scary. Then you try to figure out how to add a kernel module, and you either have people hold your hand through it without actually teaching you anything, or you have to try to dig this out from man and co. yourself.

      I've found it very difficult to get beyond knowing the basics to actually being comfortable with the system. It doesn't sound like this book would help much...

      --
      Telltale Games: Bone, Sam and Max
  7. The best way is to solve a problem by path_man · · Score: 4, Interesting

    I've found that the best way is to solve some particular problem. Example: add these four new disks from the JBOD enclosure to your linux system. This teaches about the physical device drivers, device files, volume mgmt, filesystem mgmt, and mounting them upon boot (which touches many important aspects of UNIX).

    Working with someone else who can help point you in the right direction and solving a problem by yourself is much much better than a book.

    --
    The surest sign of intelligent life in the universe is that none of it has tried to contact us. -- Calvin & Hobbes
  8. Teach Yourself Programming in Ten Years by Janek+Kozicki · · Score: 4, Insightful

    When people talk about books titled "ten yourself something in NN hours/days" it always reminds me about this webpage.

    And in fact that's the truth - you can't learn that something in few days. Progamming? unix administration? sailing? playing chess? Man... that takes years to master.

    --
    #
    #\ @ ? Colonize Mars
    #
    1. Re:Teach Yourself Programming in Ten Years by Petrini · · Score: 4, Insightful

      Sure, those things take years to master. But that's mastery. Does it take years to learn how to play chess? No. Does it take years to become a master of chess? Yes.

      Learning how to accomplish tasks like adding a user and its options is simpler and takes far less time than learning how to write 'adduser.' Evaluate the book on the standard it sets for itself: learning how to do things. Don't judge it wanting because it doesn't teach the entire universe of how unix works.

  9. Re:Dubya! by Hosiah · · Score: 4, Funny

    It's easy to see why you got modded down -1 flamebait. You need to get the facts straight. A recent study shows the average IQ of the following groups:
    Stupid gits: 56
    Blithering morons: 48
    Bumbling fools: 44.3
    Fucking Idiots: 37
    Bleeding halfwits: 29.1
    Fucking Imbeciles: 26
    You have to get to the level of inanimate objects or at the very least slow-moving vegetables as a basis for comparison with Dumbya before you can completely abolish all concerns for counterattacks.

  10. You must have found one amazing book... by anandamide · · Score: 5, Funny

    ...if it described how to configure your WiFi card in 1994!
    Was it called "Configuring Not-Yet-Invented Hardware for Dummies" ?

  11. insulting? by tomstdenis · · Score: 4, Insightful

    I find all these "$THING for $PEOPLE" and "$THING in $QUANTITY of time" books insulting.

    Sure you can learn how to type "cd /usr/bin ; sudo rm -rf *" in 20 minutes. Can you learn to develop and debug shell scripts in 24 hours? I think not.

    Nor do I think people can learn C or C++ or Java in 24 hours. It's just insulting. Now I know they don't literally mean one day, but even college classes run longer than 24 hours. In college you'll have a 50-60 hour class on "intro to C" followed by FIVE MORE SEMESTERS of classes that build on it.

    I hate these books because they're retarded. I learned C primarily from "type and learn C" [I think by Sams] when I was 12. Then I proceeded to actually write programs [lots of them, 1000s of them]. I learned by doing and it took a long time. I wasn't half-way decent at "coding" until I was 19 and I'm just getting solid at proper development [well I'd say the last year has been really smooth].

    For all of us who do take it serious and have been through a lot of training I find these books insulting. And no, it isn't because I sunk a boatload of cash into the courses like a MCSE. I think people are quite capable of teaching themselves how to use UNIX shells or C programming. I just don't think it's the sort of thing you can do over a weekend or two.

    So fuck off already with the books that serve no purpose but to flood the market with a lot of "smart" people who turn out to be useless as the day is long.

    Tom

    --
    Someday, I'll have a real sig.
    1. Re:insulting? by skribble · · Score: 4, Insightful

      dude, lighten up...

      "Can you learn to develop and debug shell scripts in 24 hours? I think not."

      What does this have to do with a book designed to get new users familiar with using Unix? (which BTW the book in question is designed to do?) I would add, that yes you could learn to develop and debug scripts in 24 hours if you were so inclined, you might not be any good at it, but you could learn the basics.

      The purpose of this book and other like it are to teach the reader the basics of doing something, and overall they tend to do this fairly well. Nowhere do they say that you will gain 10 years of experience in a book.

      "In college you'll have a 50-60 hour class on "intro to C" followed by FIVE MORE SEMESTERS of classes that build on it."

      That statement seems to reflect more about your ignorance and some of the problems with higher education then actually making a valid point. The main text on the C language is "The C Programming Language" by Kernighan and Ritchie. I quote from the book "C is not a big language, and it is not served well by a big book." The book in question is less then 300 pages... easily worked through in a week or so (and could possibly be absorbed in 24 hours as well). And while this book isn't going to teach you every library and algorithm necessarily to create many outstanding applications, This book will in fact teach you the C language pretty much in it's entirety. (After all all the extensions and libraries are essentially built out of the these very basics taught in this book).

      So if you must, be insulted. I don't think too many people on Slashdot really care (and seriously who hasn't been insulted by something on Slashdot at one time or another). But you arguments just point out what are apparently your own shortcoming and misunderstandings about anything. I mean anyone who states "I hate everything that ..." without exploring everything you supposedly hate represents the height of ignorance.

      --
      --- Nothing To See Here ---
  12. Hit TV series on the way? by saskboy · · Score: 4, Funny

    24 Unix!

    It would be modeled after the hit American TV series with Mr. Sutherland in it. He'd have just 24 hours to learn Unix, or a bomb goes off yadda yadda. Each hour of the show would show him at the command line, or trying to get X Windows running, and about hour 15 someone should show him a Linux Live CD and nearly save the day.

    It could be shot under the BSD license, and run on either a Mac or Intel processor, depending on what they'd think would get better ratings.

    Any TV producers out there want to buy the rights to my idea?

    --
    Saskboy's blog is good. 9 out of 10 dentists agree.
  13. Marketing Titles Rejected By Publishers by Dystopian+Rebel · · Score: 5, Funny

    The Hopeless Moron's Guide To

    The Shallow Unteachable Twit's Manual For

    Become Dangerous With Too Little Knowledge Of In 24 Hours

      For The Brainless

      For Assholes

    --
    Rich And Stupid is not so bad as Working For Rich And Stupid.
  14. Re:ohh yeah thats right, i read this once by rootedgimp · · Score: 5, Funny
    "I hate Unix because it made me type man mount"

    man mount && touch tail more && more; finger assets |grep && fsck; locate cat && tar; whereis find mysqldump..... chpwned.

    i need to get out more...well.. on second thought, ill do society a favor.
  15. "Teach Yourself UNIX in a week" - by same author by Animats · · Score: 4, Funny
    The same author also wrote "Teach Yourself UNIX in a Week".

    But he's way behind on speed. The current record holder is "Teach Yourself UNIX in 10 minutes".

    You may also need "Advanced Speed Typing" and Carpal Tunnel Syndrome Treatment.

  16. The Difficulty by miyako · · Score: 4, Informative
    I think that the biggest difficulty that a lot of users have when transitioning from working with the GUI to working with the command line is the fundamental difference in the way that the two operate. The biggest difference as I see it is that the GUI is good at performing 1 operation at a time on an arbitrary set of files. The command line on the other hand seems to be most useful when you want to perform many tasks on a single file, or a group of files like *.txt or foo*. For many things on the command line there is no real anlagous way to perform the task with a GUI.
    The problem is that many people who first start out with the command line seem to view it as more of them having to simply type in obscure commands to correspond to the same steps they would take were they using a GUI. I've seen many people type:
    cd /home/myusername/foo
    ls
    cp foo.txt /home/myusername
    cd /home/myusername/
    mv foo.txt bar.txt
    cd foo
    rm foo.txt
    instead of simply typing mv ~/foo/foo.txt ~/bar.txt Of course this is a simple example, but I think that it illustrates my point that people are often locked into the GUI mindset. As such, even if they understand in the abstrace the use of piping and output redirection, etc, the difficulty is in understanding how to use those tools efficiently.
    --
    Famous Last Words: "hmm...wikipedia says it's edible"
  17. I quit Sam's years ago by Hosiah · · Score: 3, Interesting
    As the well-known tech author Peter Norvig noted, you won't learn but diddly in 24 hours (my wording). In fact, I daresay that Unix is not a topic one expects to learn completely in *any* finite length of time. Instead, one must stroll to the heftier material (like "Unix: the Complete Reference" that McGraw-Hill publishes) and take it home for a few dollars more. You keep it on hand as an on-going reference source.

    I'm afraid I can't pull any punches on this one: any "teach yourself X in 24 hours" book is snake oil to get your money. It's there to take advantage of people with the wrong attitude - Unix (and most of IT along with it) evolves so continuously, it practically re-invents itself every five years (through BSD, Linux, Solaris, etc). Get it in your head that it's a "learn-it-once" thing and you end up ten years later still able to babble Apple 2 Basic and remembering that SIMM = "single inline memory module" and DIMM = "dual inline memory module", but having to scurry back to the docs every time you edit your Python script.

  18. Step 1: rm vwls -r by G4from128k · · Score: 4, Funny
    When trying to remember commands, step one is to remove all the vowels.

    I don't even want to think what Unix would have been like if it had been created by Finns or Hawaiians.

    --
    Two wrongs don't make a right, but three lefts do.
  19. My problem with "learning Unix" by TheReckoning · · Score: 4, Interesting

    ... whatever that means, is this. I need a high-level description of how Unix works. I have a reasonable handle on how Windows works (at least on a conceptual basis), so if I run into a problem or would like to get something done, I have an idea the kind of tools I need.

    I've only played with HP-UX and a couple of Linux flavors - and not long or thorough enough to know what's going on under the hood.

    Some examples:

    How does **nix boot? How does it interact with hardware? Is there a general hint to what all the directories are about or any memory aids for knowing what's in them? Permissions - any chance of an overview of what the bits mean, why they might be used and how they're actually used?

    The books I've seem go right from a brief history of Unix to either installing it or talking about commands. I've got no problem learning the "how", but I really need to know the "why" before I will spend the valuable time re-learning my way around an OS. Until then, I'll be sticking with Windows.

    Does anyone know any books that address the "how it all works together" part? I'll be happy to read man pages and cryptic HOWTOs once I know why I'm doing it.

    1. Re:My problem with "learning Unix" by multipartmixed · · Score: 5, Informative

      > How does **nix boot?

      The hardware runs a program. That program loads the kernel and executes it. Any more specific, and you're now talking platform-specifics which don't have to with UNIX.

      For example, Linux on a DEC Alpha might boot like this:
      - Windows NT ARC loader configured to spawn program MILO.EXE on FAT-formatted disk in Drive A:
      - MILO.EXE understands Linux ext2fs, and launches the kernel wherever the Windows NT ARC loader's environment variables tell it to find it. (Hint - it's faster if you point it at a harddisk). The kernel is generally called /vmlinuz is a gzip-compressed Alpha ELF binary. (Or is it COFF?)

      Another example, Solaris on a SPARC box might boot like this:
      - The EEPROM stores the identity of the boot partition
      - The PROM loader goes looking for the boot blocks (installboot (1M)) on that partition, and executes the code it finds there
      - The software just executed understands the Unix Filesystem (UFS), goes looking for the kernel where it belongs (set by the installer, I forget where it's written down). Traditionally, it was /vmunix, now it's somewhere else.
      - The kernel looks in /etc/path_to_inst to figure out what device drivers to load, and loads them.

      Solaris on an x86 box boots pretty much like windows.
      - The BIOS goes looking for the first "active" partition, as marked by the disk partitioning utility. Generally on the first IDE controller's master disk.
      - The BIOS executes the code in the master boot record (MBR), which somehow winds up loading the boot blocks.
      - The software just executed understands the Unix Filesystem (UFS), goes looking for the kernel where it belongs (set by the installer, I forget where it's written down). Traditionally, it was /vmunix, now it's somewhere else.
      - The kernel looks in /etc/path_to_inst to figure out what device drivers to load, and loads them.

      > How does it interact with hardware?

      Same as any other operating system; through the PCI/ISA/etc bus and the API implemented by the hardware.

      > Is there a general hint to what all the directories are
      > about or any memory aids for knowing what's in them?

      Keep in mind, UNIX is not Windows. Generally speaking, you can put anything anywhere you want, as long as you change everything which cares about it. Which is usually possible!

      Keep in mind also, that nothing is absolute. /etc - misc OS crap that doesn't have a defined place. Generally config files /etc/inet - Like etc, but for networking stuff in SYSV. Generally linked to same-named files in /etc to be compatible with BSD. /var - Theoretically, for VARs. Nothing much officially lives here, except log files (/var/log, /var/adm on Solaris). Oh, and also spools (/var/spool/mail, /var/spool/lp, etc. Lp stands for "line printer") /opt - OEM or Third party packages on SYSV boxes, esp Solaris. /usr - Apps and stuff that came with the OS /usr/bin - Binaries for anybody to run (executable prorgrams) that should be available all the time. /bin - Like /usr/bin, but more OS-centric/important /sbin - Like /usr/sbin, " " "/" /usr/sbin - Binaries for super users /usr/local - Addons which are local to that box /usr/local/bin, sbin, etc -- Local to that box, but have /bin, /sbin, /etc functionality

      > Permissions - any chance of an overview of what the bits mean,

      Permissions are most useful to examine as four-digit octal numbers. Assign each octal digit as such: SOGW

      S - Special stuff, like sticky bits. Almost always 0
      O - Permissions for the file owne

      --

      Do daemons dream of electric sleep()?
  20. Who Needs a Book?! by Comatose51 · · Score: 3, Funny

    Conversation between me and friend:
    Me: What else should I put on my resume?
    Friend: Can you use grep?
    Me: Yeah kind of
    Friend: Bam! Instant Unix admin!

    --
    EvilCON - Made Famous by /.
  21. There are many books about UNIX internals. by CyricZ · · Score: 3, Informative

    You need a book such as "The Design and Implementation of the 4.4BSD Operating System". I believe there is a more recent edition which focuses on FreeBSD. There are many other books out there, too, focusing on the internals of systems like Linux, Solaris and OpenServer.

    They explain how each portion of the system works, in addition to how they work together. And then they explain exactly why.

    You should be able to find such books at a university bookstore.

    --
    Cyric Zndovzny at your service.
  22. I found the third ed. useful. by spasticus74 · · Score: 3, Informative

    I bought the third edition in January 2004 when I started a new job with a Unix/Linux company. I found it very easy to get up to speed quickly, which is a testament to the quality of the book as my previous *nix experience was measured in minutes. I particularly appreciated the way it compared and contrasted *nix with Windows as that's my background. It won't teach you everything but it covers the basics and will get you working pretty well straight away. As noted above to become really effective you should get help from someone with a lot more experience, but this book will introduce most *nix concepts.

    --
    "I'd like to think oysters transcend national barriers Adrian"