Unix/Linux – Typical Dot Files.
Typical Dot Files
There is some redundancy across these programs. For example, the look and behavior of emacs can be customized by using the .emacs file, but also by adding the appropriate modifications to the .Xdefaults file. Default versions of these files are often installed in users’ home directories when the software packages that use them are installed. If a program doesn’t find its configuration file in the user’s home directory, it will often fall back on a sytem-wide default configuration file installed in one of the subdirectories that the package lives in.
§ .bash_logout – file executed by bash shell on logout
§ .bash_profile – initialization of bash shell run only on login. Bash looks first for a .bash_profile file when started as a login shell or with the -login option. If it does not find .bash_profile, it looks for .bash_login. If it doesn’t find that, it looks for .profile. System-wide functions and aliases go in /etc/bashrc and default environment variables go in /etc/profile.
§ .bashrc – initialization command run when bash shell starts up as a non-login shell
§ .cshrc – initialization commands that are run automatically (like autoexec.bat) when C shell is initiated
§ .emacs – configuration file for emacs editor
§ .fvwmrc – configuration file for fvwm window manager
§ .fvwm2rc – configuration file for fvwm2 window manager
§ .jedrc – configuration file for the jed text editor
§ .lessrc – typically contains key bindings for cursor movement with the less command
§ .login – initialization file when user logs in
§ .logout – commands run when user logs out
§ .wm_style – gives choice of default window manager if one is not specified in startx
§ .Xdefaults – sets up X resources for individual user. The behavior of many different application programs can be changed by modifying this file.
§ .xinitrc – initialization file when running startx. Can be used to activate applications, run a given window manager, and modify the appearance of the root window.
§ .xsession – configuration file for xdm
§ /boot/vmlinuz – the typical location and name of the Linux kernel. In some distributions, the kernel is located at /vmlinuz.
§ /dev/fd0 – first floppy disk drive
§ /dev/fd0H1440 – driver for the first floppy drive in high density mode. Generally, this is invoked when formatting a floppy drive for a particular density. Some distributions come with drivers that allow for formatting a 3.5″ diskette with up to 1.7MB of space. Others do not contain these device driver files by default.
§ /dev/fd1 – second floppy disk drive
§ /dev/hda – first IDE hard drive
§ /dev/hdc – on many machines, the IDE cdrom drive. Most often, there is a symbolic link called /dev/cdrom which is just a link to the true cdrom driver file.
§ /dev/null – used when you want to send output into oblivion
§ /etc/aliases – file containing aliases used by sendmail and other MTAs (mail transport agents). After updating this file, it is necessary to run the newaliases utility for the changes to be passed to sendmail.
§ /etc/bashrc – system-wide default functions and aliases for the bash shell
§ /etc/conf.modules – aliases and options for configurable modules
§ /etc/crontab – shell script to run different commands periodically (hourly, daily, weekly, monthly, etc.)
§ /etc/DIR_COLORS – used to store colors for different file types when using ls command. The dircolors command uses this file when there is not a .dir_colors file in the user’s home directory. Used in conjunction with the eval command (see below).
§ /etc/exports – specifies hosts to which file systems can be exported using NFS. Man exports contain information on how to set up this file for remote users.
§ /etc/fstab – contains information on partitions and filesystems used by system to mount different partitions and devices on the directory tree
§ /etc/HOSTNAME – stores the name of the host computer
§ /etc/hosts – contains a list of host names and absolute IP addresses.
§ /etc/hosts.allow – hosts allowed (by the tcpd daemon) to access Internet services
§ /etc/hosts.deny – hosts forbidden (by the tcpd daemon) to access Internet services
§ /etc/group – similar to /etc/passwd but for groups
§ /etc/inetd.conf – configures the inetd daemon to tell it what TCP/IP services to provide (which daemons to load at boot time). A good start to securing a Linux box is to turn off these services unless they are necessary.
§ /etc/inittab – runs different programs and processes on startup. This is typically the program which is responsible for, among other things, setting the default runlevel, running the rc.sysinit script contained in /etc/rc.d, setting up virtual login terminals, bringing down the system in an orderly fashion in response to [Ctrl][Alt][Del], running the rc script in /etc/rc.d, and running xdm for a graphical login prompt (only if the default runlevel is set for a graphical login).
§ /etc/issue – pre-login message. This is often overwitten by the /etc/rc.d/rc.S script or by the /etc/rc.d/rc.local script. The relevant lines should be commented out (or changed) in these scripts if a custom pre-login message is desired.
§ /etc/lilo.conf – configuration file for lilo boot loader
§ /etc/motd – message of the day file, printed immediately after login. This is often overwritten by /etc/rc.d/rc.S or /etc/rc.d/rc.local on startup. See the remarks in connection with /etc/issue.
§ /etc/mtab – shows currently mounted devices and partitions and their status
§ /etc/passwd – contains passwords and other information concerning users who are registered to use the system. For obvious security reasons, this is readable only by root. It can be modified by root directly, but it is preferable to use a configuration utility such as passwd to make the changes. A corrupt /etc/passwd file can easily render a Linux box unusable.
§ /etc/printcap – shows the setup of printers
§ /etc/profile – sets system-wide defaults for bash shell. It is this file in some distribution that sets up the DIR_COLORS environment variable for the color ls command. Also sets up other system-wide environment variables.
§ /etc/resolv.conf – contains a list of domain name servers used by the local machine
§ /etc/securetty – contains a list of terminals on which root can login. For security reasons, this should not include dialup terminals.
§ /etc/termcap – ASCII database defining the capabilities and characteristics of different consoles, terminals, and printers
§ /etc/X11/XF86Config – X configuration file.
§ /proc/cpuinfo – cpu information
§ /proc/filesystems – prints filesystems currently in use
§ /proc/interrupts – prints interrupts currently in use
§ /proc/ioports – contains a list of the i/o addresses used by various devices connected to the computer
§ /proc/kcore – The command ls -l /proc/kcore will give the amount of RAM on the computer. It’s also possible to use the free command to get the same information (and more).
§ /proc/version – prints Linux version and other info
§ /var/log/messages – used by syslog daemon to store kernel boot-time messages
§ /var/log/lastlog – used by system to store information about last boot
§ /var/log/wtmp – contains binary data indicating login times and duration for each user on system