Well, since a bunch of people will probably want to respond,
       I'll try and wrap this one up quick swoop.  (Show me my
       ignorance if I really screw something up here, it's the only
       way I learn.)

       1) Source code can generally go anywhere on the system, though
       some programs/source code will try looking in specific
       directories for other source if it needs to link in.  My rule
       of thumb is any source that is system related should go into
       "/usr/src" (i.e. kernels, pcmcia, sound drivers, etc.)  User
       program source goes into "/usr/local/src" (i.e. games, mp3
       players, that latest window dohicky you can't live without.)
       In the end though, it really doesn't matter to much since the
       Makefile will undoubtedly place the executables and libraries
       in predefined "bin" and "lib" directories.

       2) There are a number of defined ways to place executables and
       there is atleast 1 RFC defining the suggested layout of files
       on a system (I can't recall the number off the top of my head).
       And worse yet, every distribution seems to have their own
       quirks in the layout scheme. So again, in general, the "sbin"
       directories (/sbin, /usr/sbin) are for system executables (i.e.
       fdisk).  These are typically only executable for root and
       specific daemons, not general users.  The "bin" directories
       (/bin, /usr/bin, /usr/local/bin) contain user executable
       programs (i.e. editors, games, etc.)  The "/bin" directory
       contains the most general programs everyone uses and
       "/usr/local/bin" contains the most machine specific programs.
       Remember, this was all thought up in the context of an
       integrated Unix network environment were you have not only your
       local computer but many others that you can remotely log into
       and run programs.  That's were it makes the most sense.

       In short, don't worry about it to much.  I guess your probably
       running a single user, local machine, so it doesn't matter much
       at all.  As for books, nearly all of the "Learn Linux Fast" (as
       if you could ever do such a thing) books are the same.  They
       only give you a generalized Unix orientation.  I'd suggest you
       go out and get "Linux in a Nutshell", published by O'Reilly, it
       lists nearly all the general commands for both user and system
       programs as well as shell operation and a system overview.
       Then start playing around and you'll figure out how things work
       together.  Hope it helps.

       Adrian




       From: [EMAIL PROTECTED] AT mime on 02/05/2000 01:08 PM
             PST

       To:   [EMAIL PROTECTED] AT mime@CCMAIL
       cc:    (bcc: Adrian D Jensen/RWS/Raytheon/US)

       Subject:  Stupid damn questions.





       Right, I can't find the answer to these in my Linux books -
       they all seem to assume that you know a certain amount at
       birth.  They've got nowt to do with laptops, but someone here
       should know the answers.  Feel free to mail me off list if you
       like to keep things on-topic.  Here're the questions:

       When you add a new app to Linux, you seem to always be invited
       to put the code in /usr/src/<NewApp>.  Is this for everything
       (new kernels to games), or just for some things?  Is there
       anywhere else that source code goes?

       And while I'm at it, what's the difference between /usr/bin/
       and /bin/ and /usr/sbin/?

       I know these are damn simple questions, but they've genuinely
       got me stuck.

       Anyone put me out of my misery?

       Cheers,
       Justin.


Reply via email to