[lxc-devel] Request for update Jenkins script for plamo images

TAMUKI Shoichi tamuki at linet.gr.jp
Sun Aug 31 08:19:42 UTC 2014


Hello Stephane,

From: TAMUKI Shoichi <tamuki at linet.gr.jp>
Subject: Re: [lxc-devel] Request for update Jenkins script for plamo images
Date: Thu, 28 Aug 2014 16:46:45 +0900

> Perhaps, we should do similar workaround for producing another
> distribution (centos, debian, fedora, gentoo, opensuse, and oracle)
> images on the Jenkins server.  I will also investigate them if I have
> enough time.

I investigated the other distribution images to see if the workarounds
are necessary or not.

[centos]

$ tar tvpJf rootfs.tar.xz | grep -v "root/root"
-rw-rw-r-- root/voice        0 2014-08-28 11:35:12 ./var/run/utmp
-rw-rw-r-- root/voice        0 2014-08-28 11:35:12 ./var/log/wtmp
-rw------- root/voice        0 2014-08-28 11:35:12 ./var/log/btmp

* The gid for "voice" on ubuntu is 22.
* The group name for gid=22 on centos is "utmp."
* The group name "utmp" already exists on ubuntu (gid=43.)

Since all user/group names in rootfs exist on ubuntu, the useradd/
groupadd workaround is unnecessary.  However, extracting packages to
rootfs in the template script needs to be fixed.

[debian]

There seems to be no need for the workaround.

[fedora]

$ tar tvpJf rootfs.tar.xz | grep -v "root/root"
drwxrwxr-x root/man          0 2013-08-07 18:10:08 ./var/spool/mail/
-rw-rw-r-- root/voice        0 2014-08-28 10:53:28 ./var/log/wtmp
-rw------- root/voice        0 2014-08-28 10:53:28 ./var/log/btmp
drwxr-sr-x root/190          0 2014-07-24 22:37:15 ./var/log/journal/
drwxr-xr-x root/35           0 2014-08-28 10:53:24 ./usr/libexec/utempter/
-rwx--s--x root/voice    11200 2013-08-03 17:06:03 ./usr/libexec/utempter/utempter
---x--s--x root/999     287864 2014-07-18 15:54:07 ./usr/libexec/openssh/ssh-keysign
-rwsr-x--- root/81      322432 2014-07-03 07:36:31 ./usr/lib64/dbus-1/dbus-daemon-launch-helper
-rwxr-sr-x root/tty      19544 2014-04-25 18:19:17 ./usr/bin/write
---x--s--x root/99      145296 2014-07-18 15:54:07 ./usr/bin/ssh-agent
-rw-rw-r-- root/voice        0 2014-08-28 10:53:28 ./run/utmp
drwxrwxr-x root/54           0 2014-08-28 10:53:27 ./run/lock/lockdev/

* The gid for "man" on ubuntu is 12.
* The group name for gid=12 on fedora is "mail."
* The group name "mail" already exists on ubuntu (gid=8.)

* The gid for "voice" on ubuntu is 22.
* The group name for gid=22 on fedora is "utmp."
* The group name "utmp" already exists on ubuntu (gid=43.)

* The group name for gid=190 on fedora is "systemd-journal."
* The group name for gid=35 on fedora is "utempter."
* The group name for gid=999 on fedora is "ssh_keys."
* The group name for gid=81 on fedora is "dbus."
* The gid for "tty" on ubuntu and fedora is 5 (same gid.)
* The group name for gid=99 on fedora is "nobody."
* The group name for gid=54 on fedora is "lock."

The useradd/groupadd workaround is as follows.  Also, extracting
packages to rootfs in the template script needs to be fixed.

 ==> Executing: "for i in utempter lock dbus nobody systemd-journal ssh_keys ; do groupadd $i ; done" in /

[gentoo]

$ tar tvpJf rootfs.tar.xz | grep -v " 0/0 " | grep -v " 250/250 "
(snip)

* The user/group name for uid/gid=250 on gentoo is "portage."
* The user name for uid=6 on ubuntu is "man."
* The group name for gid=6 on ubuntu is "disk."
* The group name for gid=5 on ubuntu is "tty."
* The group name for gid=15 on ubuntu is "kmem."

It seems that extracting packages to rootfs in the template script
works fine.  However, the --numeric-owner trick in the Jenkins script
needs to be removed because the rootfs.tar.xz is currently for ubuntu
only from the viewpoint of ownership.

[opensuse]

There seems to be no need for the workaround.

[oracle]

$ tar tvpJf rootfs.tar.xz | grep -v "root/root"
drwx------ 500/500           0 2014-08-28 20:43:28 ./home/oracle/
-rw-r--r-- 500/500          18 2013-07-18 23:33:26 ./home/oracle/.bash_logout
-rw-r--r-- 500/500         176 2013-07-18 23:33:26 ./home/oracle/.bash_profile
-rw-r--r-- 500/500         124 2013-07-18 23:33:26 ./home/oracle/.bashrc
-rw-rw---- 500/man           0 2014-08-28 20:43:28 ./var/spool/mail/oracle
-rw-rw-r-- root/voice        0 2014-08-28 20:43:26 ./var/run/utmp
-rw------- root/voice        0 2014-08-28 20:43:26 ./var/log/btmp
-rw-rw-r-- root/voice        0 2014-08-28 20:43:26 ./var/log/wtmp

* The user/group name for uid/gid=500 on oracle is "oracle."

* The gid for "man" on ubuntu is 12.
* The group name for gid=12 on fedora is "mail."
* The group name "mail" already exists on ubuntu (gid=8.)

* The gid for "voice" on ubuntu is 22.
* The group name for gid=22 on fedora is "utmp."
* The group name "utmp" already exists on ubuntu (gid=43.)

Since all user/group names in rootfs exist on ubuntu except "oracle,"
the useradd/groupadd workaround is unnecessary.  However, extracting
packages to rootfs in the template script needs to be fixed.

[plamo]

The useradd/groupadd workaround is as follows.  Also the --numeric-
owner trick in the Jenkins script needs to be removed because the
rootfs.tar.xz is currently for ubuntu only from the viewpoint of
ownership (with only a few defective ownership.)

 ==> Executing: "for i in postfix pop wnn polkituser mysql ; do useradd $i ; done" in /
 ==> Executing: "for i in wheel postdrop telnetd cgred ; do groupadd $i ; done" in /

[ubuntu]

There seems to be no need for the workaround, of course.

Thanks in advance.

Regards,
TAMUKI Shoichi


More information about the lxc-devel mailing list