error while loading shared libraries: Permission denied

Fórumok

nagios2-t akartam felrakni etch repobol. Ez huzott magaval mindent, amivel nem is lenne gond. Azota cp, ls hasonlo parancsokra ezt az error kapom:
ls: error while loading shared libraries: libacl.so.1: cannot enable executable stack as shared object requires: Permission denied
cp: error while loading shared libraries: libacl.so.1: cannot enable executable stack as shared object requires: Permission denied
ldd /lib/libacl.so.1 -> not a dynamic executable
Az apt ezekkel a csomagokkal nem tud mit kezdeni:
Errors were encountered while processing:
tzdata
libc6
libc6-dev
locales
Itt egy strace kimenet a /bin/cp -re:
http://securebox.hu/~efpe/strace
Google-zok mar jo ideje, de semmi megoldast nem lattam eddig.. Tobben panaszkodtak a grsecre, meg valami samba bugra, de semmi gyakorlati megoldast nem lattam.. Hatha valaki talalkozott mar vele.

Elore is koszi!

Udv,
eFPe`

Hozzászólások

Hatha mas is belefut.. Nu kozben problema megoldva, kideritettuk, hogy grsec nem nagyon szereti uj libc-t. Grsec nelkuli kernel nem volt, ezert maradt a dpkg --force-all.. Ez feltolt mindent, amit kellett, azota (eddig) rendben van a cumo..

Épp most futottam bele ilyenbe és ugyancsak grsec kernellel.
Nálam is libc6-ot frissített volna, de nem akar dpkg --force-all paranccsal se felmenni a csomag:(

# dpkg -i --force-all libacl1_2.2.41-1_i386.deb tzdata_2006l-1_all.deb libc6_2.3.6.ds1-4_i386.deb libattr1_2.4.16-1_i386.deb

(Reading database ... 42645 files and directories currently installed.)
Preparing to replace libacl1 2.2.41-1 (using libacl1_2.2.41-1_i386.deb) ...
Unpacking replacement libacl1 ...
Preparing to replace tzdata 2006l-1 (using tzdata_2006l-1_all.deb) ...
Unpacking replacement tzdata ...
Preparing to replace libc6 2.3.6.ds1-4 (using libc6_2.3.6.ds1-4_i386.deb) ...
ls: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
ls: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
ls: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
ls: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
Unpacking replacement libc6 ...
Preparing to replace libattr1 2.4.16-1 (using libattr1_2.4.16-1_i386.deb) ...
Unpacking replacement libattr1 ...
Setting up tzdata (2006l-1) ...
cp: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
dpkg: error processing tzdata (--install):
subprocess post-installation script returned error exit status 127
dpkg: also configuring `tzdata' (required by `libc6')
Setting up tzdata (2006l-1) ...
cp: error while loading shared libraries: libattr.so.1: cannot enable executable stack as shared object requires: Permission denied
dpkg: error processing tzdata (--install):
subprocess post-installation script returned error exit status 127
dpkg: also configuring `tzdata' (required by `libc6')

...és így tovább....

Van ötlete valakinek, hogy tudnám helyretenni libc6-t?

Én mysql 5-öt próbáltam feltolni, most már nálam is "meghaltak" a dolgok, ls-re a következőt kapom:

ls: error while loading shared libraries: libacl.so.1: cannot enable executable stack as shared object requires: Permission denied

Nem fogom a debiant szeretni. Érzem, ő se engem.

--
Kinek nem inge, ne vegye gatyára

Addig már eljutottam a felismerésben, hogy ott követtem el a hibát, hogy mysql 5-öt akartam feltelepíteni egy stable Debianra unstable-ről.

Kicsit már fáradt voltam, mikor ennek nekiálltam, ezért nem tudatosult bennem, hogy ez itt libc6-ot cserél meg grsec-es kernelt pakolt fel. Most ezt szívom. A libc6 csere miatt nincs cp és mv, amitől elhasal a dpkg.

Szóval: ilyen állapotban hogy tudom visszahozni a libc6/stable-t. A géphez csak távoli hozzáférésem van és szeretném nem tönkretenni :).

Mellék kérdés: bármit próbálok apt-gettel művelni, az minden esetben le akarja szedni a libx11-6-ot (package will be REMOVED), ettől persze ugyanúgy elhasal. Hogy tudom rávenni a csomagkezelőt, hogy ne akarja leszedni mindenáron a libx11-6-ot? Enélkül ugyanis tényleg meghiúsul bármilyen apt művelet.

Némi info:
Linux myserv 2.6.11.12-grsec #1 SMP Thu Jun 16 11:33:44 CEST 2005 i686 GNU/Linux

Konkrétan most itt nyal el az apt-get

=====
apt-get -f install

Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
libx11-6
0 upgraded, 0 newly installed, 1 to remove and 40 not upgraded.
3 not fully installed or removed.
Need to get 0B of archives.
After unpacking 1155kB disk space will be freed.
Do you want to continue? [Y/n]
(Reading database ... 29786 files and directories currently installed.)
Removing libx11-6 ...
mv: error while loading shared libraries: libacl.so.1: cannot enable executable stack as shared object requires: Permission denied
dpkg: error processing libx11-6 (--remove):
subprocess post-removal script returned error exit status 127
Errors were encountered while processing:
libx11-6
E: Sub-process /usr/bin/dpkg returned an error code (1)

=====

Előre is köszönöm a segítséget. Sajnos a Debianhoz nem nagyon értek, innen ered némi katasztrófa.

--
Kinek nem inge, ne vegye gatyára

kernel forrást tudsz még fordítani? Ha kikapcsolod a grsec/pax részt, akkor működni fog. Ha nem, akkor vmi live/boot cd, és beszerzel egy kernel forrást. Az új kernellel elindítod a debiant, s akkor vissza tudod pakolni a régi csomagokat (ez utóbbit nem követtem el, ha nem trivi, más majd segít :))

Milk megoldása segített végülis. Most úgy tűnik (lekopogom), hogy minden rendben. Sikerült a libc6-ot visszaállítani és ettől egy csomó binutil azonnal futásképessé vált (ismét).

Az eredeti naív ötletem mysql5 csomagkezelőből történő telepítése így siklott ki. A rendszer stabilizálása után inkább forrásból forgattam magamnak mysql5-öt. De lelkemben ott a szomorúság.

--
Kinek nem inge, ne vegye gatyára