Could not read pid file i shm_open(...): Permission denied mogu se pojaviti tijekom istog neuspjelog pokretanja Squida. Imenuju različite resurse. Ispravljanje vlasništva direktorija predmemorije samo po sebi ne ispravlja nijedno od njih.

Na Linuxu je POSIX objekt dijeljene memorije obično prikazan pod /dev/shm. Njegov vlasnik i način pristupa su važni. Predmet koji je ostavio drugi identitet izvršavanja može zato prouzročiti neuspjeh kasnijeg procesa, čak i kada je squid.conf čitljiv i priključak za slušanje slobodan.

Rekonstruirajte kako je ova instanca pokrenuta

Usporedite uobičajeno pokretanje usluge s bilo kojim ručnim pokretanjem korištenim tijekom rješavanja problema. Ručno pokrenut proces i pakirana usluga mogu koristiti različite korisnike, putanje ili konfiguracijske datoteke. Utvrdite je li druga instanca Squida još aktivna prije nego predmet smatrate zastarjelim.

Zatim pročitajte točnu radnju koja nije uspjela. Pogreška PID-a odnosi se na konfigurirano mjesto PID-a i njegov nadređeni direktorij. Pogreška zapisnika odnosi se na datoteku ili direktorij zapisnika. Pogreška inicijalizacije predmemorije odnosi se na pohranu. Pogreška shm_open odnosi se na imenovani objekt dijeljene memorije i može uključivati i sigurnosnu politiku primijenjenu na proces.

Za svaki resurs usporedite potreban pristup u izvršavanju s trenutnim vlasnikom i načinom. Ako se uobičajena dopuštenja čine dovoljnima, pregledajte odgovarajuće dokaze odbijanja u SELinuxu ili AppArmoru. Samo “Permission denied” ne pokazuje koji je sloj odbio pristup.

Ispravite vlasništvo bez stvaranja drugog problema

Držite račun izvršavanja usklađenim s konfiguracijom usluge instalacije. Prebacivanje svega na nobody može pokvariti pristup pomoćnih alata i unijeti novo neslaganje s datotekama kojima upravlja usluga.

Ni brisanje svakog objekta nalik Squidu u /dev/shm nije dobar prvi potez. Imenovani objekt može pripadati aktivnoj instanci. Čišćenje, kada je potrebno, treba ciljati potvrđeni napušteni resurs uz zaustavljenu pogođenu uslugu, a zatim pokretanje kroz uobičajeni mehanizam usluge.

Koristan rezultat je dosljedan model pokretanja i vlasništva. Pokretanje jedne naredbe kao root dok pogreška ne nestane može ostaviti sljedeće rutinsko ponovno pokretanje s posve istim problemom.

Povezani članci