Vector Linux 5.8

Documentation

 

The VectorLinux Filesystem and How to Find Files

CONTENTS

  1. Introduction
  2. Important Configuration Files
  3. How To Find Files
  4. Credits

1. Introduction

VectorLinux, as with most other Linux distributions, tries to adhere to the Linux Filesytem Hierarchy Standard. This standard is necessary to enable developers and users to install, move, place and find files in locations that make sense and are consistent between distributions. This document will not discuss the details of the Linux FHS as you can read such details at the above website. What we wish to point out here are the important directories and file locations for those configuration files and directories which are particularly relevant or unique to VectorLinux. It is hoped this will enable newcomers to navigate the many Linux directories more effectively and to know where to find files to fix any problems that may arise. Secondly, we briefly discuss some of the Linux utilities that will help you locate files/directories.

It also needs to be known that VectorLinux is based upon the Slackware Linux distribution. Slackware Linux uses the BSD-style file layout for its system initialization script files. Consequently Slackware and Linux do not use System V init scripts. This is an important fact if you wish to navigate or edit the init configuration scripts. If interested, you can read about the difference between BSD and System V init scripts.

VectorLinux provides VASM the "Vector Administration and Services Menu" system administration utility amongst other utilities, plus a fully configured Linux system for most common hardware. Thus it should generally be unnecessary for newcomers to have to manually edit any of the configuration files. You should also never have to edit any of the init scripts unless you are an expert. This document is provided for information purposes only.


2. Important Configuration Files

Most system configuration files are located in the /etc directory. Most user-specific configuration files are in the appropriate home directory as a "hidden" "rc" file, e.g. ~/.bashrc or within a directory specific to the application, e.g. ~/.config/xfce4 (where ~ is a shortcut to your home directory). Navigate to the /etc directory in your favourite file manager application and we will analyze the most important system config files:

  • /etc/lilo.conf : the lilo boot loader configuration file
  • /etc/fstab : the block device (drives) system mounting file; controls which drives are mounted at bootup.
  • /etc/inittab : configuration file for the prime "init" script; determines bootlevel
  • /etc/passwd : user and password configuration file
  • /etc/X11/xorg.conf : the X config file; controls keyboard, mouse, video card and monitor
  • /etc/slapt-get/slapt-getrc : config file for slapt-get - the VL packaging tools
  • /etc/modules.conf : config file for loading kernel modules
  • /etc/resolv.conf : config file for network nameservers - set automatically if your ISP uses DHCP (most do).
  • /etc/samba/smb.conf : Samba config file

The important BSD-style system initialization scripts which the knowledgeable user may at some time wish to edit are:

  • /etc/rc.d : config DIRECTORY containing most of the Slackware-style startup scripts
  • /etc/rc.d/README : please do if you want to learn more!
  • /etc/rc.d/rc.S : one of the first boot scripts to run to prepare your system at boot time.
  • /etc/rc.d/rc.modules : modules to be loaded at boot time
  • /etc/rc.d/rc.inet1 : config file for eth0, you primary network card.
  • /etc/rc.d/rc.local : local bootup customization script. Put your additions here.

Now the most important user config files (where ~ denotes your home directory) are listed below. Note that almost every application you use will probably create a ~/.application file or directory where it stores your preference settings.

  • ~/.bashrc : config file for nonlogin, interactive bash shells
  • ~/.Xdefaults : config file for terminal console programs such as xterm, mrxvt
  • ~/.kde : kde preferences and autostart directories
  • ~/.config : xfce4 directory of xfce4 config files

And lastly here are some other important log files and other files which you may need to refer to at some stage:

  • /var/log/packages : directory containing description files for every Slackware/VL package installed on your system
  • /var/log/removed_packages : directory containing description files for every Slackware/VL package removed from your system
  • /home/ftp/pub/veclinux-5.8/packages : directory containing all packages downloaded using gslapt or slapt-get. Also contains mirror package info.

Top


3. How To Find Files

slocate or locate

slocate or locate commands provides a superfast, secure way to search an indexed database of every file on your system. However, you must first of all create the database and keep it up-to-date by running updatedb as root. You can place updatedb in your weekly crontab file. slocate is much faster and easier than using find.
Examples of using slocate:

  • slocate *.pdf will search the slocate database for every pdf file on your system.
  • slocate kde | grep rc will search the slocate database (whose location is /var/lib/slocate/slocate.db) for all files containing kde which also contain the phrase "rc".
  • slocate .png | less searches for all instances of files ending .png and sends the output to the less pager so that you can browse the list easily.

If you want to know where all the files were placed when you installed a Vector Linux .tgz package then slocate is your best bet. You can also browse this information at /var/log/packages.

mc (Midnight Commander)

mc, Midnight Commander is one of the most useful applications in Linux. It is a very fast, text-based file manager, much more powerful than many of the GUI file managers if learned properly - the only thing you can't do is drag and drop. Quite frankly, you will double your computing efficiency if you master this application. Playing with mc is the quickest way to learn your way around the VL filesystem. Press F1 for extensive help and read man mc.

find

find is a very powerful, but newbie-unfriendly command line program for finding files. Extensive options but a steep learning curve. If you want learn more read this HOWTO. Some examples:

  • find . -name 'a*' : will find all files beginning with the letter a in the current directory
  • find /etc -mtime -1 : will find all files in the /etc directory modified within the past day
  • find . \( -name temp -o -name tmp \) -print -exec rm {} \; : will display and then delete all files in the current directory named temp or tmp.

whereis

The whereis command locates the binary, source and manual pages for a command, e.g.:
whereis sort returns the output:
sort: /usr/bin/sort /usr/man/man1/sort.1.gz /usr/man/man3/sort.3.gz /usr/share/man/man1/sort.1.gz /usr/share/man/man3/sort.3.gz

apropos

The apropos command searches a database of all the manual (man) pages and returns those page names for the string you provide, e.g.: apropos pdf returns:

docbook2pdf [jw] (1) - (Jade Wrapper) converts SGML files to other formats
dvipdf (1) - Convert TeX DVI file to PDF using ghostscript and dvips
gs (1) - Ghostscript (PostScript and PDF language interpreter and previewer)
gsnd (1) - Run ghostscript (PostScript and PDF engine) without display
pdf2dsc (1) - generate a PostScript page list of a PDF document
pdf2ps (1) - Ghostscript PDF to PostScript translator
pdfopt (1) - Ghostscript PDF Optimizer
ps2ascii (1) - Ghostscript translator from PostScript or PDF to ASCII
ps2pdf (1) - Convert PostScript to PDF using ghostscript
ps2pdf12 [ps2pdf] (1) - Convert PostScript to PDF 1.2 (Acrobat 3-and-later compatible) using ghostscript
ps2pdf13 [ps2pdf] (1) - Convert PostScript to PDF 1.3 (Acrobat 4-and-later compatible) using ghostscript
ps2pdfwr (1) - Convert PostScript to PDF without specifying CompatibilityLevel, using ghostscript
texi2dvi4a2ps (1) - Compile Texinfo and LaTeX files to DVI or PDF
tiff2pdf (1) - convert a TIFF image to a PDF document

The above output shows all the commands and a brief description from the man page title of what they do.

which

The which command searches the directories in the PATH variable and displays the absolute pathname of the first file it finds whose simple filename is the same as the command, e.g.: which sort returns:
/usr/bin/sort


4. Credits

Copyright 2007 Vector Linux
Released under GNU Free Document License (http://www.gnu.org/licenses/fdl.html )
Contributed by: Lagagnon, LLL

Top