ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: Michael Shigorin <mike@osdn.org.ua>
To: sisyphus@lists.altlinux.org
Subject: [sisyphus] /tmp/.private/$USER vs $HOME/tmp как умолчание для TMPDIR
Date: Sat, 17 Mar 2007 16:41:38 +0200
Message-ID: <20070317144138.GM13731@osdn.org.ua> (raw)
In-Reply-To: <20070317014435.GD27576@basalt.office.altlinux.org>

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

On Sat, Mar 17, 2007 at 04:44:35AM +0300, Dmitry V. Levin wrote:
> > Мне вот только интересно, что с /tmp/.private при этом будет.
> > (не подумайте, что в восторге от _этого_, но в bugzilla меня
> > проигнорировали)
> Я не очень люблю вести обсуждения в bugzilla - этот инструмент для
> напоминания об ошибках не предназначен для обсуждения.
> Давайте лучше обсуждать здесь.

Хорошо.

Попробую пересказать доводы, приведённые в этих багах:
https://bugzilla.altlinux.org/show_bug.cgi?id=6814
https://bugzilla.altlinux.org/show_bug.cgi?id=8030
сторонниками и противниками использования pam_mktemp (TMPDIR
в /tmp/.private/$USER) по умолчанию (противников использования
/вообще/ не наблюдал):

Executive summary:

+ использовать tmpfs на swap универсальней, чем /tmp+swap;
+ временные данные ДОЛЖНЫ жить в /tmp и никак иначе;
+ единый /tmp гораздо удобнее автоматически чистить;
+ данное умолчание возможно изменить вручную индивидуально.

- создаются отсутствовавшие до того проблемы пользования;
- изменяется баланс расхода дискового пространства;
- отсутствует аргументация изменения рабочей конфигурации;
- изменения возможно избежать только необновлением системы;
- переконфигурирование требует заметной компетенции;
- многократно нарушается принцип наименьшего удивления;
- изменение производится в картельном порядке и предельно
  доступно изложенная аргументация удивившихся коллег
  игнорируется или получает ответ в духе "мы лучше знаем,
  что вам надо".

Осторожно, выдёргивание цитат лучше считать субъективным.

--- pro (mithraen, ldv):

* "Напоминаю про наше последнее обсуждение" [mithraen]

* Доводов много, чтобы их здесь приводить. [ldv]

* Что касается требований к месту по разделам, то мы двигаемся в
  сторону увеличения swap и помещения /tmp на tmpfs. [ldv]

* Разве оно перестало быть настраиваемым? [ldv]

* /tmp оно на то и /tmp, что семантика у него другая, нежели у $HOME:
  1. Данные из него могут быть удалены, если к ним не было
     обращений в течении некоторого времени
  2. Данные из него могут быть удалены при перезагрузке
  3. На нём может быть noexec
  4. Оно может быть на tmpfs ($HOME на tmpfs это просто волшебство)
  [mithraen]

* 1. /tmp в любой системе обязана быть, и выполнять именно те
  функции, которые положены по FHS (хранить временные данные,
  заведомо не имеющие смысла после перезагрузки). И делается это
  либо tmpfs, либо отдельным физическим разделом.

  Те кто не хотят делать так -- ССЗБ и пусть продолжают создавать
  себе геморрой самостоятельно.
  [mithraen]

* Если напишете грамотный патч, он наверняка будет принят. [mithraen]

* А агрегировать tmp надо отнюдь нетолько на серверах. На рабочих
  станциях тоже весьма удобственно, ибо автоматически чистить
  можно штатными средствами. [mithraen]

* Временные файлы не должны лежать в $HOME. Это аксиома. Поэтому
  pam_mktemp "The Right Thing(tm)". Вопрос теперь в том, как
  сделать чтобы эта правильность не мешала usability. [mithraen]


--- contra (mike, sbolshakov и более мягко -- raorn и ktirf)

* нельзя ли в привести здесь доводы за такое решение ?
  с переездом TMPDIR некоторым образом изменились требования
  к распределению места по разделам, как минимум. [sbolshakov]

* /* проблемы для пользователей, которые не имеют соответствующей
     группы (до внесения специфических модификаций в glibc -- 
     и для SGID-программ, использующих TMPDIR) // mike */

  drwxrwx--T  2 root raorn 4096 Jun  4 18:53 /tmp/.private/raorn
  [...]
  Как насчёт пользователей с одной общей группой типа users?  [raorn]

