View Full Version : [HELP] Apache : Errore con STOP o START, apc...
Volevo riavviare apache x rendere effettive delle modifiche ma se tento d fare start stop restart o reload ottengo sempre lo stesso errore....
apc_sem_create: semget(0,...) failed: No space left on device
Ho letto in giro ke potrebbe essere dovuto alla cache di php (usata tramite il modulo php4-apc) MA nn ho capito esattamente qual'è il problema e come risolverlo....
TNK
UP, l'unica cosa ke ho trovato su google è questo :
semget() is failing because the system is out of semaphores. Look at the documentation of semsys:seminfo_semmni and semsys:seminfo_semmns
A me xò nn mi aiuta x niente
:(
l.golinelli
15-07-2004, 20:32
E se killi il tutto e fai un:
apachectl start
Originariamente inviato da l.golinelli
E se killi il tutto e fai un:
apachectl start
Ke diff c'è tra fare apache start e apachectl start ?
A parte questo quello ke mi preme è sapere da cosa dipende quel errore, se è 1 cosa grave ecc ecc
:)
Originariamente inviato da The X
Ke diff c'è tra fare apache start e apachectl start ?
A parte questo quello ke mi preme è sapere da cosa dipende quel errore, se è 1 cosa grave ecc ecc
:)
be'....sono i comandi standard di ripartenza apache!
apachectl start /apachectl stop... sono i piu' diffusi
prova a fare apachectl --help e vedi le soluzioni.
comunque il fatto che tu non possa scrivere di piu' mi fa pensare che hai qualcosa di pieno...che ne so...il log?
usa google per il messaggio d'errore :D
SZ
Originariamente inviato da sanxius
comunque il fatto che tu non possa scrivere di piu' mi fa pensare che hai qualcosa di pieno...che ne so...il log?
usa google per il messaggio d'errore :D
SZ
Cosa intendi x "qlc d pieno" ? La partizione /var dove stanno tutti i log è piena al 20%....
P.S. Prima d postare ho provato a cercare soluzione su google...
Originariamente inviato da The X
Cosa intendi x "qlc d pieno" ? La partizione /var dove stanno tutti i log è piena al 20%....
P.S. Prima d postare ho provato a cercare soluzione su google...
apc_sem_create: semget(0,...) failed: No space left on device
qualcosa di pieno...se leggi l'errore e' "failed: No space left on device"
il messaggio dice questo: hai riempito di brutto qualcosa su un dispositivo.
da google sembra che i semafori gestiti dalla APC soffrino di questa vulnerabilità... leggi questo:
"You're leaking semaphores, APC doesn't seem to always clean up after itself gracefully.
Do an "apachectl stop", then execute the following command:
ipcs -s -t | cut -f 1 -d " " | egrep "^[0-9]+$" | xargs ipcrm sem
WARNING: if you have anything else on your system that uses semaphores, this could be trouble! On my system it works fine, but on yours it might not.
Never do an "apachectl restart" or "apachectl configtest", as these seem to be guaranteed to leak semaphores. I think if you do "apachectl stop"and wait a few seconds, it actually cleans up properly. You have to get a clean slate first though, so stop apache and run the above command to clean up the mess, and from now on always stick to start and stop, never restart."
prova questo, ma ancora non hai detto che versione di apache hai?su che distro l'hai installata?
la 1.3 o la 2.0??? Io conosco meglio la 2.0 xche' ci ho lavorato sopra per la tesi, ti dico solo che la 1.3 e' piu' stabile solo xche' piu' vecchia e quindi piu' testata/corretta ... ma per le performance la 2.0 e' quella che vola a scheggia rispetto la 1.3, sopratutto se scegli il MPM Worker e non il PreFork (che e' quello 1.3 like).
spero di esserti stato d'aiuto.
ah la fonte dell'help e' questa:
http://lists.debian.org/debian-isp/2002/04/msg00042.html
Debian Woody + repository Security;
Apache 1.3.26;
CPU Barton 2500+ (80/85 % idle);
2 HD Maxtor 80Gb in Raid0 su controller Promise FastTrak100 TX4;
256Mb DDR266;
Se guardi qlc post sopra avevo anke io trovato su google il post sui semafori MA :
1) Non so cosa essi siano
2) Non so cosa sia APC
3) Prima d lanciare un comando a me sconosciuto (ipcs -s -t | cut -f 1 -d " " | egrep "^[0-9]+$" | xargs ipcrm sem) devo sapere cos'è e cosa fa x essere sicuro ke nn faccia danni
Scusa la paranoia ma questo mio webserver ha, allo stato attuale, circa 70.000 visite in 7 giorni d UP quindi se faccio danni il cliente mi scanna vivo :D
TNK
Originariamente inviato da The X
Debian Woody + repository Security;
Apache 1.3.26;
CPU Barton 2500+ (80/85 % idle);
2 HD Maxtor 80Gb in Raid0 su controller Promise FastTrak100 TX4;
256Mb DDR266;
Se guardi qlc post sopra avevo anke io trovato su google il post sui semafori MA :
1) Non so cosa essi siano
2) Non so cosa sia APC
3) Prima d lanciare un comando a me sconosciuto (ipcs -s -t | cut -f 1 -d " " | egrep "^[0-9]+$" | xargs ipcrm sem) devo sapere cos'è e cosa fa x essere sicuro ke nn faccia danni
Scusa la paranoia ma questo mio webserver ha, allo stato attuale, circa 70.000 visite in 7 giorni d UP quindi se faccio danni il cliente mi scanna vivo :D
TNK
Capisco... allora i semafori essenzialmente servono per gestire le priorita' di qualsiasi cosa (processi memoria, processi scrittura...ed e' una degli elementi cardine dei sistemi operativi piu' conosciuti come mutex... mutua esclusione.).
le APC sono una libreria utilizzata su Apache:
APC (Alternative PHP-cache) quindi a livello di programmazione apc_etcetc e' il comando :D
IPCS provides information on the ipc facilities for which the calling process has read acccess.
Quindi ti fa vedere i vari semafori, quali sono i processi che hanno l'accesso alla lettura.
"There were myriads of semaphore-arrays left, owned by the apache user.
# ipcs -s | grep apache
---> fa vedere quali sono gli array di semafori esistenti di apache.
(questo e' very very safe...)
Questa e' una soluzione che ho trovato, vedi ce ne sono tante... guardati la ipcs che e' per la tua soluzione, comunque credo che sia proprio un problema di semafori.
io non ti posso aiutare piu' di tanto, al max fatti un backup integrale e provalo... io non mi assumo nessuna responsabilità. :D
probabilmente c'e' un semaforo che locka il meccanismo di scrittura.
secondo me rimuovere sto semaforo ti risolve il problema
comunque sto ipcsetcetc di sopra non so che cosa va a fare... sperimentalo, o aspetti uno piu' esperto, sicuramente grep|cut|egrep stanno per selezionatori di quello che viene visualizzato, mentre xargs ipcrm sem non so cosa signfichino xche' sto pipe e' molto stringato ...
se tu metti come chiave di ricerca su google "apache ipcs" vedrai che ne trovi a bizzeffe sul tuo problema.
in bocca al lupo e fammi sapere.
(io non sono esperto per la 1.3, ma rimango ultraconvinto che e' un problema di semafori :D biiip :D)
Originariamente inviato da sanxius
Capisco... allora i semafori essenzialmente servono per gestire le priorita' di qualsiasi cosa (processi memoria, processi scrittura...ed e' una degli elementi cardine dei sistemi operativi piu' conosciuti come mutex... mutua esclusione.).
T chiedo, se puoi risp.mi, qlc-ina in + sui semafori perchè nn ho ancora ben chiaro 1 cosa :
Per i semafori esiste 1 demone ke associa ad ogni "cosa" un suo "numero d priorità" e quindi decide ki deve essere avviato prima e ki dopo ?
E' possibile ke in 1 dato momento nn c siano semafori attivi ?
Originariamente inviato da sanxius
le APC sono una libreria utilizzata su Apache:
APC (Alternative PHP-cache) quindi a livello di programmazione apc_etcetc e' il comando :D
Ora capisco xkè si è intasato il device del apc... :)
IPCS provides information on the ipc facilities for which the calling process has read acccess.
Quindi ti fa vedere i vari semafori, quali sono i processi che hanno l'accesso alla lettura.
"There were myriads of semaphore-arrays left, owned by the apache user.
# ipcs -s | grep apache
---> fa vedere quali sono gli array di semafori esistenti di apache.
(questo e' very very safe...)
[/quote]
2 cosine :
1) Se esiste un semaforo con proprietario un utente d sistema, che in teoria nn dovrebbe avere avviato xkè è l'utente che uso io x loggarmi da NON-root e/o per fare i test sicuri, dici ke può essere un semaforo rimasto lì e mai cancellato ?
2) L'output d ipcs nn mi fa vedere i servizi associati al dato semaforo quindi un grep apache mi da output nullo... Come mai ?
Un pezzo d output d ipcs -s è questo :
------ Semaphore Arrays --------
key semid owner perms nsems status
0x00000000 9633792 root 666 1
0x00000000 9666561 root 666 1
0x00000000 9699330 root 666 1
0x00000000 294915 root 666 1
0x00000000 327684 root 666 1
0x00000000 360453 root 666 1
0x00000000 491526 root 666 1
0x00000000 524295 root 666 1
Originariamente inviato da sanxius
Questa e' una soluzione che ho trovato, vedi ce ne sono tante... guardati la ipcs che e' per la tua soluzione, comunque credo che sia proprio un problema di semafori.
io non ti posso aiutare piu' di tanto, al max fatti un backup integrale e provalo... io non mi assumo nessuna responsabilità. :D
Scusa la domanda banale MA cosa intendi esattamente per "guardari la ipcs che è per la tua soluzione" ? :D
Ah.. cmq nn t preoccupare ke nn t incolperei d nulla in nessun caso.. è già tanto ke mi aiuti :P
Originariamente inviato da sanxius se tu metti come chiave di ricerca su google "apache ipcs" vedrai che ne trovi a bizzeffe sul tuo problema.
in bocca al lupo e fammi sapere.
(io non sono esperto per la 1.3, ma rimango ultraconvinto che e' un problema di semafori :D biiip :D)
Ora faccio ricerche + approfondite....
Originariamente inviato da The X
T chiedo, se puoi risp.mi, qlc-ina in + sui semafori perchè nn ho ancora ben chiaro 1 cosa :
Per i semafori esiste 1 demone ke associa ad ogni "cosa" un suo "numero d priorità" e quindi decide ki deve essere avviato prima e ki dopo ?
Quello che gestisce i semafori sono i demoni :D
Come poi siano implementati e' un altro discorso... :D
e io non so questo, di solito nel demone interessato c'e' di solito (penso che esista sempre) quello che gestisce le priorità e i tempi di utilizzo del programma... non e' tipo windows che se un programma ha priorità max va ad impallare il pc...
E' possibile ke in 1 dato momento nn c siano semafori attivi ?
Di quelli visibili si... ma ci sono poi quelli non visibili o per lo meno implementati a livello kernel o livelli bassi e non visibili...
Ora capisco xkè si è intasato il device del apc... :)
2 cosine :
1) Se esiste un semaforo con proprietario un utente d sistema, che in teoria nn dovrebbe avere avviato xkè è l'utente che uso io x loggarmi da NON-root e/o per fare i test sicuri, dici ke può essere un semaforo rimasto lì e mai cancellato ?
tutto e' possibile... magari quel programma prende funzioni di root e quindi funziona sempre...
2) L'output d ipcs nn mi fa vedere i servizi associati al dato semaforo quindi un grep apache mi da output nullo... Come mai ?
Non e' detto che sia apache il problema....
Un pezzo d output d ipcs -s è questo :
------ Semaphore Arrays --------
key semid owner perms nsems status
0x00000000 9633792 root 666 1
0x00000000 9666561 root 666 1
0x00000000 9699330 root 666 1
0x00000000 294915 root 666 1
0x00000000 327684 root 666 1
0x00000000 360453 root 666 1
0x00000000 491526 root 666 1
0x00000000 524295 root 666 1
Scusa la domanda banale MA cosa intendi esattamente per "guardari la ipcs che è per la tua soluzione" ? :D
Ovvero... mi sono spiegato male :D
man ipcs
ipcs --help
era questo che intendevo... lol
Ah.. cmq nn t preoccupare ke nn t incolperei d nulla in nessun caso.. è già tanto ke mi aiuti :P
Ora faccio ricerche + approfondite....
Ma il servizio Apache da cosa lo lanci?? a livello Non root? prova ad entrare come root e vedere come sono i semafori...
Che soluzioni hai tentato finora?
SZ
Originariamente inviato da The X
2 cosine :
1) Se esiste un semaforo con proprietario un utente d sistema, che in teoria nn dovrebbe avere avviato xkè è l'utente che uso io x loggarmi da NON-root e/o per fare i test sicuri, dici ke può essere un semaforo rimasto lì e mai cancellato ?
--------------------------------------------------------------------------------
Originariamente inviato da sanxius
tutto e' possibile... magari quel programma prende funzioni di root e quindi funziona sempre...
L'utente in questione è 1 utente d test quindi nn dovrebbe avere lanciato nulla, tantomeno qlc con privilegi da root.. Come faccio a sapere 1 dato semaforo a quale demone si riferisce ?
2) L'output d ipcs nn mi fa vedere i servizi associati al dato semaforo quindi un grep apache mi da output nullo... Come mai ?
[quote]
Non e' detto che sia apache il problema....
Beh, anke se fosse 1 altro il demone ke causa problemi nn lo saprei cmq se nn trovo 1 modo x mostrare anke i servizi associati ai semafori.... e cmq credo proprio ke il problema sia legato ad apache xkè è il php ke satura il device...la cache del php si riempe e blocca l'apm.....
Ma il servizio Apache da cosa lo lanci?? a livello Non root? prova ad entrare come root e vedere come sono i semafori...
Che soluzioni hai tentato finora?
Apache lo lancio ovviamente da root tramite init.d (run level 2) in modalità standalone; le operazioni ke ho descritto le ho sempre fatte da root...
Fin'ora l'unico modo x riuscire a stoppare e riavviare apache è tramite apachectl; se lancio, come facevo sempre prima, il normale apache start/stop/restart mi da l'errore d apc_sem_create
Originariamente inviato da The X
L'utente in questione è 1 utente d test quindi nn dovrebbe avere lanciato nulla, tantomeno qlc con privilegi da root.. Come faccio a sapere 1 dato semaforo a quale demone si riferisce ?
[/quote]
con il comando ps vedi i vari servizi... magari con pstree, xo' non posso garantirti niente xche' non so come funziona questa cosa.
Beh, anke se fosse 1 altro il demone ke causa problemi nn lo saprei cmq se nn trovo 1 modo x mostrare anke i servizi associati ai semafori.... e cmq credo proprio ke il problema sia legato ad apache xkè è il php ke satura il device...la cache del php si riempe e blocca l'apm.....
Apache lo lancio ovviamente da root tramite init.d (run level 2) in modalità standalone; le operazioni ke ho descritto le ho sempre fatte da root...
Fin'ora l'unico modo x riuscire a stoppare e riavviare apache è tramite apachectl; se lancio, come facevo sempre prima, il normale apache start/stop/restart mi da l'errore d apc_sem_create
tutto corretto... come vedi... tenta la via della mailing list.
Qui sembra che nessuno abbia esperienze a proposito...
A questo punto mi sa che dovresti postare questo problema nel forum dedicato alla cache php....
ho trovato sto mailing list che sembra quello ufficiale
9.2.8. <apc-cache@lists.communityconnect.com>
Inviare un e-mail a <apc-cache-request@lists.communityconnect.com> con il contenuto (non l'oggetto):
subscribe
tenta anche questa via..
http://pecl.php.net/package-info.php?package=APC
coraggio... chi smanetta su linux ha le palle per smanettare anche su altre cose :D
Ciao SZ
Riguardo ai semafori e ai device pieni d cui sopra volevo chiedervi 1 cosina...
Per caso linux memorizza i semafori in RAM ?
Perchè mi sono accorto ke sto quasi sempre a corto d ram (ne ho messi solo 256mb)...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.