Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm using CentOS 5.5.

I installed the mysql-server RPM from CentOS.org. I believe this RPM was supposed to create a user called 'mysql'. However, this user doesn't exist.

How can I view the contents of an RPM to see if it attempts to create a user or group?

share|improve this question

1 Answer 1

up vote 6 down vote accepted

To view scripts in a RPM run:

rpm -q --scripts $INSTALLEDPACKAGE

To answer your question: yes, mysql-server creates the mysql user.

[user@server CentOS]# rpm -qp --scripts mysql-server-5.0.77-4.el5_4.2.i386.rpm
warning: mysql-server-5.0.77-4.el5_4.2.i386.rpm: V3 DSA signature: NOKEY, key ID e8562897
preinstall scriptlet (using /bin/sh):
/usr/sbin/useradd -M -o -r -d /var/lib/mysql -s /bin/bash \
        -c "MySQL Server" -u 27 mysql > /dev/null 2>&1 || :
postinstall scriptlet (using /bin/sh):
if [ $1 = 1 ]; then
    /sbin/chkconfig --add mysqld
fi
/bin/chmod 0755 /var/lib/mysql
/bin/touch /var/log/mysqld.log
preuninstall scriptlet (using /bin/sh):
if [ $1 = 0 ]; then
    /sbin/chkconfig --del mysqld
fi
postuninstall scriptlet (using /bin/sh):
if [ $1 -ge 1 ]; then
    /sbin/service mysqld condrestart >/dev/null 2>&1 || :
fi
share|improve this answer
    
Thanks. Bonus question: I don't see a line which modifies /etc/group . How can I tell what package added 'mysql' to /etc/group ? –  Stefan Lasiewski Aug 4 '10 at 17:39
1  
I'll answer my bonus question. If no group is specified, then useradd will create a group by default. From man useradd: "The version provided with Red Hat Linux will create a group for each user added to the system by default" –  Stefan Lasiewski Aug 4 '10 at 17:52

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.