ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Q: rpmbuild: hardlink identical files together by default
@ 2010-03-24 23:29 Dmitry V. Levin
  2010-03-25  3:51 ` Slava Semushin
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Dmitry V. Levin @ 2010-03-24 23:29 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 354 bytes --]

Hi,

Добавляя сегодня в очередной свой пакет следующие строки,
# Hardlink identical files together.
%define __spec_install_custom_post hardlink -v %buildroot

в очередной раз подумал о том, что хорошо бы распространить этот опыт
в более общей форме (с макросами вида %set_hardlink_path) по умолчанию
на все пакеты.

Что скажете?


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-24 23:29 [devel] Q: rpmbuild: hardlink identical files together by default Dmitry V. Levin
@ 2010-03-25  3:51 ` Slava Semushin
  2010-03-25  4:25 ` Денис Смирнов
  2010-03-25  7:16 ` Alexey Tourbin
  2 siblings, 0 replies; 14+ messages in thread
From: Slava Semushin @ 2010-03-25  3:51 UTC (permalink / raw)
  To: ALT Linux Team development discussions

25 марта 2010 г. 5:29 пользователь Dmitry V. Levin <ldv@altlinux.org> написал:
[...]
> Что скажете?

Хотелось бы для начала понять для чего это нужно.


-- 
Slava Semushin

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-24 23:29 [devel] Q: rpmbuild: hardlink identical files together by default Dmitry V. Levin
  2010-03-25  3:51 ` Slava Semushin
@ 2010-03-25  4:25 ` Денис Смирнов
  2010-03-25  8:56   ` Afanasov Dmitry
  2010-03-25  7:16 ` Alexey Tourbin
  2 siblings, 1 reply; 14+ messages in thread
From: Денис Смирнов @ 2010-03-25  4:25 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 719 bytes --]

On Thu, Mar 25, 2010 at 02:29:31AM +0300, Dmitry V. Levin wrote:

DVL> в очередной раз подумал о том, что хорошо бы распространить этот опыт
DVL> в более общей форме (с макросами вида %set_hardlink_path) по умолчанию
DVL> на все пакеты.
DVL> Что скажете?

До тех пор, пока наш librpm сломан -- я бы сказал что это  способ делать
неустанавливаемые пакеты.

Напоминаю, что если у нас есть два разных раздела, и в rpm (как и в cpio,
кстати) упакован hardlink между каталоги внутри разных точек монтирования
-- при установке пакета будет ошибка, вместо того чтобы разбить hardlink.

-- 
С уважением, Денис

http://mithraen.ru/
----------------------------------------------------------------------------

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-24 23:29 [devel] Q: rpmbuild: hardlink identical files together by default Dmitry V. Levin
  2010-03-25  3:51 ` Slava Semushin
  2010-03-25  4:25 ` Денис Смирнов
@ 2010-03-25  7:16 ` Alexey Tourbin
  2010-03-25  8:22   ` Slava Semushin
  2010-03-25 10:37   ` [devel] " Dmitry V. Levin
  2 siblings, 2 replies; 14+ messages in thread
From: Alexey Tourbin @ 2010-03-25  7:16 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 887 bytes --]

On Thu, Mar 25, 2010 at 02:29:31AM +0300, Dmitry V. Levin wrote:
> Hi,
> 
> Добавляя сегодня в очередной свой пакет следующие строки,
> # Hardlink identical files together.
> %define __spec_install_custom_post hardlink -v %buildroot

Is there an option like "hardlink only in the same dir"?

> в очередной раз подумал о том, что хорошо бы распространить этот опыт
> в более общей форме (с макросами вида %set_hardlink_path) по умолчанию
> на все пакеты.
> 
> Что скажете?

This dependes on what you're trying to save, which is either internet
traffic or disk space.  Saving internet traffic is already easier due
to the xz compression (which can handle similar files very well). And
disks are nowadays 1Tb+.  From both points of view, you're probably
gonna save nothing, compared to an average media transfer e.g. from
youtube.

This is how the world has changed.

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25  7:16 ` Alexey Tourbin
@ 2010-03-25  8:22   ` Slava Semushin
  2010-03-25  8:30     ` Sergei Epiphanov
  2010-03-25 10:37   ` [devel] " Dmitry V. Levin
  1 sibling, 1 reply; 14+ messages in thread
From: Slava Semushin @ 2010-03-25  8:22 UTC (permalink / raw)
  To: ALT Linux Team development discussions

25 марта 2010 г. 13:16 пользователь Alexey Tourbin <at@altlinux.ru> написал:
[...]
> And disks are nowadays 1Tb+.

Ну не у всех же. У меня как было 3 года назад 40 Гб, так и осталось.
Причем под корень всего ~5Гб и поэтому я часто делаю apt-get clean,
обновляюсь лишь частями и не часто. Короче, экономлю на чем могу.


-- 
Slava Semushin

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25  8:22   ` Slava Semushin
@ 2010-03-25  8:30     ` Sergei Epiphanov
  2010-03-27 12:23       ` [devel] [JT] " Michael Shigorin
  0 siblings, 1 reply; 14+ messages in thread
