[Mageia-dev] ANNOUNCE: The /usr move cometh! <---- Instructions

Colin Guthrie mageia at colin.guthr.ie
Mon Jul 23 10:13:34 CEST 2012


'Twas brillig, and Olivier Thauvin at 23/07/12 07:37 did gyre and gimble:
> * Colin Guthrie (mageia at colin.guthr.ie) wrote:
>> 'Twas brillig, and Shlomi Fish at 22/07/12 17:51 did gyre and gimble:
>>> Hi all,
>>>
>>> On Sun, 22 Jul 2012 19:46:58 +0300
>>> Shlomi Fish <shlomif at shlomifish.org> wrote:
>>>
>>>> Hi Colin,
>>>>
>>>> [QUOTE]
>>>> installing findutils-4.5.10-2.mga3.x86_64.rpm lib64plymouth2-0.8.6.1-2.mga3.x86_64.rpm filesystem-2.1.9-18.mga3.x86_64.rpm lib64ncursesw-devel-5.9-7.mga3.x86_64.rpm plymouth-plugin-script-0.8.6.1-2.mga3.x86_64.rpm lib64ncurses5-5.9-7.mga3.x86_64.rpm ncurses-5.9-7.mga3.x86_64.rpm plymouth-plugin-label-0.8.6.1-2.mga3.x86_64.rpm lib64dbjava5.1-5.1.29-4.mga3.x86_64.rpm lib64ncursesw5-5.9-7.mga3.x86_64.rpm lib64ncurses-devel-5.9-7.mga3.x86_64.rpm from /var/cache/urpmi/rpms
>>>> Preparing...                     #############################################
>>>>      1/69: filesystem            #############################################
>>>> error: unpacking of archive failed on file /var/lock: cpio: rename failed - Is a directory
>>>> error: filesystem-2.1.9-18.mga3.x86_64: install failed
>>>>      2/69: ncurses               #############################################
>>>>      3/69: lib64ncurses5         #############################################
>>>>      4/69: lib64plymouth2        #############################################
>>>>      5/69: plymouth-plugin-label #############################################
>>>>      6/69: lib64ncursesw5        #############################################
>>>>      7/69: lib64ncursesw-devel   #############################################
>>>>      8/69: plymouth-plugin-script
>>>>                                  #############################################
>>>>      9/69: lib64ncurses-devel    #############################################
>>>>     10/69: findutils             #############################################
>>>>     11/69: lib64dbjava5.1        #############################################
>>>> [/QUOTE]
>>>>
>>>> And the rest of the packages refuse to install.
>>>
>>> OK, I figured out. After I ran as root:
>>>
>>> # cd /var
>>> # mv lock lock.ol
>>> # mv run run.old
>>>
>>> It was fixed and I was able to install the "filesystem" package and the rest
>>> of the packages. However, something like that should not happen.
>>
>>
>> Well, this should have been done for you. Did you already have
>> run.runmove~ and lock.lockmove~ folders in /var?
>>
>> If so then I suspect something is killing the symlinks.
> 
> Is it normal that in the same time filesystem package provide
> /usr/{lib,bin} etc as directory whereas the pre script transform it as
> symlink (according
> http://sophie.zarb.org/rpms/696f0450c6b9baa8dcf088602f19c810/files).
> 
> For me they must be symlinks in the filesystem rpm.

Erm, /usr/{lib,bin} etc. are directories in the package and in the
filesystem you link above so I'm not sure what you mean about "transform
[them to] symlinks" in the statement above. There is no pre script that
does anything to these folders.

However, the /{lib,bin} etc folders *are* symlinks in the package. There
is a pre-transaction lua script that creates the /usr/blah folders and
the corresponding symlinks early because we cannot guarentee that
filesystem will be the first package actually physically installed in
the transaction and thus /bin or /lib etc. may be implicitly created as
directories by other package installation in the same transaction. So
the lua script just pre-empts what the package will do but it ensures it
happens at the start of the transaction.

I'm not sure if that answers your question or not because the comments
in the spec file are quite clear about the purpose so they should have
cleared up any confusion you may have had.

So if I've not grasped what you are asking properly, please clarify and
I'll try again :)

Col



-- 

Colin Guthrie
colin(at)mageia.org
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/


More information about the Mageia-dev mailing list