Sunday, November 8, 2009

Apache-error: (98)Address already in use: make_sock: could not bind to address 80

***********************************

# /etc/init.d/httpd restart

Stopping httpd: [ OK ]

Starting httpd: (98)Address already in use: make_sock: could not bind to address [::]:80

(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80

no listening sockets available, shutting down

Unable to open logs

***********************************

Solution:

Comment out listen 80 in your /etc/httpd/conf/httpd.conf or /ect/apache2/ports.conf, it depends on your linux distro. try to use "locate" command.

example:

#Listen 80

IfModule mod_ssl.c
Listen 443
IfModule

Kill process in Linux or terminate a process in UNIX or Linux systems

Q. How do I kill process in Linux?

A. Linux and all other UNIX like oses comes with kill command. The command kill sends the specified signal (such as kill process) to the specified process or process group. If no signal is specified, the TERM signal is sent.

Kill process using kill command under Linux/UNIX

kill command works under both Linux and UNIX/BSD like operating systems.

Step #1: First, you need to find out process PID (process id)

Use ps command or pidof command to find out process ID (PID). Syntax:
ps aux | grep processname
pidof processname



For example if process name is lighttpd, you can use any one of the following command to obtain process ID:
# ps aux | grep lighttpd

Output:

lighttpd 3486 0.0 0.1 4248 1432 ? S Jul31 0:00 /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf
lighttpd 3492 0.0 0.5 13752 3936 ? Ss Jul31 0:00 /usr/bin/php5-cg



OR use pidof command which is use to find the process ID of a running program:

# pidof lighttpd

Output:

3486

Step #2: kill process using PID (process id)


Above command tell you PID (3486) of lighttpd process. Now kill process using this PID:

# kill 3486

OR

# kill -9 3486

Where,

killall command examples

DO NOT USE killall command on UNIX system (Linux only command). You can also use killall command. The killall command kill processes by name (no need to find PID):

# killall -9 lighttpd

Kill Firefox process:

# killall -9 firefox-bin

As I said earlier killall on UNIX system does something else. It kills all process and not just specific process. Do not use killall on UNIX system (use kill -9).

* -9 is special Kill signal, which will kill the process.



Source

Show All Running Processes in Linux

How do I see all running process in Linux?

You need to use the ps command. It provide information about the currently running processes, including their process identification numbers (PIDs). Both Linux and UNIX support ps command to display information about all running process. ps command gives a snapshot of the current processes. If you want a repetitive update of this status, use top command.
Task: Use ps command

Type the following ps command to display all running process

# ps aux | less


Where,

* -A: select all processes
* a: select all processes on a terminal, including those of other users
* x: select processes without controlling ttys

Task: see every process on the system


# ps -A
# ps -e


Task: See every process except those running as root

# ps -U root -u root -N


Task: See process run by user vivek

# ps -u vivek


Task: Use top command

The top program provides a dynamic real-time view of a running system. Type the top at command prompt:

# top


Output:




To quit press q, for help press h.

Task: display a tree of processes
pstree shows running processes as a tree. The tree is rooted at either pid or init if pid is omitted. If a user name is specified, all process trees rooted at processes owned by that user are shown.

$ pstree



Output:


Task: Print a process tree using ps


# ps -ejH
# ps axjf


Task: Get info about threads

# ps -eLf
# ps axms


Task: Get security info

# ps -eo euser,ruser,suser,fuser,f,comm,label
# ps axZ
# ps -eM


Task: Save Process Snapshot to a file

# top -b -n1 > /tmp/process.log


Or you can email it to yourself:

# top -b -n1 | mail -s 'Process snapshot' you@example.com






Task: Lookup process
Use pgrep command. pgrep looks through the currently running processes and lists the process IDs which matches the selection criteria to screen. For example display firefox process id:


$ pgrep firefox


Following command will list the process called sshd which is owned by root user.

$ pgrep -u root sshd


Say hello to htop

htop is interactive process viewer just like top, but allows to scroll the list vertically and horizontally to see all processes and their full command lines. Tasks related to processes (killing, renicing) can be done without entering their PIDs. To install htop type command:

# apt-get install htop


or

# yum install htop


Now type htop to run the command:

# htop




(click to enlarge)