Bug 14711 - Скрипт mki-copy-our2out завершается с ошибкой после mki-copy-tree --> mki-pack-data
Summary: Скрипт mki-copy-our2out завершается с ошибкой после mki-copy-tree --> mki-pac...
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: mkimage (show other bugs)
Version: unstable
Hardware: all Linux
: P2 major
Assignee: Alexey Gladkov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-29 17:34 MSK by Michael A. Kangin
Modified: 2008-03-04 20:41 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael A. Kangin 2008-02-29 17:34:38 MSK
Скрипт mki-copy-tree копирует внутрь чрута какое-то количество файлов/папок,
сохраняя их значения права/владельца (точнее, жёстки ссылки делает). 
Далее, скрипт mki-pack-data копирует их во чруте из /.work в /.our (точнее,
опять жёсткие ссылки делает).
Ну а скрипт mki-copy-our2out пытается в конце своей работы очистить /.our и
падает с ошибкой, потому как директория .our (да и .work) со sticky-битом, а
файлы из COPY_TREE там с абсолютно чуждым для чрута владельцем.

$ ls -dl /home/mak/mkimage/mkimage-profiles-desktop/profiles/.work/chroot/.our/
drwxrwx--T 6 mak mak_a 4096 Фев 29 17:30
/home/mak/mkimage/mkimage-profiles-desktop/profiles/.work/chroot/.our/

$ ls -l /home/mak/mkimage/mkimage-profiles-desktop/profiles/.work/chroot/.our/
итого 39900
drwxr-xr-x 154 mak_a mak_a     8192 Фев 29 14:28 docs
-rw-r--r--   4 mak   mak        221 Фев 20 20:42 index.html
-rw-r--r--   3 mak_a mak_a     5393 Фев 29 14:28 license.all.html
-rw-r--r--   3 mak_a mak_a     8672 Фев 29 14:28 license.ru.html
drwxr-xr-x   2 mak_a mak_a     4096 Фев 20 22:14 Metadata
-rw-r--r--   4 mak_a mak_a 40554496 Фев 29 14:21 myresc
-rw-r--r--   4 mak   mak     209489 Фев 20 20:42 RPM-GPG-KEY
drwxr-xr-x   3 mak_a mak_a     4096 Фев 29 14:28 syslinux

(файлы RPM-GPG-KEY и index.html получены как раз из COPY_TREE)

mki-run: has started executing.
mki-run:  exec env -i
PATH=/usr/share/mkimage/tools:/usr/share/mkimage/tools:/usr/share/mkimage/tools:/usr/share/mkimage/tools:/usr/share/mkimage/tools:/home/mak/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin:/usr/games:/usr/X11R6/bin
hsh-run --rooter -v   /home/mak/mkimage/mkimage-profiles-desktop/profiles/.work
-- /.host/find /.our -mindepth 1 -maxdepth 1 -execdir rm -rf -- {} +
hsh-run: changed working directory to
`/home/mak/mkimage/mkimage-profiles-desktop/profiles/.work'
hsh-run: Locked working directory
`/home/mak/mkimage/mkimage-profiles-desktop/profiles/.work'.
rm: cannot remove `./index.html': Operation not permitted
rm: cannot remove `./RPM-GPG-KEY': Operation not permitted
removed `/home/mak/mkimage/mkimage-profiles-desktop/profiles/.work/lockdir/lockfile'
make[1]: *** [pack-image] Ошибка 1
make[1]: Leaving directory `/home/mak/mkimage/mkimage-profiles-desktop/profiles'
make: *** [myresc] Ошибка 2
Comment 1 Alexey Gladkov 2008-03-01 22:02:59 MSK
Действительно.
Понятно где и когда была сделана эта ошибка.
Comment 2 Alexey Gladkov 2008-03-01 22:56:12 MSK
В mki-copy-tree не допустимо делать хардлинки из /.in в /.image.
Исправлено в git.