Fórum Ubuntu CZ/SK
Ostatní => Ubuntu Server => Téma založeno: mallox 08 Dubna 2009, 15:56:37
-
zdravim vas..
mam takovy problemik..ktery trval asi uz delsi dobu, ale narazil jsem na nej vcera..na serveru co mi bezi bych rad rozchodil nginx jako primarni server a potrebuji k tomu mcache (python), ktere se musi zkompilovat a tady se prokazal problem..gcc neni naistalovane..kdyz zadam gcc tak vrati
The program 'gcc' can be found in the following packages:
* gcc
* pentium-builder
Try: sudo apt-get install <selected package>
-bash: gcc: command not found
sudo apt-get install gcc
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
binutils gcc-4.2 libgomp1
Suggested packages:
binutils-doc autoconf automake1.9 bison flex gcc-doc gcc-multilib gdb libtool make manpages-dev gcc-4.2-doc gcc-4.2-locales gcc-4.2-multilib
libgcc1-dbg libgomp1-dbg libmudflap0-4.2-dev libmudflap0-dbg
Recommended packages:
libc6-dev libc-dev
The following NEW packages will be installed:
binutils gcc gcc-4.2 libgomp1
0 upgraded, 4 newly installed, 0 to remove and 28 not upgraded.
Need to get 0B/2076kB of archives.
After this operation, 9150kB of additional disk space will be used.
Do you want to continue [Y/n]? Y
E: Sub-process /usr/bin/dpkg returned an error code (2)
sudo dpkg --purge gcc
dpkg - warning: ignoring request to remove gcc which isn't installed.
sudo apt-get check
Reading package lists... Done
Building dependency tree
Reading state information... Done
dpkg --reconfigure -a nepomohl, vse jak bylo (restart byl proveden)
var/lib/dpkg/available jsem odstranil, taktez nepomohlo (sic jsem udelal zalohu, ale jak tak koukam, .bak soubor je prazdny)
apt-get build-dep dpkg - ta sama chyba
vedel by prosim nekdo co s tim?
da se udelat kompletnejsi vypis chyby ? napr na kterem balicku to krachuje? dekuji
-
Zkontroluj stav balíků, třeba dpkg -l | grep -v '^ii'
Taky můžeš zkusit použít zálohy v adresáři /var/lib/dpkg/ (ty s příponou -old)
-
ahoj..
tak obnova old verze zadny vysledek neprinesla..
ten grep vratilDesired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version Description
+++-=====================================-===========================-============================================
rc exim4 4.69-2 meta-package to ease Exim MTA (v4) installat
rc exim4-base 4.69-2 support files for all Exim MTA (v4) packages
rc exim4-config 4.69-2 configuration for the Exim MTA (v4)
rc exim4-daemon-light 4.69-2 lightweight Exim MTA (v4) daemon
rc nbsmtp 1.00-4 Simple MTA to send your mails to another mai
ri nginx 0.5.33-1 small, but very powerful and efficient web s
tak problem asi bude v nginx, nejde odinstalovat ani nic s tim neudela..ted to hlasi chuby code (1)
by me zajimalo kolik tech kodu muze byt :-D
-
Zkus tedy nejdřív pře/od-instalovat nginx, dal jsem tu dohromady příkazy od nejjemnějšího po mírně drsnější :) Pokud jeden příkaz dává chybu, zkus prostě další.
(vše přes sudo)
apt-get update
apt-get --purge nginx
apt-get -f install
Pokud ten balíček potřebuješ (a odstranění se podařilo, apt-get už nedává chyby), zkus pak znovu update a instalovat, měla by být k dispozici novější verze (0.6.*)
Jestli to pořád nefunguje, hoď sem ty chyby, co to píše, zkusíme ještě něco vymyslet.
-
sudo apt-get purge nginx
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
nginx*
0 upgraded, 0 newly installed, 1 to remove and 28 not upgraded.
After this operation, 606kB disk space will be freed.
Do you want to continue [Y/n]? Y
(Reading database ...
dpkg: serious warning: files list file for package `libgcc1' missing, assuming package has no files currently installed.
dpkg: serious warning: files list file for package `gcc-4.2-base' missing, assuming package has no files currently installed.
36341 files and directories currently installed.)
Removing nginx ...
Stopping nginx: invoke-rc.d: initscript nginx, action "stop" failed.
dpkg: error processing nginx (--purge):
subprocess pre-removal script returned error exit status 1
Errors were encountered while processing:
nginx
E: Sub-process /usr/bin/dpkg returned an error code (1)
nginx je zastaveny, na stopro nebezi..
jinak ty prikazy jsem jiz skousel, nepomahaji..
dokonce apt-get -f [remove nebo purge] nginx..:(
-
Nějak to nemůže čistě ukončit. Dej tady výpis z
ps -A | grep nginx
ls -l /var/run/nginx*
Jestli ten proces opravdu neběží, a přesto se apt-get zasekává, můžeš zkusit ten balík odstranit manuálně, jestli nikdo neporadí nic lepšího. Je to ale trochu riskantní. Tak se ještě rozmysli ;)
-
mallox@web:~$ ps -A | grep nginx
nevrati nic
mallox@web:~$ ls -l /var/run/ngingx*
ls: cannot access /var/run/ngingx*: No such file or directory
ja to asi udelam nasledovne, pockam na 9.04 a udelam reinstal..nebo zkusim Debian..ted vysla 5 :)))..ale to se bojim, ze s nim bude o hodne vic prace :(
-
Nevzdávej to ;) Přišel bys o veškerou legraci :)
Mrkni se do adresáře ls -l /var/lib/dpkg/info/nginx.*
Měl by tam být soubor nginx.list. V něm najdeš seznam nainstalovaných souborů. Vymaž je (samozřejmě jen odpovídající soubory, ne např. celý adresář /etc). Následně vymaž i ty soubory nginx.*. (Nebo radši přesuň někam jinam, ať máš zálohu.)
Dále jdi do adresáře /var/lib/dpkg, je tam soubor status. Zálohuj ho sudo cp status status_zaloha
Otevři si soubor status v nějakém textovém editoru a najdi si část odpovídající balíčku nginx. Celou ji vymaž tak, aby zbyl jeden prázdný řádek mezi předchozím a následujícím odstavcem. Ulož. Paksudo apt-get -f install
Napiš, jak to dopadlo.
-
sudo apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra ....
Suggested packages:...
The following NEW packages will be installed:...
0 upgraded, 14 newly installed, 0 to remove and 28 not upgraded.
Need to get 0B/10.9MB of archives.
After this operation, 44.7MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
dpkg: syntax error: unknown group `Debian-exim' in statoverride file
E: Sub-process /usr/bin/dpkg returned an error code (2)
vse odstraneno dle navodu, restartovano..
predpokladam stejny posup na exim :)
zkusim, dam vedet..
mimochodem..kde ses toto vsechno naucil? jako myslim strukturu - kde co, jak s tim nakladat..:)
-
Možná ty eximy nebudou dělat problémy :) Problémy si děláme asi teďka sami těmi hackerskými zásahy ;) Pokud ten exim budeš chtít odstranit, zkus to vždy nejdřív klasicky přes apt-get remove...
Nejdřív bych ale řešil tu chybu s statoverride, aby to dpkg vůbec fungovalo - buď použij zálohu, co sis udělal, když si nahrazoval soubor statoverride tím *-old na začátku. Nebo - asi lépe - tady dej výpis z dpkg-statoverride --list # co tam vlastně v tom souboru máme
sudo find /etc /usr /var -iname '*nginx*' # pro kontrolu, jestli tam opravdu nic z nginx nezůstalo
-
dpkg-statoverride --list
root Debian-exim 0640 /etc/exim4/passwd.client
root postdrop 02555 /usr/sbin/postqueue
root mlocate 2755 /usr/bin/mlocate
root sasl 660 /etc/sasldb2
postfix postdrop 02710 /var/spool/postfix/public
root postdrop 02555 /usr/sbin/postdrop
root sasl 710 /var/run/saslauthd
sudo find /etc /usr /var/ -iname '*nginx*'
/etc/rc6.d/K20nginx
/etc/rc1.d/K20nginx
/etc/rc3.d/S20nginx
/etc/rc5.d/S20nginx
/etc/rc0.d/K20nginx
/etc/rc4.d/S20nginx
/etc/rc2.d/S20nginx
ten old jsem tam dal uz docela davno..
ty posledni updaty jsem delal uz s tim old..
nevykaslem se na to?:))
9.04 to jisti..
a Lenny take :)
-
nevykaslem se na to?:))
9.04 to jisti..
a Lenny take :)
To záleží na Tobě :) Myslím si, že už si blízko rozhřešení... A získané vědomosti se Ti mohou v 9.04 i lenny, hodit...
dpkg Ti hlásí, že neexistuje skupina Debian-exim v souboru statoverride. Zkontroluj i ostatní vlastníky a skupiny v tom výpisu a vymaž celý řádek tímto způsobem, např.sudo dpkg-statoverride --remove /etc/exim4/passwd.client
Až to budeš mít, zkus nainstalovat eximsudo apt-get install exim4
Jestli to konečně (což by mělo : ) neháže žádné (vážné) chyby, a exim se nainstaloval, tak zase ten exim vyčisti sudo apt-get purge exim4
Podobně to můžeš udělat i u ostatních balíčků, kde Ti to píše chyby (a la "rc", serious warning apod.)
Nakonec dokonči odinstalaci nginx takto:sudo update-rc.d nginx remove
-
YUUUHUUU!:)
funguje..:))
chlape, ty jsi buh!!
co pro tebe na oplatku mohu udelat?:)
-
Nic. Mě to bavilo. Sám jsem se taky dost naučil, když jsem zkoušel simulovat ty chyby, co Ti to psalo.
Takže taky díky za spolupráci, bez Tebe by to nešlo.
-
Jak jsi provadel tu simulaci?
A kde ses to tedy vseco naucil?:)
Jestli bys mel zajem, tak za nejakou dobu hodlam na pcguru.cz spoustet blog, tak pokud zadny nemas a chtel bys, tak se muzem domlouvit.
<volitelne_jmeno>.pcguru.cz ;)
-
Jak jsi provadel tu simulaci?
Nainstaloval jsem si na zkoušku ten povedený nginx a různě ho trápil. Mazal mu konfiguráky, měnil post-remove skripty a tak. To bylo horší. Lehčí to bylo s tím dpkg: když psal, že mu chybí list soubory, zkusil jsem je na zkoušku (v /var/lib/dpkg/*.list) smazat, jestli je to opravdu ono. Nebo dopsat do statoverride nějaký řádek s neexistující skupinou. Atd.
Hodně jsem se naučil tady na fóru, no a pak google, man, apropos. Hodně člověku pomůže znalost angličtiny. Považuju se ale spíš za začátečníka: mrkni se, jak jsem dlouho registrovaný, moc to není... ;)
-
asi na to mas cas ;)
ale to je dobre, jen tak dal..
jeste jednou dekuji!
ja to vetsinou resim cestou nejmin narocnou na cas..asi zvyk z windows ::)