* usertmp   /home/wrar/tmp   tmpfs   size=1g 0 0 [wrar]

* напоролся на то, что GUI'шный софт (точнее, файл-селектор в
  OOo) встал при попытке перейти из такого каталога в домашний
  "штатными средствами", бишь кнопкой "вверх" -- с жалобой "не
  могу прочитать каталог". [...] [mike]

* Это общий "недостаток" практически у всех файл-селекторов: если
  прав на чтение каталога нет, пользователь не сможет пройти через
  него вверх или вниз. [...] [ktirf]

* это _плохое_ умолчание.  Обоснование:
  - серверы требуют настройки
  - десктопы если и настраиваются, то редко квалифицированно
  - проблемы на серверах, которые это изменение решает, некритичны
  - проблемы на десктопах, которые оно создаёт -- критичны
  [mike]

* отсылки на FHS не более убедительны, чем тезис о том, что
  временные данные пользователя -- это в первую очередь ДАННЫЕ
  ПОЛЬЗОВАТЕЛЯ.  И дефолты должны создавать минимум проблем на
  ровном месте [...] [mike]

* Отвечать в тысячный раз в jabber, почту, телефон, что "это
  такие фирменные грабли, заточенные под некоторых продвинутых
  пользователей" -- не хочется совсем. [mike]

* error: removing these packages would break dependencies:
        pam_mktemp.so is needed by pam0-config-1.2.0-alt1 [mike]

* Не один администратор рефлекторно настрожится при виде
  неудаляемого скрытого каталога в общедоступном по записи /tmp.
  На сейчас все эти неприятности прибиты гвоздями к pam0_config. [mike]

* Половина проблем -- из-за прав и атрибутов, вешать их под
  control -- проще, чем /boot с /lib/modules.  Но при этом всё
  равно остаётся вышеописанная часть вида /tmp vs /home. [mike]