From: Sergei Epiphanov @ 2010-03-25  8:30 UTC (permalink / raw)
  To: ALT Linux Team development discussions

В сообщении от 25 марта 2010 11:22:35 автор Slava Semushin написал:
> 25 марта 2010 г. 13:16 пользователь Alexey Tourbin <at@altlinux.ru>
> написал: 
> 
> > And disks are nowadays 1Tb+.
> 
> Ну не у всех же. У меня как было 3 года назад 40 Гб, так и осталось.

Кстати да. Если вдруг кто-то захочет сделать embedded-версию на основе Сизифа 
для установки в роутеры и подобные девайсы, то там каждый байт на счету.

-- 
С уважением, Епифанов Сергей

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25  4:25 ` Денис Смирнов
@ 2010-03-25  8:56   ` Afanasov Dmitry
  2010-03-25 11:19     ` Денис Смирнов
  0 siblings, 1 reply; 14+ messages in thread
From: Afanasov Dmitry @ 2010-03-25  8:56 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 885 bytes --]

On Thu, Mar 25, 2010 at 07:25:05AM +0300, Денис Смирнов wrote:
> On Thu, Mar 25, 2010 at 02:29:31AM +0300, Dmitry V. Levin wrote:
> 
> DVL> в очередной раз подумал о том, что хорошо бы распространить этот опыт
> DVL> в более общей форме (с макросами вида %set_hardlink_path) по умолчанию
> DVL> на все пакеты.
> DVL> Что скажете?
> 
> До тех пор, пока наш librpm сломан -- я бы сказал что это  способ делать
> неустанавливаемые пакеты.
> 
> Напоминаю, что если у нас есть два разных раздела, и в rpm (как и в cpio,
> кстати) упакован hardlink между каталоги внутри разных точек монтирования
> -- при установке пакета будет ошибка, вместо того чтобы разбить hardlink.
напоминаю также, что по FHS /usr, /var, /boot и наверняка ещё какие
каталоги могут быть на других устройствах.

а в пределах одного устройства - почему бы и нет?

-- 
С уважением
Афанасов Дмитрий

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25  7:16 ` Alexey Tourbin
  2010-03-25  8:22   ` Slava Semushin
@ 2010-03-25 10:37   ` Dmitry V. Levin
  1 sibling, 0 replies; 14+ messages in thread
From: Dmitry V. Levin @ 2010-03-25 10:37 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 1032 bytes --]

On Thu, Mar 25, 2010 at 10:16:04AM +0300, Alexey Tourbin wrote:
> On Thu, Mar 25, 2010 at 02:29:31AM +0300, Dmitry V. Levin wrote:
> > Hi,
> > 
> > Добавляя сегодня в очередной свой пакет следующие строки,
> > # Hardlink identical files together.
> > %define __spec_install_custom_post hardlink -v %buildroot
> 
> Is there an option like "hardlink only in the same dir"?

No, but there are methods like "find -type d | xargs -rn1" and
"find %buildroot -mindepth 3 -maxdepth 3 -type d | xargs -r".

