System and configuration files [1]

System

System configuration

Path

Description

/etc/crontab
/var/spool/cron/crontabs/[user]
global configuration file
user specific files for crone (also for root)

/etc/fstab

file system table: devices to be auto-loaded on system start (Entry format: UUID, mount point, file system, options)

/etc/group

list of all user groups

/etc/hdparm.conf

optional settings for devices (for example ‘spindown’ commands upon inactivity)

/etc/hostname

Hostname of the Linux system

/etc/load.d

Defines which kernel modules are loaded on system start

/etc/mime.types

Assignment of file type and file extensions

/etc/motd

Custom message upon logging in via SSH

/etc/passwd

List of all internal, explicitly created user accounts

/etc/rc.local

global autostart during system start (before user login). Only terminal commands possible.

/etc/shadow

password file for all user accounts. Plain text file but passwords are encrypted

/etc/sudoers

list of all user accounts eligible for sudo commands

/etc/sysctl.conf

settings for Linux kernel, like swapping behavior, magic-key rescue combinations, network parameters. Only for experts

/etc/systemd/system.conf

Basic configuration for the initialization services initd

/etc/apt/sources.list
/etc/apt/sources.list.d/*.list
Main package sources for package manager apt (Debian, Ubuntu, Mint)
PPAs and external package sources (Debian, Ubuntu, Mint)

/etc/default/grub

default settings for the boot manager Grub2

/etc/network/interface

classical network settings for example ‘auto eth0’ or ‘iface eth0 inet dhcp’. On UI systems the network manager manages these, hence those settings are ignored.

/etc/xgd/autostart/*.desktop

contains all files which are launched during user login

/usr/share/applications/*.desktop
/home/[user]/.local/share/applications
system-wide application shortcuts for desktop and launch menu
user specific application shortcuts (have priority)

Network and Web Services

Network and Web Services

Path

Description

/etc/apache2/apache2.conf

main configuration file for Apache webserver

/etc/apache2/sites-available/000-default.conf

configuration for active Apache services

/etc/host.allow

allow certain computers access to hosted services

/etc/host.deny

deny certain computers access to hosted services

/etc/nginx/nginx.conf

main configuration of nginx webserver

/etc/nginx/sites-available/default

configuration of active nginx services

/etc/openvpn/server.conf

main configuration of Open-VPN server

/etc/php/[x.x]/apache2/php.ini

PHP configuration under Apache2

/etc/samba/smb.conf

samba configuration including access definitions

/etc/ssh/ssh_config

configuration of OpenSSH client, commonly no changes needed

/etc/ssh/sshd_config

configuration of OpenSSH server

/home/[user]/.ssh/rc

user specific commands script, which are executed by SSH session when logging in as [user]

Bash-Shell

Bash-Shell

Path

Description

/etc/inputrc

global input standard for the terminal (key-bindings)

/etc/bash.bashrc

global bash shell launch script for system-wide aliases, functions, variables

/etc/profile*

global launch script for log-in bash shell. Only executed for new log-in (SSH or virtual console)

/etc/skel/.bashrc

the file among others in the same directory define the basic configuration when adding a new user account

/home/[user]/.bash_history

user specific command history (commonly last 500 - defined via $HISTFILESIZE variable)

/home/[user]/.bash_login

optional user specific start script

/home/[user]/.bash_logout

optional user specific closing script

/home/[user]/.bash_profile

optional user specific start script

/home/[user]/.bashrc

optional user specific start script for aliases, functions, variables

/home/[user]/.inputrc

user specific input standards for bash shell (dominates over /etc/inputrc)

/home/[user]/.profile

user specific start script for log-in shells. Only executed during new log-in like SSH or virtual console

Diverse Software

Diverse Software

Path

Description

/etc/[Software]/[File(s)]

global configuration for [Software] under /etc

/home/[user]/.[File]

user specific configuration

/home/[user]/.[Software]

user specific configuration for application

/home/[user]/.config/[Software]

collective directory for user specific configurations

Logs

Logs

Path

Description

/var/log/

collective directory for various log and protocol data (system log, samba, apt, Apache, FTP). Partial summary available via UI tolls like gnome-logs

/var/log/apache2/access.log

logs of all accesses to web server services including access IP, access target, browser

/var/log/auth.log

chronological log of all login attempts via graphical shell or via SSH or the web server configuration UI

/var/log/dmesg

chronological log of the kernel containing all recent hardware events. Older logs are kept in /var/log/kern.log

/var/log/dpkg.log

chronological log of updates and installations

/var/log/faillog

protocol about failed login attempts. This binary file must be opened via faillog -a. The column ‘Failures’ shows the amount of failed attempts for each user account

/var/log/nginx/access.log

chronological logs of all accesses to web server services including access IP, access target, browser

/var/log/samba

all accessing network devices including their IP address and hostname (at least ‘log level=1’ in /etc/samba/smb.conf)

/var/log/syslog

chronological log of all system events: network, services, cronjobs, hard drive