Understanding The Linux /etc/passwd File

The file’s name originates from one of its initial functions as it contained the data used to verify passwords of user accounts. However, on modern Unix systems the security-sensitive password information is instead often stored in a different file using shadow passwords, or other database implementations.

To view an example of a user in the passwd file, run the following command specifying what user you’d like to view. In my example, I’ve grepped the mysql user.

# cat /etc/passwd | grep mysql

To see all users, run it without the grep as I’ve done here:

# cat /etc/passwd


The fields, in order from left to right, are:

  1. Username: It is used when user logs in. It should be between 1 and 32 characters in length.
  2. Password: An x character indicates that encrypted password is stored in /etc/shadow file.
  3. User ID (UID): Each user must be assigned a user ID (UID). UID 0 (zero) is reserved for root and UIDs 1-99 are reserved for other predefined accounts. Further UID 100-999 are reserved by system for administrative and system accounts/groups.
  4. Group ID (GID): The primary group ID (stored in /etc/group file)
  5. User ID Info: The comment field. It allow you to add extra information about the users such as user’s full name, phone number etc. This field use by finger command.
  6. Home directory: The absolute path to the directory the user will be in when they log in. If this directory does not exists then users directory becomes /
  7. Command/shell: The absolute path of a command or shell (/bin/bash). Typically, this is a shell.

Batch Files – Create New Folder Using Current Date and Time in Folder Name

Share on LinkedIn

This would be great for backup jobs or copying files where you want to keep track of when it was done.

In my simple batch file, I’m copying contents from a mapped network drive to my local machine.

Originally, I was using the following command:

xcopy S: C:\Users\james\Documents\Backup_WIN_Server\SysAdmin /c /v /f /i /s /e /h /y

If using this for a simple form of backup, the data will be overwritten each time I run the batch file.

In order to create a new directory each time with a time/date stamp, all I need to do isĀ use a substring and the built-in %DATE% and %TIME% variables. In this example, I’m just adding the substring before my xcopy command.

@echo OFF
:: Use date /t and time /t from the command line to get the format of your date and
:: time; change the substring below as needed.
:: This will create a timestamp like yyyy-mm-dd-hh-mm-ss.
set TIMESTAMP=%DATE:~10,4%-%DATE:~4,2%-%DATE:~7,2%-%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%


Finally, I just need to add that timestamp to my destination folder as such:

xcopy S: C:\Users\james\Documents\Backup_WIN_Server\"%1\%TIMESTAMP%-SysAdmin" /c /v /f /i /s /e /h /y

How To View Log File In Linux

Log files play a vital role in troubleshooting. Knowing where they’re stored and how to read them is pertinent information. I came from a Windows background. Microsoft made it pretty easy. Linux uses a different set of rules.

Login as root user using SSH

Navigate to /var/logs directory
# cd /var/logs

To list files use the following command
# ls

To view a common log file called /var/log/messages use any one of the following command:

# less /var/log/messages
# more -f /var/log/messages
# cat /var/log/messages
# tail -f /var/log/messages
# grep -i error /var/log/messages

You don’t have to use all of those commands. I do recommend trying them all, however, just to see the different types of output available.