|
Bugzilla – Full Text Bug Listing |
| Summary: | gdm user not created, even though gdm is installed | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE 11.0 | Reporter: | Marcus Meissner <meissner> |
| Component: | GNOME | Assignee: | Lukas Ocilka <locilka> |
| Status: | RESOLVED FIXED | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Blocker | ||
| Priority: | P5 - None | CC: | captain.magnus, casualprogrammer, coolo, dsk, forgotten_nqeDWc8OMK, jmatejek, lslezak, maxmars, mmarek |
| Version: | Beta 1 | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | Other | ||
| Whiteboard: | |||
| Found By: | Development | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: |
YaST logs
Several /etc/passwd from different phases of installation |
||
|
Description
Marcus Meissner
2008-04-18 09:30:20 UTC
reinstalling gdm makes ti work again I just checked: gnome-i386.tar.lzma has this in etc/passwd: root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/bin/bash daemon:x:2:2:Daemon:/sbin:/bin/bash lp:x:4:7:Printing daemon:/var/spool/lpd:/bin/bash mail:x:8:12:Mailer daemon:/var/spool/clientmqueue:/bin/false news:x:9:13:News system:/etc/news:/bin/bash uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash games:x:12:100:Games account:/var/games:/bin/bash man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false ftp:x:40:49:FTP account:/srv/ftp:/bin/bash nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash ntp:x:74:101:NTP daemon:/var/lib/ntp:/bin/false messagebus:x:100:102:User for D-Bus:/var/run/dbus:/bin/false festival:x:101:103:Festival daemon:/usr/share/festival/:/bin/false uuidd:x:102:104:User for uuidd:/var/run/uuidd:/bin/false postfix:x:51:51:Postfix Daemon:/var/spool/postfix:/bin/false avahi:x:103:105:User for Avahi:/var/run/avahi-daemon:/bin/false polkituser:x:104:106:PolicyKit:/var/run/PolicyKit:/bin/false haldaemon:x:105:107:User for haldaemon:/var/run/hal:/bin/false pulse:x:106:108:PulseAudio daemon:/var/lib/pulseaudio:/sbin/nologin beagleindex:x:107:111:User for Beagle indexing:/var/cache/beagle:/bin/bash gdm:x:108:112:Gnome Display Manager daemon:/var/lib/gdm:/bin/false sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false suse-ncc:x:109:113:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash I think yast is doing something wrong in deploying. I'll check it ... but ... Created attachment 208938 [details]
YaST logs
Created attachment 208940 [details]
Several /etc/passwd from different phases of installation
passwd.old (some old one from the images) passwd.after-image-deployment (images just deployed) passwd.after-package-installation (all packages installed) passwd (at the end of installation) bonus: passwd.imported-from-previous-installation (this file has been imported from the previous installation) It seems that the passwd and passwd.imported-from-previous-installation are the same, something must have rewritten the correct passwd file with the one from the previous install. I'll try to find who and how... SystemFilesCopy.ycp:138 Copying from '/dev/sda3' files ["/etc/group", "/etc/login.defs", "/etc/passwd", "/etc/shadow"] to '/tmp/tmp_dir_for_SystemFilesCopy_files/_inst_archive_2.tgz'. Files will appear in '/var/lib/YaST2/imported/userdata' False-positive matches: clients/inst_user_first.ycp --------------------------- SystemFilesCopy.ycp:226 Extracted: $["exit":0, "stderr":"", "stdout":"etc/group\netc/login.defs\netc/passwd\netc/shadow\n"] into /tmp/YaST2-03739-eyTuBT/users/var/lib/YaST2/imported/userdata - passwd extracted to /tmp/YaST2-03739-eyTuBT/... clients/copy_systemfiles_finish.ycp ----------------------------------- SystemFilesCopy.ycp:226 Extracted: $["exit":0, "stderr":"", "stdout":"etc/group\netc/login.defs\netc/passwd\netc/shadow\n"] into /mnt/var/lib/YaST2/imported/userdata - passwd extracted to /mnt/var/lib/YaST2/... Found that...
inst_kickoff.ycp (yast2-packager)
---------------------------------
if (!Mode::update ()) {
if (! Installation::dirinstall_installing_into_dir) {
SCR::Execute(.target.bash, "/bin/cp /etc/passwd " +
"'" + String::Quote (Installation::destdir) + "/etc" + "'");
SCR::Execute(.target.bash, "/bin/cp /etc/group " +
"'" + String::Quote (Installation::destdir) + "/etc" + "'");
}
}
So, no wonder that the /etc/passwd file gets rewritten.
- Do not overwrite passwd and shadow files if they already exist on a system (e.g., from images) (bnc #381227). - yast2-packager-2.16.36 (patch has been tested) Am I correct in assuming that only packages installed via images are affected? I.e. packages that aren't in any images are fine? This is the script from Henne, which should fix the issue: for i in aaa_base avahi beagle cups dbus-1 festival fuse \ gdm hal ntp openssh PolicyKit postfix pulseaudio pwdutils \ samba scrollkeeper uuid-runtime; \ do rpm -q $i && echo zypper in -f $i; done I have yast2-registration in my list (creates user suse-ncc). I grepped ARCHIVES.gz from the DVDs to check if there are packages that depend on the above packages for file ownership, but haven't found any. So it should be only these few packages. calls zypper once:
#!/bin/bash
packs=(aaa_base avahi beagle cups dbus-1 festival fuse gdm hal ntp openssh PolicyKit postfix pulseaudio pwdutils samba scrollkeeper uuid-runtime yast2-registration)
installed=($(rpmqpack))
reinst=($(join <(printf '%s\n' "${packs[@]}" | sort -u) <(printf '%s\n' "${installed[@]}" | sort -u)))
set -x
zypper in -f "${reinst[@]}"
Using only -f doesn't work here. I get "Nothing to do", adding a -n makes it work;
packs=(aaa_base avahi beagle cups dbus-1 festival fuse gdm hal ntp openssh
PolicyKit postfix pulseaudio pwdutils samba scrollkeeper uuid-runtime
yast2-registration)
installed=($(rpmqpack))
reinst=($(join <(printf '%s\n' "${packs[@]}" | sort -u) <(printf '%s\n'
"${installed[@]}" | sort -u)))
set -x
zypper in -f -n "${reinst[@]}"
(In reply to comment #11 from Michal Marek) > Am I correct in assuming that only packages installed via images are affected? > I.e. packages that aren't in any images are fine? Kind of. Installation takes the /etc/passwd from running inst-sys and copies it to the just installed system. It depends on the inst-sys what it contains. *** Bug 382797 has been marked as a duplicate of this bug. *** *** Bug 382741 has been marked as a duplicate of this bug. *** *** Bug 384163 has been marked as a duplicate of this bug. *** *** Bug 384338 has been marked as a duplicate of this bug. *** *** Bug 384094 has been marked as a duplicate of this bug. *** |