This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
RE: [RFC] Globally creating a user and a group "root"
- From: Jörg Schaible <Joerg dot Schaible at Elsag-Solutions dot com>
- To: <cygwin-apps at cygwin dot com>
- Date: Thu, 27 Nov 2003 16:23:47 +0100
- Subject: RE: [RFC] Globally creating a user and a group "root"
Morrison, John wrote on Thursday, November 27, 2003 4:08 PM:
> Corinna Vinschen wrote:
>> On Thu, Nov 27, 2003 at 01:24:15PM -0000, Morrison, John wrote:
>>> OK, took some lunch time ;)
>>>
>>> Hows this for passwd-grp.sh
>>>
>>> -------------------------------------
>>>
>>> #!/bin/sh
>>>
>>> if [ ! -e /etc/passwd -a ! -L /etc/passwd ] ; then
>>> /bin/mkpasswd -l -c > /etc/passwd
>>> fi
>>>
>>> if [ ! -e /etc/group -a ! -L /etc/group ] ; then
>>> /bin/mkgroup -l -c > /etc/group
>>> fi
>>>
>>> cp -f /etc/passwd ~/passwd.mkpasswd && \
>>> ( [ -w /etc/passwd ] || chmod --silent a+w /etc/passwd ; ) && \ sed
>>> -e '/:S-1-1-0:/d' ~/passwd.passwd > /etc/passwd && \ chmod --silent
>>> --reference=/etc/group /etc/passwd rm -f ~/passwd.mkpasswd
>>>
>>> cp -f /etc/group ~/group.mkgroup && \
>>> ( [ -w /etc/group ] || chmod --silent a+w /etc/group ; ) && \ echo
>>> "root:S-1-5-32-544:0:" > /etc/group && \ sed -e '/:S-1-1-0:/d'
>>> ~/group.mkgroup >> /etc/group && \ chmod --silent
>>> --reference=/etc/passwd /etc/group rm -f ~/group.mkgroup
>>>
>>> -------------------------------------
>>>
>>> comments? (I tried to make it play nice with file
>>> permissions)
>>
>> Cool! Just the `echo "root:..."' should only be called if the group
>> file doesn't already contain that entry. As I said, the upcoming
>> mkgroup will create this entry already (with -l). You should check
>> its existence first.
>
> Would prefer...
>
> echo "root:S-1-5-32-544:0:" > /etc/group && \
> sed -e '/:S-1-1-0:/d' -e '/root:S-1-5-32-544:0:/d'
> ~/group.mkgroup >> /etc/group && \
>
> 'cause then I don't need to check anything :)
>
> If you'd prefer me to check... help! :)
grep -v ":S-1-1-0:" && ...
:)
Jörg