ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Anton V. Denisov" <fire@kgpu.kamchatka.ru>
To: <devel@altlinux.ru>
Subject: [devel] [URGENT] IQ: unowned dirs in /usr/lib
Date: Fri, 6 Jun 2003 16:14:42 +1200
Message-ID: <000a01c32be2$278ef770$400aa8c0@434ntws> (raw)

Приветствую всех.

Решил тут почистить систему, поскольку сейчас это Мастер 2.2, который в
своё время был Спринг 2001. Среди прочих мер выполнил от суперпользователя
команду find /usr/lib -type d -exec rpmquery -f {} 2>&1 \; |grep owned
и результаты меня несколько ошеломили. Куча каталогов, у которых нет
владельцев, но есть содержимое, владельцами которого являются некоторые
пакеты. Например:

warning: file /usr/lib/ruby is not owned by any package
warning: file /usr/lib/ruby/site_ruby is not owned by any package
warning: file /usr/lib/ruby/1.7 is not owned by any package
warning: file /usr/lib/ruby/1.7/i586-linux-gnu is not owned by any package
warning: file /usr/lib/ruby/vendor_ruby is not owned by any package

warning: file /usr/lib/perl5/vendor_perl/i386-linux/auto/Term is not owned
by any package
warning: file /usr/lib/perl5/vendor_perl/i386-linux/Term is not owned by
any package
warning: file /usr/lib/perl5/vendor_perl/SGMLS is not owned by any package

warning: file /usr/lib/consolehelper is not owned by any package

warning: file /usr/lib/imlib2 is not owned by any package
warning: file /usr/lib/imlib2/loaders is not owned by any package
warning: file /usr/lib/imlib2/loaders/filter is not owned by any package
warning: file /usr/lib/imlib2/loaders/image is not owned by any package

warning: file /usr/lib/kernel is not owned by any package
warning: file /usr/lib/ghostscript/7.05 is not owned by any package
warning: file /usr/lib/python2.2/site-packages/pyglade is not owned by any
package
warning: file /usr/lib/python2.2/site-packages/gnome is not owned by any
package

И это лишь часть списка.

Собственно вопрос: можно ли как-то на уровне rpm или дополнительной
проверки в утилите sisyphus избежать "ничейных" файлов и каталогов? Если
делать это в rpm, то, наверное, возникнут проблемы с междупакетными
зависимостями. Например, пакет libapt владеет каталогом /var/cache/apt, а
пакет apt-utils каталогом /var/cache/apt/genpkglist, однако никогда не
возникнет ситуации, что каталог /var/cache/apt останется без владельца,
поскольку нельзя удалить libapt, не удаляя apt-utils - здесь и проявляются
междупакетные зависимости. А если бы apt-utils и libapt собирались из
разных SRPM, то нельзя бы было отловить "ничейность" /var/cache/apt на
стадии сборки apt-utils. Наверное, APT и что-то типа BTE могут помочь -
проверяем, кто предоставляет каталог в дистрибутиве и смотрим, есть ли у
пакета, который что-то хранит в этом каталоге, зависимость на этот пакет.
Хотя provides/whatprovides в APT ещё не реализованы :-( Везде засада.

Кстати, в голову пришла идея о новом checker для osec, который бы
рапортовал обо всех объектах, которых нет в базе RPM. Но много минусов у
этого решения.

"Ничейные" объекты есть грубое нарушение ALT Secure Packaging Policy,
поэтому надо как-то решить эту проблему. Особо остро эта проблема стоит при
частых апдейтах пакетов - в системе остаётся много таких пустых "ничейных"
каталогов и файлов. Особая "помойка" наблюдается в
/usr/{X11R6,include,lib,share}. В /var тоже насчиталось 64 "ничейных"
каталога, даже без тех, что в postfix'овском chroot'е. Даже
/usr/share/locale и его подкаталоги никому не принадлежат!

P.S. Если провести эксперимент - установить с нуля Мастер 2.2, а затем
поискать "ничейные" файлы и каталоги, то результат будет плачевным.
Получается наполовину package based distro. К сожалению.

С уважением, Антон В. Денисов.




             reply	other threads:[~2003-06-06  4:14 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-06  4:14 Anton V. Denisov [this message]
2003-06-06  4:54 ` Alexander Bokovoy
2003-06-07  1:37   ` Anton V. Denisov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='000a01c32be2$278ef770$400aa8c0@434ntws' \
    --to=fire@kgpu.kamchatka.ru \
    --cc=devel@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git