This section will be a little different then the other sections. Linux has so many different distribution flavors and applications that it would be impossible to put together a troubleshooting checklist for “Linux”. So instead I will be providing a list of different techniques, utilities, and methods for getting to the root of problems that can occur on a linux system. In doing so we should be able to get the problem fixed, or at least gather enough information for a more experienced technician to take over and quickly get to the bottom.
If the linux system is down:
- There is no guarantee that it will respond to a ping, and there is no guarantee that SSH or TELNET or HTTP will respond because there could be a firewall in place. But you can try to access the server via any of those to check to see if the box is online.
- If there is a customer that is able to access the system locally you can have them try to login with a username they already know, or they can try ‘root’ as the username with their typical admin password
- If the linux system is truly down due to hardware problems, refer to the environment overview section to make sure there isn’t a power or other environment issue.
If the linux system is up:
- If you are unable to login remotely, have a user try and login locally and then try to ping something locally, and then something on the internet to see if there is a gateway problem
- On most linux systems `netstat -rn` will show the routing information for the host, including default gateway setting
- Check the log files on the system, log files are normally located in one of the following locations
- Linux = /var/log/
- HP-UX = /var/adm/syslog/
- Solaris = /var/adm/
- Check to see what is all running on the system by executing one of the following commands
- Linux = `ps aux`
- HP-UX/Solaris = `ps -elf`
- If there is a process listed in the output of the ps command, find its PID number and then execute `kill [PIDNumber]` to kill it
- If something seems to be scheduled to run, it is probably inside of a cron job, you can check these by running `crontab -l` to list the jobs, and `crontab -e` to edit what is running, also you can run `crontab -r` to remove all entries for the user your logged in as
- Commands that show file systems include: `mount`, `df`, and `du`these do the following:
- mount – shows the current file systems that are mounted
- df – shows the filesystems that are mounted and the size and free space on each
- du – shows the files in the working directory and how big they are