apt-clone makes changes to non-cloned environment

Bug #308640 reported by Tim Spriggs
2
Affects Status Importance Assigned to Milestone
Nexenta Operating System
In Progress
Undecided
Erast

Bug Description

While attempting an upgrade from elatte-unstable (fully updated) to hardy-unstable apt/dpkg are upgraded in the current environment and not the cloned env. apt/dpkg break from bad dependencies and the live root env is badly broken. apt-clone should not touch apt/dpkg in the live installation, only the clone environment.

Revision history for this message
Erast (erast) wrote :

By default, apt-clone will only try to switch to "safe" upgrade mode if some of the core/important packages detected. In all other cases it will not be different from apt-get dist-upgrade + some manual tweaking. To force apt-clone always use ZFS clone for "safe" operation use provided "-s" flag.

Revision history for this message
Tim Spriggs (tim-tajinc) wrote : Re: [Bug 308640] Re: apt-clone makes changes to non-cloned environment

This is a core package upgrade... I ran:

# apt-clone dist-upgrade

and it internally ran "apt-get install apt dpkg" outside of the clone
env which broke the running root env.

Erast wrote:
> By default, apt-clone will only try to switch to "safe" upgrade mode if
> some of the core/important packages detected. In all other cases it will
> not be different from apt-get dist-upgrade + some manual tweaking. To
> force apt-clone always use ZFS clone for "safe" operation use provided
> "-s" flag.
>
>

Revision history for this message
Erast (erast) wrote :

Indeed... apt/dpkg was an exception, but point taken. Confirmed.

Revision history for this message
Erast (erast) wrote :

uploaded new apt with fixed apt-clone

Revision history for this message
Tim Spriggs (tim-tajinc) wrote :

This still seems to affect elatte-* I just brought up a VM in order to test the NCP1 -> NCP2 installation process and apt-clone attempted to upgrade dpkg and friends before a clone was made. Since the NCP2 dpkg had the libintl.so.8 issue the VM was hosed.

root@elatte2hardy:~# apt-clone -v dist-upgrade
...
apt-get -V -f -y install dpkg apt
...
Preparing to replace dpkg 1.13.22nexenta10 (using .../dpkg_1.14.16.6nexenta6-build1_solaris-i386.deb) ...
Unpacking replacement dpkg ...
ld.so.1: dpkg: fatal: libintl.so.8: open failed: No such file or directory
E: Sub-process /usr/bin/dpkg exited unexpectedly
Could not download all needed packages. Check failed.
root@elatte2hardy:~# df -h .
Filesystem size used avail capacity Mounted on
syspool/rootfs-nmu-000
                       6.8G 872M 6.0G 13% /
root@elatte2hardy:~# zfs list
NAME USED AVAIL REFER MOUNTPOINT
syspool 894M 5.96G 23K legacy
syspool/rootfs-nmu-000 894M 5.96G 872M legacy
syspool/rootfs-nmu-000@initial 21.5M - 631M -

You mentioned that this was updated but it still seems to affect elatte.

Revision history for this message
Erast (erast) wrote :

The proper fix would be to fix apt package and upload it to elatte-* repos and add proper preinst check.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.