* я не считаю pam_mktemp безусловным `the right thing'.
  Поддержу предложение иметь на это дело control, off by default.
  уточню, управлять хотелось бы фактом существования pam0_mktemp
  в связке, а не правами ниже /tmp -- $TMPDIR, равная $HOME/tmp,
  для меня достаточна. [sbolshakov]


--- pro et contra
? все sgid программы (например xscreensaver) пролетают мимо
  $TPMDIR как фанера над парижем... [raorn]
! Что касается sgid-ных исполняемых объектов, то они могут
  чувствовать себя спокойно начиная с glibc-2.2.5-alt6 (это
  ALT-specific). [ldv]

= Лично мне, продвинутому пользователю настольной системы, нужно следующее:
  1. Возможность разместить каталог (каталоги всех пользователей)
     на отдельной файловой системе (я люблю tmpfs, но здесь это не
     предполагается).
  2. Незаметность этого каталога в том смысле, что если уж он
     лежит у меня в ~, он должен начинаться на точку (обоснование:
     я не могу его удалить, потому что он нужен системе).
  3. Недоступность каталога одного пользователя другому пользователю.
  4. Быстрый и простой доступ к каталогу (/tmp/.private/username
     здесь явно проигрывает; в качестве ещё одного костыля могу
     предложить симлинк ~/tmp -> /tmp/.private/username).
  5. Нулевые затраты на maintenance этого каталога (stmpclean
     вполне справляется с этой задачей при условии его
     умолчательного правильного натравливания).
  По совокупности лично мне очень нравится pam_mktemp плюс
  закладка на /tmp/.private/ktirf [ktirf]

= Created an attachment (id=1133)
  /etc/control.d/facilities/pam_mktemp
  Извините, что вмешиваюсь, но проблема "Обычных
  Пользователей(tm)" решается одним файликом в
  /etc/control.d/facilities и галкой (или умолчательным
  поведением) в инсталяторе.  Не знаю, есть ли противопоказания к
  применению control(8) на /etc/pam.d/system-auth... [raorn]

Также в багрепортах были приведены несколько use cases, которые
демонстрировали вполне реальные проблемы с данным умолчанием
у достаточно компетентных людей, которые имеют возможность
хотя бы отдиагностировать проблему и обойти её.

Для меня это одна из трёх наиболее тяжёлых и неприятных ситуаций,
связанных с участием в разработке, развёртывании и поддержке
ALT Linux до сего времени, если честно.

> Что касается /tmp на swap'е по умолчанию в новых системах,
> то я не вижу ни одного реального минуса в этом подходе.

Мгм.

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

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

  parent reply	other threads:[~2007-03-17 14:41 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-16 19:26 [sisyphus] /tmp на tmpfs? Ivan Adzhubey
2007-03-16 22:50 ` Michael Shigorin
2007-03-17  1:44   ` Dmitry V. Levin
2007-03-17  6:13     ` Ivan Adzhubey
2007-03-17  8:31       ` Alexey Tourbin
2007-03-17  8:36         ` Alexey Tourbin
2007-03-17  9:57           ` Sergey
2007-03-17 10:00             ` Alexey Tourbin
2007-03-17 10:17               ` gns
2007-03-17 11:24                 ` Alexey Tourbin
2007-03-17 14:50         ` [sisyphus] /tmp/.private/$USER vs $HOME/tmp как умолчание для TMPDIR Michael Shigorin
2007-03-17 14:41     ` Michael Shigorin [this message]
2007-03-17 15:21       ` Denis G. Samsonenko
2007-03-17 15:28         ` Michael Shigorin
2007-03-17 15:55         ` Dmitry V. Levin
2007-03-17 17:08           ` Denis G. Samsonenko
2007-03-17 17:27             ` Dmitry V. Levin
2007-03-17 20:31           ` Michael Shigorin
2007-03-17 21:14             ` Dmitry V. Levin
2007-03-17 21:43               ` Vitaly Lipatov
2007-03-17 21:52                 ` Alexey Tourbin
2007-03-18 10:51                   ` Vyatcheslav Perevalov
2007-03-18 16:57                   ` Sergey
2007-03-18 17:48                     ` Sergey S. Skulachenko
2007-03-18 17:55                       ` Хихин Руслан
2007-03-18 21:04                       ` Александр Гвоздев
2007-03-18 16:05                 ` Andrey Rahmatullin
2007-03-18 16:18                   ` Valery V. Inozemtsev
2007-03-17 23:49               ` Michael Shigorin
2007-03-18 10:48               ` Хихин Руслан
2007-03-17 16:21       ` Dmitry V. Levin
2007-03-17 17:38         ` Alexey Tourbin
2007-03-17 18:00           ` Dmitry V. Levin
2007-03-17 18:16             ` Alexey Tourbin
2007-03-17 18:22               ` Alexey Tourbin
2007-03-17 19:33               ` Dmitry V. Levin
2007-03-17 20:49                 ` Alexey Tourbin
2007-03-17 23:27                 ` Michael Shigorin
2007-03-18 21:08                   ` Dmitry V. Levin
2007-03-18 21:36                     ` [sisyphus] system-auth и pam_mktemp Michael Shigorin
2007-03-18 21:47                       ` Dmitry V. Levin
2007-03-18 22:29                         ` Michael Shigorin
2007-03-18 22:36                           ` Dmitry V. Levin
2007-03-25 19:45                             ` Michael Shigorin
2007-04-05 21:58                               ` Dmitry V. Levin
2007-03-18  2:30       ` [sisyphus] /tmp/.private/$USER vs $HOME/tmp как умолчание для TMPDIR Александр Гвоздев
2007-03-18  8:24         ` Michael Shigorin
2007-03-18 10:21           ` Хихин Руслан
2007-03-18 17:44             ` Ivan Adzhubey
2007-03-18 18:21               ` Хихин Руслан
2007-03-18 19:00               ` [sisyphus] tmpfs usage Michael Shigorin
2007-03-18 19:49               ` [sisyphus] /tmp/.private/$USER vs $HOME/tmp как умолчание для TMPDIR Dmitry V. Levin
2007-03-18 21:23                 ` [sisyphus] [wiki] tmpfs Michael Shigorin
2007-03-18 21:53                   ` Mikhail Yakshin
2007-03-19  6:54               ` [sisyphus] /tmp/.private/$USER vs $HOME/tmp как умолчание для TMPDIR Alexey Tourbin
2007-03-20  9:02             ` Ildar Mulyukov
2007-03-21  6:03               ` Хихин Руслан
2007-03-18 21:09           ` Александр Гвоздев

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=20070317144138.GM13731@osdn.org.ua \
    --to=mike@osdn.org.ua \
    --cc=shigorin@gmail.com \
    --cc=sisyphus@lists.altlinux.org \
    /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 Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

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


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