> > в очередной раз подумал о том, что хорошо бы распространить этот опыт
> > в более общей форме (с макросами вида %set_hardlink_path) по умолчанию
> > на все пакеты.
> > 
> > Что скажете?
> 
> This dependes on what you're trying to save, which is either internet
> traffic or disk space.  Saving internet traffic is already easier due
> to the xz compression (which can handle similar files very well). And
> disks are nowadays 1Tb+.

Not on laptops, though.  SSD devices aren't so large yet.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25  8:56   ` Afanasov Dmitry
@ 2010-03-25 11:19     ` Денис Смирнов
  2010-03-25 11:41       ` Terechkov Evgenii
  0 siblings, 1 reply; 14+ messages in thread
From: Денис Смирнов @ 2010-03-25 11:19 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 476 bytes --]

On Thu, Mar 25, 2010 at 11:56:41AM +0300, Afanasov Dmitry wrote:

AD> а в пределах одного устройства - почему бы и нет?

librpm починить, наверное, было реалььно.

Есть еще одна проблема -- нельзя делать hardlink'и в /var и /etc. Потому
как нахождение там одинаковых файлов не означает, что эти файлы должны
модифицироваться одновременно.

-- 
С уважением, Денис

http://mithraen.ru/
----------------------------------------------------------------------------

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] Q: rpmbuild: hardlink identical files together by default
  2010-03-25 11:19     ` Денис Смирнов
@ 2010-03-25 11:41       ` Terechkov Evgenii
  0 siblings, 0 replies; 14+ messages in thread
From: Terechkov Evgenii @ 2010-03-25 11:41 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 592 bytes --]

25.03.2010 Денис Смирнов писал:

> AD> а в пределах одного устройства - почему бы и нет?
> librpm починить, наверное, было реалььно.
> Есть еще одна проблема -- нельзя делать hardlink'и в /var и /etc. Потому
> как нахождение там одинаковых файлов не означает, что эти файлы должны
> модифицироваться одновременно.

А может просто warning в конце сборки выдавать, как для unpackaged?

-- 
                                                С уважением, Терешков
                                                Евгений, ALT Linux
                                                Team

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [devel] [JT] Re: Q: rpmbuild: hardlink identical files together by default
  2010-03-25  8:30     ` Sergei Epiphanov
@ 2010-03-27 12:23       ` Michael Shigorin
  2010-03-27 13:54         ` Ivan A. Melnikov
  2010-03-27 20:20         ` Sergey Vlasov
  0 siblings, 2 replies; 14+ messages in thread
From: Michael Shigorin @ 2010-03-27 12:23 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Проблема с (не)разбиванием хардлинков мне кажется более важной,
чем автоматическая экономия.  Исходно идентичные файлы могут
оказаться рабочим и дефолтным конфигом, и тогда неосознанное
изменение обоих сразу с необходимостью лезть в пакет за
оригиналом скорее добавит неудобств.

_Возможно_, есть смысл реализовать некий порог по минимальному
размеру, если делать автомат; и проанализировать распределение.

PS: без rpmlib получить `rpm -qlvp`, только с md5 пофайлово,
возможно?


On Thu, Mar 25, 2010 at 11:30:12AM +0300, Sergei Epiphanov wrote:
> Кстати да. Если вдруг кто-то захочет сделать embedded-версию на
> основе Сизифа для установки в роутеры и подобные девайсы, то
> там каждый байт на счету.

Там обычно MIPS, если что.  Насколько понимаю, уникальные
экземпляры сизифа на хостах MIPS и SPARC скорее забыты.

Ну и для встраиваемых решений есть более подходящие
и устоявшиеся в таком качестве платформы.

То есть меньше чем на "x86-корень на небольшой флэшке"
(например, для HN со всем остальным на сторадже) пока
ориентироваться смысла не вижу.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] [JT] Re: Q: rpmbuild: hardlink identical files together by default
  2010-03-27 12:23       ` [devel] [JT] " Michael Shigorin
@ 2010-03-27 13:54         ` Ivan A. Melnikov
  2010-03-27 14:16           ` Денис Смирнов
  2010-03-27 20:20         ` Sergey Vlasov
  1 sibling, 1 reply; 14+ messages in thread
