Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Vladimir Bormotov                    2:5020/400     04 May 2003  20:04:55
 To : Maxim Timofeyev
 Subject : Re: RPM & SPEC
 -------------------------------------------------------------------------------- 
 
 
    Hi, Maxim!
 
 >>>>> "MT" == Maxim Timofeyev
 >>>>> <Maxim.Timofeyev@p1.f1763.n5030.z2.fidonet.org> writes:
  MT> Есть вопрос к знатокам RPM.  Есть некий SPEC файл.  
  
  MT> Есть в нем есть секция ``%pre'', в которой создаю некоего
  MT> пользователя, нужного для программы.
 
  угу.  
  
  MT> Вопрос!
 
  MT> Если в %preun удалять данного пользователя, то это некорректно
  MT> работает при upgrade пакета, т.к. пользователь вначале удаляется, а
  MT> потом вновь создается. Hужно чтобы при 'rpm -U' пользователь _HЕ_
  MT> удалялся, а удялялся только при 'rpm -e'. 
  
  http://www.rpm.org/max-rpm/ch-rpm-upgrade.html
  
  The rpm -U command (--upgrade is equivalent) performs two distinct operations:
 
    1. Installs the desired package.
    2. Erases all older versions of the package, if any exist.  
       
  и далее по тексту.
 
  еще думаю полезно в 
  
  MT> Секция %postun, думаю, тоже не подходит...
 
  не подходит.
  
  
  MT> Сейчас юзаю так: 
  MT> ========
  MT> %pre
  MT> grep -q ^user: /etc/group || groupadd -r user 
  MT> grep -q ^user: /etc/passwd || \
  MT>   useradd -g user -d / -s /bin/false -r -M user 
  MT>   rm -f /var/run/script.restart
  MT> if [ $1 -ge 2 ]; then
  MT>   /etc/rc.d/init.d/script status && touch /var/run/script.restart || : 
  MT>   /etc/rc.d/init.d/script stop || :
  MT> fi
 
  MT> %preun
  MT> if [ $1 -eq 0 ]; then
  MT>   /etc/rc.d/init.d/script stop || : /sbin/chkconfig --del script
  MT>   userdel user
  MT> fi 
  MT> ========
  MT> P.S. За основу использовались SPEC'ки из Openwall'а.
 
  посмотри другие спеки других пакетов, где добавляют/удаляются
  пользователи.  Я такими тонкостями не возился, но судя по тому, что это
  как-то работает, решение есть.
  
  я бы начал разборки с чтения вот этого 
  
   http://www.rpm.org/max-rpm/s1-rpm-inside-scripts.html#S2-RPM-INSIDE-ERASE-TIME
 -SCRIPTS
  
  MT> Один из выходов из данного положения -- задавать uid/gid при создании
  MT> пользователя, но этот способ неподходит, т.к. в дистрибутиве, куда
  MT> устанавливается данный пакет, уже может пользователь с такими uid/gid!
 
  нет, uid/gid задавать никуда не годится.
  
  
 -- 
    Bor.
 --- ifmail v.2.15dev5
  * Origin: BorHomeLand (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: RPM & SPEC   Vladimir Bormotov   04 May 2003 20:04:55 
Архивное /ru.linux/2541d36c2a1c.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional