LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Directory structure and general basics (https://www.linuxquestions.org/questions/linux-newbie-8/directory-structure-and-general-basics-513119/)

geegollyGAUCHE 12-23-2006 06:24 AM

Directory structure and general basics
 
This is my first post here. I just started using Linux (more specifically SUSE 10.1) once again after previous bad encounters and attempts at different distros. I have been reading for literally days (I haven't had work... just sitting at the computer day in and out) and I still can't find answers to questions that I believe to be basic fundamentals. I have used Windows for as long as I can remember but I don't want to anymore. I like to tweak with things but currently I just don't know where to start. I am excited to learn as much as I can about Linux except there seem to be a few things holding me back. I'll try to list the problems I can currently think up in some kind of easy to read format.


1. Could someone explain the directory structure to me?
I was under the impression that the 'mnt' folder was used to mount drives although in my 'mnt' folder I see nothing. I understand that the 'boot' folder is for the bootloader. 'etc' is home for the editable configuration files for certain programs, yes? Is 'home/<username>' where I should be storing all of my personal files and downloads? Since I am used to using Windows, I am used to having all of the programs installed in the 'Program Files' folder and all of the windows associated files in the 'windows' folder. In Linux, the all seem to be scattered throughout and I'm afraid to touch anything. If someone could explain in depth what each folder contains and whether or not it should really ever be touched (which will I use most when altering/moving files for programs?) would be great. For instance... What are the 'lib' and 'lib64' folders for. The only answer I ever get is "for libraries." Libraries for what though? The same with the 'bin' folders... "for binaries." But what are the binaries though? Executables? Install code? And with some of the folders (like 'opt', 'usr', 'proc', etc.) I have no idea what they stand for or what they contain.

2. What are './configure', 'make', 'make install', 'make clean', 'Imake', 'xmkmf' and the like used for?
More importantly - What does each one do exactly? How do I know when to do each or all? And is there usually an order to the process? Also - Where do these files for programs go after I have installed them? Must I specify a location or is there a general folder (like 'Program Files' in windows) where they are defaulted to go? Where do I find the executables for programs?
3. I've read that downloading binaries and running those commands to install are a lot better to do than say installing RPMs. Which would you advise for a noob (taking into account that I'll eventually learn how to use the 'make' commands correctly)?
I've been installing programs using Yast (which I assume IS how to install things). But when I install certain things, they don't show up in the KDE menu and I have no idea where to look for the executables to even add to the menu. I've added quite a few of repositories to Yast since this is generally the only way I know how to install programs but I can't always find things that interest me from anywhere but that developer's/programmer's site. Does Yast use only RPMs? If I download binaries and try to install manually, will the install process check for dependencies and automatically acquire and in install them first?
----------------------------------------------------------------


I have more questions but this post is already long. I figured quite a few things out through research by myself and have some knowledge even on the questions I posted here. I just need some clarification and in-depth explanation. I have a problem with asking an exasperating number of questions. I can see all of the potential Linux holds and I'm excited to learn how to utilize all of it. I guess maybe I just need a push in the right direction. So seriously, THANK YOU to anyone who takes time to answer any of my questions.


~Polockius

pixellany 12-23-2006 08:44 AM

Could you repeat the question?----;)
Seriously, short posts with very specific questions are better.

Filesystem: Ancient customs date back to early days of Unix--built around the concept of many users and central administration. Here is one link that may help.

Compiling: first, you don't need to do this unless you cannot find something in you repository--or find an .rpm file. (make, configure, etc. all have to do with compiling) See below on installing SW...

Installing SW:
Especially when starting out, use the repositories first. Second choice is to get an .rpm file and install at the command-line. The LAST choice is compiling from source. Using anything but the repositories carries the risk that you will have to hunt down some "dependencies"--our scary word for libraries that are needed for a particular application. The package manager spares you this trauma.

Final wisdom--which few of us follow: One step at a time.

Emerson 12-23-2006 09:06 AM

In addition to pixellany's answer.

There is no need to be afraid damaging the system as long as you do not log in as root - do not do that. Configuration files in /etc can be overridden by config files in your user's home directory. For instance if you start up MPlayer it uses mplayer.conf found in your home directory - if there is one. You can even run X server using your own /home/user/xorg.conf. If you mess things up simply delete your custom conf file and everything falls back to system-wide conf file found in /etc.


All times are GMT -5. The time now is 12:17 AM.