Złe praktyki? (symlinki i modyfikowanie plików)

Tomasz Kłoczko kloczek w rudy.mif.pg.gda.pl
Nie, 25 Sie 2002, 12:46:11 CEST


On Sat, 24 Aug 2002, Jakub Bogusz wrote:

> On Sat, Aug 24, 2002 at 09:03:06PM +0200, Tomasz Kłoczko wrote:
> > On Sat, 24 Aug 2002, Jakub Bogusz wrote:
> > > Zauważyłem w specach dwie praktyki, które mogą powodować problemy.
> > > 
> > > Pierwsza to względne symlinki między różnymi katalogami.
> > > Np. /usr/lib/libm.so -> ../../lib/libm.so.6.
> > > I co się dzieje, jeśli w danym systemie /usr jest symlinkiem do katalogu
> > > o innym poziomie zagłębienia? Link jest zepsuty.
> > > (swoją drogą - o ile wg FHS /usr może być symlinkiem, to nie wiem do
> > > czego - dodatkowych katalogów w / (typu /vol) nie można robić, a /mnt
> > > jest do tymczasowego montowania)
> > > 
> > > Bezwzględne symlinki też mają wadę - jeśli podmontujemy rootfs gdzieś
> > > indziej (np. przy ratowaniu systemu), to linki nie działają. Ale nie ma
> > > to chyba dużego znaczenia - żeby coś więcej zrobić w takim systemie,
> > > i tak robi się chroot...
> > 
> > Primo: jednak jak najmniej dowiązań. Reszta dylematów wynikajacych z 
> > takeigo podejscia i istnienai dowiazań powinno sie juz dużo łatwiej dawać 
> > analizować pod kontem tgo jak to rozstrzygać.
> 
> Tia, zwłaszcza lib*.so -> lib*.so.* :>
> 
> W samym /usr/lib:
> $ ls -l /usr/lib/*.so | grep '\.\.' | wc -l
>      24

W tym sie mieszczą raptem kilka pakietów: glibc, ncurses, readline, 
pwd (może coś jeszcze ..). 
linker jak widać na przykładzie pam potrafi siegać do /lib czyli wszystkie 
te dowiązania można skorygować.

> plus dwa linki wymagane przez FHS:
> /usr/lib/sendmail -> ../sbin/sendmail
> /usr/lib/X11 -> ../X11R6/lib/X11

/usr/lib/sendmail mogłoby być jednak dowiązaniem bewzględnym.
Resztę można spokojnie zingmorować (nie widże jakoćś żeby to w czymś 
przeszkadzało :)

[..]
> > IMHO rozwiązania są dwa (idące właśnie tym śladem):
> > 
> > - dodawać jawnie w pierwszej linijce skryptu "umask 022" (co w części 
> >   meisjc już jest robione) tam gzdei są tworzone jakieś pliki,
> > 
> > - zmodyfikować rpm-a tak żeby dla skryptów było zawsze ustawione stałe,
> >   wszem i wobec wiadome umask (np. 022) ustawialne jakims makrem.
> > 
> > To drugie wydaje się najlepsze ibezie załtwiać sprawę neizaleznie od tego 
> > w jaki sposób bedą tworzone pliki w skryptach.
> 
> Nie ma tak łatwo. Chyba zakładasz (błędnie), że wszystkie pliki
> modyfikowane w skryptach rpm-a mają mieć te same prawa. Tak nie jest.

Nic nie zakładam :)
Wtedy odchodzisz od ustawien domyślnych i zmienaisz umask lokalnie na 
takie jakie chcesz.
Chodzi o to niemniej żeby właśnie domyślne ustawienia nie były takie żeby 
nie powosdowały nieporozumień.

> Poza tym niektóre pliki muszą mieć innego właściciela (lub grupę - nieco
> częściej).

chown/chgrp/chmod .. jest to już robione w kilku miejscach (tam gdzie
trzeba zainicjować pliki %ghost na przykład) i ustawienia 
domysłnego umask w niczym tu nie przeszkadza :)

kloczek
-- 
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*



Więcej informacji o liście dyskusyjnej pld-devel-pl