On Fri, Sep 28, 2012 at 10:01:08AM +0400, Artem Chuprina wrote: > Eugene Berdnikov -> [email protected] @ Fri, 28 Sep 2012 > 00:02:12 +0400: > > >> >> Ну, ты хотя бы эти три раскрой. Вот у тебя пакет, который > >> >> внутри кода использует имя группы, допустим, remote-dev. Начнем > >> >> с вопроса "как ты в postinst обнаруживаешь, что то же имя группы > >> >> с другими целями использует какой-то другой пакет? > >> > >> EB> Не в postinst, а в preinst -- по статус-коду от groupadd. > >> > >> ... который будет точно таким же, если это ты сам при прошлой установке > >> ее добавил. > > EB> Я немного знаю борновский шелл и потому умею комбинировать разные > условия > EB> в предикаты. :-) В данном случае нужно скомбинировать статус от groupadd > EB> с параметром $1, в который dpkg передаёт "install", "upgrade", etc. > > Цикл установка-снос-установка эта система либо не переживает, либо > сносит группу при сносе. Подразумевая, что она ТОЧНО никому больше не > нужна, и юзеров в нее не добавляют (то есть информацию о членстве в > группе при сносе сохранять ТОЧНО не надо).
Ну да, изначально к рассмотрению была предложена ситуация, когда пакет считает свою группу уникальной, тогда обнаружение группы с идентичным именем при установке означает конфликт. Самая верхняя твоя цитата: "то же имя группы с другими целями использует какой-то другой пакет". > При таком предположении > проще взять заведомо уникальное имя группы, сгенерированное путем > хэширования вывода /dev/random в момент сборки пакета, и не париться. Хэш плох тем, что имя группы будет длинным и/или лишённым смысловой нагрузки. При этом от софтины требуется возможность менять имя своей рабочей группы. -- Eugene Berdnikov -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

