Date: Sun, 13 Sep 2009 21:38:00 +0200 From: Stefan Miklosovic <miklosovic.freebsd@gmail.com> To: freebsd-ports@freebsd.org, freebsd-questions@freebsd.org Subject: add own program to ports + help with port / program Message-ID: <f99a79ec0909131238n671f2d92t274fc45189a92768@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
--0016364c778fda77ab04737aafef Content-Type: text/plain; charset=ISO-8859-1 hi list, I am about writing shell script which adds system account by tens (even hundreds). Info about added accounts is stored in external file which has syntax like this account-name:comment:email-addres Briefly, account-name is name of account comment field is comment which appears in /etc/passwd comment field email-address is address where info about just created account is sent (optional) eg. joe:Joe Brown:joe@something.com <Brown%3Ajoe@something.com> mark:Mark Red:mark@nowhere.org <Red%3Amark@nowhere.org> tim:Tim Yellow:timmy@example.com <Yellow%3Atimmy@example.com> Script is checking file syntax and if syntax is bad, it exits. If it is ok, accounts is being created. You can modify a lot of infos, these are stored in config file in /usr/local/etc/pwgroup.conf, eg # output file with passwords of newly # created user accounts PASSWD_FILE="passwords" # uid of first created user UID="2000" # root home dir of users HOME_DIR="/home" # comment for users, appears in /etc/passwd # in comment field COMMENT="" # primary group for users, if empty, # primary group will be a user name GROUP="users" # comma separated list of groups # users should be a member of GROUPLIST="" # shell for users SHELL="/bin/csh" # use quotas QUOTAS="NO" # hard quote limit QUOTA_HARD="1536" # soft quote limit QUOTA_SOFT="1024" # disk device upon which users are created DISK_DEV="/home" # expiration date of accounts ACCOUNT_EXP="30-Jun-2010" # length of password PASSWORD_LENGTH="8" ========== as you can see, you can set quotas for users, account expiration of accounts, password length, shell and so on. Variables in config file are default, if you do not overwrite some at command line. some examples: # pwgrp -a -f users -c "unix begginer" -s /usr/local/bin/bash -q -qh 2048 -l 10 (adding users) # pwgrp -r -f remove_users (list of users for removing) Password are generated by apg program Quotas are set by setquotas. The main reason I write this mail is to make some feedback about program to me and even test it and comment it. I want to write this program but I do not know if I do it correct and I need some feedback about programming style or just some info what do you think about it. At this time, there is absence of manual, but if you track code, I think you understand it. Any ideas are highly appreciated. --0016364c778fda77ab04737aafef--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f99a79ec0909131238n671f2d92t274fc45189a92768>