Sponsored Content
Top Forums Shell Programming and Scripting clean passwd file based on db table (master) Post 302532824 by Banks187 on Wednesday 22nd of June 2011 07:16:42 AM
Old 06-22-2011
clean passwd file based on db table (master)

The purpose of this script is to scan the /etc/passwd file one line at a time comparing the usernames to the usernames found in a database table. I will later locked every account which is not in the database table.

I have export the userlist from the database in a file (/tmp/userlist). It should be faster than a sql check for every user.

The script works ok but my problem is that the script check also all system accounts!
how can disable it that the script didnīt check the system accounts like root,www-data and so on…

Code:
  #!/bin/bash
  #
  PASSWORD_FILE=/etc/passwd
  PASS_LOG=/tmp/cleanup.log
  #
  rm -f $PASS_LOG && touch $PASS_LOG
  #
  #
  #
  Isql –uHIDE –pwhatever –sprod –w 10 <<EOF >> /tmp/userlist
  Set nocount on
  Select name from db_workers where work is null
  Go
  Eof
  #
  for NAME in $(cut -d: -f1 "$PASSWORD_FILE" )
  do
   passwd -S $NAME | grep "PS" >/dev/null
   STATUS=$?
  if [ $STATUS -eq 0  ] ; then
  grep -i "$NAME" /tmp/userlist >/dev/null
  STATUS2=$?
  echo $STATUS2
  if [ $STATUS2 -eq 1 ] ; then
  echo $NAME >> $PASS_LOG
  fi
  fi
  done

 

9 More Discussions You Might Find Interesting

1. BSD

Migrating the master.passwd

I am migrating the passwd file to an new server. What commands do I need to run to make sure the file will work on the new server. (0 Replies)
Discussion started by: rbizzell
0 Replies

2. UNIX for Advanced & Expert Users

Clean File

BeginDate 07/01/06 End: 07/31/06 Cust: A02991 - Burnham 0002000 5,829,773 145.3 0009701 4,043,850 267.3 2005000 286,785.13 100.0 BeginDate 07/01/06 End: 07/31/06 Cust: A01239 - East Track PSE Index A 0009902 317,356.82 890.2 0020021 ... (5 Replies)
Discussion started by: kris01752
5 Replies

3. Shell Programming and Scripting

how to schedule no of jobs based on the value from the oracle table

Hi all, Please help me with the issue im facing. my client has a recquirement that unix script has to schedule the no.of jobs based on the value from the oracle table.for example if the table has a value of 20 the unix script has to schedule 20 jobs.im able to write the script to get the value... (1 Reply)
Discussion started by: srikanths2s
1 Replies

4. UNIX for Advanced & Expert Users

Converting freebsd (5.2.1) master.passwd to Debian shadow

I'm trying to make this work, and it half works. Accounts with password hashes matching the old crypt(3) algorithm work just fine: JUpfW/w6jo6aw But accounts with longer password hashes preceded by $1$, such as the following, do not work: $1$iIcbppdP$HDyjJeVMGgJ.ovLsnjtTR.... (0 Replies)
Discussion started by: davidstvz
0 Replies

5. Emergency UNIX and Linux Support

Global update on a file based on a table

Hi, I 'd like to update the below highlighted values in a sample file based on the following table: 8283879A25918000000000005400000000000065629TTF3 8683884F40273000000000003900000000000047399TTF3 8883884FG0063000000000002600000000000031599TTF3... (7 Replies)
Discussion started by: er_ashu
7 Replies

6. Web Development

MySQL Master-Slave Configuration: Don't Replicate a Row of a Table?

Anyone have a clue about this? I have checked the MySQL documentation and it does not seem possible to exclude a row of a table from replication between Master and Slave. It seems that replication in MySQL can only be managed at the table level, not at the row level. Does anyone know a work... (5 Replies)
Discussion started by: Neo
5 Replies

7. Shell Programming and Scripting

KSH - How to call different scripts from master scripts based on a column in an Oracle table

Dear Members, I have a table REQUESTS in Oracle which has an attribute REQUEST_ACTION. The entries in REQUEST_ACTION are like, ME, MD, ND, NE etc. I would like to create a script which will will call other scripts based on the request action. Can we directly read from the REQUEST_ACTION... (2 Replies)
Discussion started by: Yoodit
2 Replies

8. Shell Programming and Scripting

Create table based on matched patterns

hi, i need help to create a table from an input file like this:- DB|QZX3 140 165 RT_2 VgGIGvGVR DB|QZX3 155 182 UT_1 rlgslqqLaIvlGiFT DB|QZX3 345 362 RT_1 GRKpllligS DB|ZXK6 174 199 RT_2 IstvtvptYlgEiatvkaR DB|ZXK6 189 216 UT_1 algtiyqLfLviGiLF DB|AZ264 15 17... (7 Replies)
Discussion started by: redse171
7 Replies

9. UNIX Desktop Questions & Answers

How can I replicate master master and master master MySQL databse replication and HA?

I have an application desigend in PHP and MySQl running on apache web server that I is running on a Amazon EC2 server Centos. I want to implement the master-master and master slave replication and high availability disaster recovery on this application database. For this I have created two... (0 Replies)
Discussion started by: Palak Sharma
0 Replies
CHECKSECURITY(8)					      System Manager's Manual						  CHECKSECURITY(8)

NAME
checksecurity - Run a collection of simple system checks SYNOPSIS
checksecurity DESCRIPTION
The checksecurity command runs a small collection of simple system checks which are designed to catch a few common security issues. check- security is run by cron in a daily basis. CONFIGURATION
The checksecurity.conf file defines several configuration variables: MAILTO, CHECK_DISKFREE, CHECK_PASSWD and CHECK_SETUID LOGDIR. Each is described below. The checksecurity program works with a collection of plugins which are located in /usr/share/checksecurity and are configured individually by their own configuration file. CHECK_PASSWD If this is set to TRUE then the check-passwd script will be invoked. This script is designed to report upon system accounts which have no passwords. CHECK_DISKFREE If this is set to TRUE then the check-diskfree script will be invoked and will allow an alert to be sent if there is any mounted partition is running short on disk space. CHECK_SETUID If this is set to TRUE then the check-setuid script will be invoked, this will compare the setuid binaries upon the system to those that existed previously and show the differences. FILES
/etc/checksecurity.conf checksecurity configuration file SEE-ALSO See also check-diskfree(8), check-setuid(8), and check-passwd(8) Debian Linux 2 February 1997 CHECKSECURITY(8)
All times are GMT -4. The time now is 05:11 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy