./+DEINSTALL: Permission denied
Miroslav Lachman
000.fbsd at quip.cz
Sat May 27 19:27:10 CEST 2006
pri portupgrade / pkg_deinstall / pkg_delete narazim u nekterych portu
na hlasku jako je tahle:
pkg_deinstall -v roundcube-0.1.20060518
---> Deinstalling 'roundcube-0.1.20060518'
./+DEINSTALL: Permission denied
pkg_delete: deinstall script returned error status
pkg_delete: 1 package deletion(s) failed
---> Listing the results (+:done / -:ignored / *:skipped / !:failed)
! roundcube-0.1.20060518 (pkg_delete failed)
---> Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
Jsem prihlasen jako root. Me prvni kroky vedly na Google, kde jsem nasel
par postu se stejnym problemem, ale krome workaroundu tam nikdo
nezminoval to, proc tomu tak je. (a z informaci, co tam poskytnul
tazatel to ani vytusit neslo). Ja si myslim, ze je to na 99.9% tim, ze
mam /var/db primountovan s option noexec a ten +DEINSTALL script je
samozrejme ve /var/db/pkg/jmenoportu/+DEINSTALL, tudiz se ho nepovede
spustit.
/dev/ad0s1e on /var/db (ufs, local, noexec, nosuid, soft-updates)
Drive jsem si podobneho chovani nevsimnul, ale rekl bych, ze se
+DEINSTALL asi zacal u mnou instalovaneho SW pouzivat az nekdy v
posledni dobe. Ty options pro mount tam mam z "bezpecnostnich" duvodu -
zkratka pokud mam pocit, ze nekde nemaji byt spustitelne soubory, tak
nevidim duvod, aby se z toho oddilu daly spoustet. Do ted jsem mel za
to, ze na /var/db jsou vazne jen "databazove" soubory, ktere se
nespousteji. Ted bohuzel vidim, ze tam jsou uz i spustitelne soubory.
Ze je ta hlaska zpusobena tim mountem si nejsem jisty na 100%, protoze
to mam na produkcnim stroji, kde si za chodu vazne nechci hrat s
remountem oddilu, na kterem je i MySQL databaze.
Nicmene by me ted od zkusenejsich zajimalo, jak to do budoucna resit?
Vykaslat se uplne na noexec? (prida vubec nejakou realnou bezpecnost,
kdyz se jakykoliv script stejne da spustit zavolanim "sh
/var/db/spatny_script.sh"). Presunout /var/db/pkg na jiny oddil, ktery
nema noexec a do /var/db na nej udelat symlink?
Otravovat nekoho s zadosti o upravu, aby se ./+DEINSTALL nevolal primo,
ale pres zmineny "sh /var/db/pkg/jmenoportu/+DEINSTALL"?
Nejake jine reseni?
Predem diky za nazory
Miroslav Lachman
More information about the Users-l
mailing list