odwrócenie bconda pax w glibc

Piotr Zięcik kosmo w miechow.com
Śro, 27 Wrz 2006, 10:39:05 CEST


Dnia środa, 27 września 2006 10:19, Marek Guevara Braun napisał:

> Jeśli mamy własny kompilat glibca, zbudowany z opcją --with pax, a
> domyślnie ta opcja byłaby wyłączona, to i tak nie można "w ciemno"
> upgradować takiej maszyny, bo np. za chwilę pojawi się "w poldku" nowy
> release danej biblioteki i po upgrade system nie działa.
>
> Rozwiązania tu widzę raczej administracyjne
>  (1) dodanie glibca, zlib i ew. paxctl do listy hold w poldku
>  (2) dodanie do poldka tylko własnych punktów dystrybucji/builderów,
>      które produkują "dobre" pakiety
>  (3) dodanie jakiegoś watchdoga/zdalnego resetu do serwerów, albo lepiej
>      karty zdalnego dostępu do poziomu BIOS maszyny (można edytować
>      gruba przy starcie)
>  (4) zainwestowanie w większy dysk, vmware serwer i testowanie upgradów
>      przed zdalną implementacją.
>
> Nawet gdy --with pax było by dalej (tak jak jest obecnie) domyślnie
> wyłączone, nic nie stoi na przeszkodzie, że ktoś edytując speca
> wywali/zepsuje odpowiednią łatkę, albo odpowiednio skompilowana, nowa
> wersja będzie po prostu błędna.

Aktualnie mam zrobione punkty (1) i (2) - hold w poldku trzyma mi glibca, a 
jak się pojawia nowa wersja to ją sam przebudowuję. Watchdog nie pomoże, bo
/sbin/init się nie uruchomi, a po to mam PLD, żeby nie musieć utrzymywać 2 
systemów - jednego produkcyjnego i jednego do testów - po prostu zaczynam 
upgrade od maszyny, na której krótkotrwałą utratę mogę sobie pozwolić i jak 
coś nie zadziała, to wiem z czym muszę się zmierzyć na innych.

> PS. Pewnym ułatwieniem, byłoby dodanie jakiegoś provides do glibca i
> zliba --with pax, ale nie za bardzo widzę co musiało by mieć odpowiednie
> requires - bo kernel-pax to trochę bez sensu, a paxctl, to pewnie by się
> automatycznie odinstalowało :-)

Ja bardzo chętnie zobaczę w PLD glibc'a z obsługą PaX'a, pod warunkiem jednak, 
że "miła niespodzianka" podczas upgrade'u mnie już nie spotka. Może to być 
zrobione nawet jako komentarz w specu: "TEJ ŁATKI POD ŻADNYM POZOREM NIE 
USUWAĆ !". Ten patch w niczym nie przeszkadza (powoduje zignorowanie błędu 
mprotect() jeśli errno == EACCES) - problem jest tylko jak go ktoś usunie
i takiego glibca puści się na buildery.

Pozdrawiam.
Piotr Zięcik.


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