Design & implement a system for creating & removing user accounts, using a flat-file database to maintain information. THis will be used on a Linux system, so that user's acounts are in the /home directory, the password files are /etc/passwd and /etc/shadow, and the data files will go in /var/adm/acctmgr. There should be two files: a transaction file and an account database. The transaction file consists of single-line records, indicating that an account should be created or deleted. A create record should have the following information: the letter 'c' indicating a create record, the user's full name, the user's social security number, the expiration date of the account (in MM/DD/YYYY form ). A delete record should have: the letter 'd' indicating a delete record, the user's login name. A create record should have all data necessary for an account: an entry in the password files, a home directory, and an entry in the account database. A delete record should create a gzipped tar file of the user's home directory, the tar file should be placed in the /home/ftp directory for future downloading, the user's home directory should be deleted, the entry in the password files should be removed, and the entry in the account database should be changed to reflect the deletion. Users that have been deleted should have their tar file deleted and their record removed from the account database after 30 days. The account database should contain the following information: users full name, users social security number, expiration date, account status (active or deleted), users UID. The system must generate a unique login name and password, both of which should be based on the user's name and SSN. The password should be difficult to guess, but easy to reset to its original value.
## Deliverables
Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. Complete copyrights to all work purchased.
## Deadline information
I need this ASAP!!!