≡ Menu

unix systems

Mac Os X: Mount NFS Share / Set an NFS Client

How do I access my enterprise NAS server by mounting NFS filesystem onto my Mac OS X based system using GUI and command line based tools?
[click to continue…]

UNIX / Linux: HowTo Use unison File Synchronizer

I know how to use rsync for Unix systems which synchronizes files and directories from one location to another while minimizing data transfer. However, I would like to synchronizing files between two directories, either on one computer, or between a computer and another server. How do I maintain the same version of files on multiple servers?
[click to continue…]

Linux / UNIX FTP Commands Tutorial

I switched from MS-Windows to Mac computer running OS X UNIX systems. I need to transfer and download file using ftp for my personal website. Can you provide me a list of FTP commands that may be sent to an FTP server, to upload and download files using UNIX / Linux ftp command line client?
[click to continue…]

Delete SSH Keys

One my user leaves the office and I'd like to disable her access to our UNIX / Linux system. How do I delete ssh key from the UNIX systems so that user can not log in?
[click to continue…]

[ERROR] /usr/local/libexec/mysqld: unknown variable ‘thread_concurrency=8’

I'm trying to set 'thread_concurrency to 8 under Linux MySQL server. But when I try to restart the mysql server, I get the following error:

[ERROR] /usr/local/libexec/mysqld: unknown variable 'thread_concurrency=8'

How do I fix this problem?
[click to continue…]

UNIX: Set Environment Variable

How do I set environment variables on UNIX systems?
[click to continue…]

Apple Mac OS X Open And View .chm File

I know how to open .chm files under Linux, but how do you open and view .CHM files under Apple Mac OS X?
[click to continue…]

Solaris UNIX Case-Insensitive Find File Search

I'd like to match all filename like foo.c, FOO.C, fOO.c, Foo.C and so on using find command under UNIX. How do I do a case-insensitive find search under Sun Solaris / OpenSolaris UNIX systems?
[click to continue…]

HowTo: Create Files in Linux From a Bash Shell Prompt

I'm a new to CentOS Linux user. How do I create a file from bash prompt without using GUI tools?
[click to continue…]

Howto: configure xinetd service under Linux or UNIX systems

Q. How do I configure xinetd under Fedora Core Linux?

A. xinetd, the eXtended InterNET Daemon, is an open-source daemon which runs on many Linux and Unix systems and manages Internet-based connectivity. It offers a more secure extension to or version of inetd, the Internet daemon.

xinetd performs the same function as inetd: it starts programs that provide Internet services. Instead of having such servers started at system initialization time, and be dormant until a connection request arrives, xinetd is he only daemon process started and it listens on all service ports for the services listed in its configuration file. When a request comes in, xinetd starts the appropriate server. Because of the way it operates, xinetd (as well as inetd) is also referred to as a super-server.

Task: xinetd Configuration files location

Following are important configuration files for xinetd:

  • /etc/xinetd.conf - The global xinetd configuration file.
  • /etc/xinetd.d/ directory - The directory containing all service-specific files such as ftp

Task: Understanding default configuration file

You can view default configuration file with less or cat command:
# less /etc/xinetd.confOR# cat /etc/xinetd.confOutput:

# Simple configuration file for xinetd
# Some defaults, and include /etc/xinetd.d/
        instances               = 60
        log_type                = SYSLOG authpriv
        log_on_success          = HOST PID
        log_on_failure          = HOST
        cps                     = 25 30
includedir /etc/xinetd.d


  • instances = 60 : Determines the number of servers that can be simultaneously active for a service. So 60 is the maximum number of requests xinetd can handle at once.
  • log_type = SYSLOG authpriv: Determines where the service log output is sent. You can send it to SYSLOG at the specified facility (authpriv will send log to /var/log/secure file).
  • log_on_success = HOST PID: Force xinetd to log if the connection is successful. It will log HOST name and Process ID to /var/log/secure file.
  • log_on_failure = HOST: Force xinetd to log if there is a connection dropped or if the connection is not allowed to /var/log/secure file
  • cps = 25 30: Limits the rate of incoming connections. Takes two arguments. The first argument is the number of connections per second to handle. If the rate of incoming connections is higher than this, the service will be temporarily disabled. The second argument is the number of seconds to wait efore re-enabling the service after it has been disabled. The default for this setting is 50 incoming connections and the interval is 10 seconds. This is good to avoid DOS attack against your service.
  • includedir /etc/xinetd.d: Read other service specific configuration file this directory.

Task: How to create my own service called foo

Here is sample config file for service called foo located at /etc/xinetd.d/foo
# vi /etc/xinetd.d/foo
And append following text:
service login
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/foo
instances = 20


  • socket_type: Sets the network socket type to stream.
  • protocol: Sets the protocol type to TCP
  • wait: You can set the value to yes or no only. It Defines whether the service is single-threaded (if set to yes) or multi-threaded (if set to no).
  • user: User who will run foo server

Task: Stop or restart xinetd

To restart xinetd service type the command:
# /etc/init.d/xinetd restart
To stop xinetd service type the command:
# /etc/init.d/xinetd stop
To stop xinetd service type the command:
# /etc/init.d/xinetd start

Task: Verify that xinetd is running

Type the following command to verify xinetd service is running or NOT:
# /etc/init.d/xinetd statusOutput:

xinetd (pid 6059) is running...

Further readings

  • Read man pages of xinetd.conf and xinetd for more information.