From: Ivan A. Melnikov @ 2010-03-27 13:54 UTC (permalink / raw)
  To: devel

В Sat, 27 Mar 2010 14:23:11 +0200
Michael Shigorin <mike@osdn.org.ua> пишет:

> Проблема с (не)разбиванием хардлинков мне кажется более важной,
> чем автоматическая экономия.  Исходно идентичные файлы могут
> оказаться рабочим и дефолтным конфигом, и тогда неосознанное
> изменение обоих сразу с необходимостью лезть в пакет за
> оригиналом скорее добавит неудобств.
> 

По идее, для рабочих конфигов есть %config, а для дефолтных -- %doc.
Автомат мог бы это учесть.

-- 
WBR,
Ivan A. Melnikov


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] [JT] Re: Q: rpmbuild: hardlink identical files together by default
  2010-03-27 13:54         ` Ivan A. Melnikov
@ 2010-03-27 14:16           ` Денис Смирнов
  0 siblings, 0 replies; 14+ messages in thread
From: Денис Смирнов @ 2010-03-27 14:16 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 622 bytes --]

On Sat, Mar 27, 2010 at 04:54:40PM +0300, Ivan A. Melnikov wrote:

IAM> По идее, для рабочих конфигов есть %config, а для дефолтных -- %doc.
IAM> Автомат мог бы это учесть.

минимально необходимое условие:

1. /var, /etc -- нельзя трогать.
2. прежде чем такое делать, нужно починить сломанный rpmlib.
3. пока rpmlib не починен, делать hardlink'и можно только в пределах
одного каталога.

Мне достаточно glibc, не ставящейся на тонко порезанный на разделы диск
без предупреждения.

-- 
С уважением, Денис

http://mithraen.ru/
----------------------------------------------------------------------------

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [devel] [JT] Re: Q: rpmbuild: hardlink identical files together by default
  2010-03-27 12:23       ` [devel] [JT] " Michael Shigorin
  2010-03-27 13:54         ` Ivan A. Melnikov
@ 2010-03-27 20:20         ` Sergey Vlasov
  1 sibling, 0 replies; 14+ messages in thread
From: Sergey Vlasov @ 2010-03-27 20:20 UTC (permalink / raw)
  To: devel

[-- Attachment #1: Type: text/plain, Size: 762 bytes --]

On Sat, Mar 27, 2010 at 02:23:11PM +0200, Michael Shigorin wrote:
> Проблема с (не)разбиванием хардлинков мне кажется более важной,
> чем автоматическая экономия.  Исходно идентичные файлы могут
> оказаться рабочим и дефолтным конфигом, и тогда неосознанное
> изменение обоих сразу с необходимостью лезть в пакет за
> оригиналом скорее добавит неудобств.

Очевидно, в /etc hardlink по этой причине пускать нельзя.

> PS: без rpmlib получить `rpm -qlvp`, только с md5 пофайлово,
> возможно?

Что-то похожее (nlink, видимо, получить не удастся - он там считается
прямо в коде, тега для этого поля нет):

 rpmquery --qf '[%-32{FILEMD5S} %{FILEMODES:permissions} %8{FILEUSERNAME} %8{FILEGROUPNAME} %10{FILESIZES} %{FILEMTIMES:date} %%{FILENAMES}\n]'

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2010-03-27 20:20 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-24 23:29 [devel] Q: rpmbuild: hardlink identical files together by default Dmitry V. Levin
2010-03-25  3:51 ` Slava Semushin
2010-03-25  4:25 ` Денис Смирнов
2010-03-25  8:56   ` Afanasov Dmitry
2010-03-25 11:19     ` Денис Смирнов
2010-03-25 11:41       ` Terechkov Evgenii
2010-03-25  7:16 ` Alexey Tourbin
2010-03-25  8:22   ` Slava Semushin
2010-03-25  8:30     ` Sergei Epiphanov
2010-03-27 12:23       ` [devel] [JT] " Michael Shigorin
2010-03-27 13:54         ` Ivan A. Melnikov
2010-03-27 14:16           ` Денис Смирнов
2010-03-27 20:20         ` Sergey Vlasov
2010-03-25 10:37   ` [devel] " Dmitry V. Levin

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