Squid nem indul

 ( j_szucs | 2007. január 2., kedd - 0:54 )

Adva volt egy üzemelő squid.

Aztán sajnos frissítettem SuSE 9.3-ról 10.1-re; és azóta nem indul a squid: először arra panaszkodott, hogy nem tudja írni a cache-t (permission denied).

Erre - gondoltam - mindent a squid user tulajdonába adok a /squid-ben:
#chown -R squid /squid
Az eredmény ugyanaz: a cache nem írható.

Erre - gondoltam - mindent törölve tiszta helyzetet teremtek:
# rm -R /squid/*
# chown -R squid /squid
# squid -z
2007/01/01 23:16:21| Creating Swap Directories
FATAL: Failed to make swap directory /squid/cache: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.

Aztán kínlódtam vele még egy keveset:
# vi /etc/squid/squid.conf
(squid_effective_user nobody beírása)
# chown -R nobody /squid
# squid -z
2007/01/01 23:16:21| Creating Swap Directories
FATAL: Failed to make swap directory /squid/cache: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.

Meg még egy keveset:
# vi /etc/squid/squid.conf
(squid_effective_user szucs beírása)
# chown -R szucs /squid
# squid -z
2007/01/01 23:16:21| Creating Swap Directories
FATAL: Failed to make swap directory /squid/cache: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.

Így sem indult, pedig ha "szucs" user-ként jelentkezem be, akkor az garantáltan tudja írni a /squid mappát.

És még egy kis kínlódás:
#su -l szucs
#mkdir /squid/cache
#ls -l /squid
drwxr-xr-x 2 szucs users 4096 2007-01-01 23:54 cache
#exit
#squid -z
2007/01/02 00:04:17| Creating Swap Directories
FATAL: Failed to make swap directory /squid/cache/00: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.

Mi az isten ez???

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

-

umask, mask ? configban ilyesmi esetleg.
(Szabad hely?)

"umask, mask ? configban ilyesmi esetleg."

A squid conf-ban nincs semmi ilyesmi (csak az acl-ekre, de az más tészta).

"Szabad hely?"

#df
...
/dev/hdb12 605164 12 574412 1% /squid
...
Vagyis a /squid partíció jelenleg teljesen üres. Minekutána a k*rva squid nem hajlandó megtölteni :-(((
És ugye, rw-ra van becsatolva, mivel a szucs user képes írni. Csak a squid nem képes írni, ha a cache_effective_user az a bizonyos szucs user. Dögöljek meg ha értem :-(((

---
Mondjon le!

A Gentoo init script igy csinál cache direket:
/usr/sbin/squid -z -N -D

File rendszernek csak nincsenek spec. attributamia :)

Probáltál -e olyan gyalázatott elkövetni, hogy root -ra állitod az effektiv usert, a squid könyvárat pedig -R 777 re, csak egy próba erejéig ?

#/usr/sbin/squid -z -N -D
2007/01/02 09:33:11| Creating Swap Directories
FATAL: Failed to make swap directory /squid/cache/00: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.

"Probáltál -e olyan gyalázatott elkövetni, hogy root -ra állitod az effektiv usert, a squid könyvárat pedig -R 777 re, csak egy próba erejéig"
Külön-külön igen.
A root cache_effective_user-re kioktatott, hogy root-ként nem szabad indítani, majd kilépett.
A chmod ugo+rwx /squid-re meg maradt a fenti "Permission denied" üzenet.

"File rendszernek csak nincsenek spec. attributamia :)"
Itt az fstab mostani, vonatkozó sora:
...
/dev/hdb12 /squid ext2 user_xattr 1 2
...
Eredetileg "acl,user_xattr" volt benne, de azzal se működött, meg ezzel se.

---
Mondjon le!

biztos, hogy ezt a konfig file-t használja?
-----
Si vis pacem, para bellum...

A 9.3-ban még ez volt a squid config fájlja.
Másrészt meg: a /squid/cache elég egyedi hely amit én adtam meg. Úgyhogy - hacsak nem csinált a suse a régi config fájlomból egy másolatot valahová - nyilvánvalóan az én konfig fájlomat használja.

Amúgy a "squid_effective_user" az előző hozzászólásomban csak egy elírás, ami kizárólag a hozzászólást érinti, a valóságban a squid.conf-ban természetesen "cache_effective_user"-nél adtam meg a usereket. Bocs.

---
Mondjon le!

A jogok (chmod) is rendben vannak? SELinuxot hasznalsz? Annal elofordul hogy egy-ket konyvtar-buzeralas (atnevezes/letrehozas/owner+jog-megvaltoztata's utan nem ugy fog menni, ahogy szeretnenk. Akkor asszem csagy egy `setfiles /squid`-ot kell kiadni, e's jo lesz.

strace?

--
trey @ gépház

Hát... Van, de nem igazán tudom, hogy pontosan mit is keressek benne.

Azt mindenesetre elárulja az strace, hogy a squid valóban a /etc/squid/squid.conf konfig fájlt használja, vagyis a jó fájlt szerkesztettem.
Aztán jön benne egy csomó "config file parsing"; és a végén a cache létrehozási bukta:

munmap(0xb7f95000, 4096) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=866, ...}) = 0
write(2, "2007/01/02 10:59:01| Creating Sw"..., 472007/01/02 10:59:01| Creating Swap Directories
) = 47
clone(FATAL: Failed to make swap directory /squid/cache/00: (13) Permission denied
Squid Cache (Version 2.5.STABLE12): Terminated abnormally.
CPU Usage: 0.000 seconds = 0.000 user + 0.000 sys
Maximum Resident Size: 0 KB
Page faults with physical i/o: 0
child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7c5bae8) = 4868
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, [{WIFSIGNALED(s) && WTERMSIG(s) == SIGABRT}], 0) = 4868
waitpid(-1, 0xbfa4acb8, 0) = -1 ECHILD (No child processes)
exit_group(0) = ?
Process 4867 detached

Azt viszont nem tudom, hogy hogyan állapíthatom meg az strace kimenetéből, hogy a squid valóban a "szucs" user jogaival fut-e (a "user" és az "uid" szavakra greppelve ugyanis nem találtam benne semmi szembetűnőt).

Szerkesztés:
Vagyis mostmár gyanítom, hogy ennek a sornak:
geteuid32() = 1000
valami köze lehet a cache_effective_user-hez. Az 1000 u.i. a "szucs" user uid-je.

---
Mondjon le!

Adj neki legalabb egy -f kapcsolot is, akkor latni fogod, mit muvelnek a child process-ek.

Ez segít?

rm -rf /squid/cache/*
chown nobody /squid/cache
squid -z

--
trey @ gépház

Nem segített; már az elején próbáltam nobody-ra, és egy rendes shell-el rendelkező cache_effective_user-re is átkonfigurálni a squid-et, de egyikkel se működött.

Közben egy rövid időre sikerült működőképessé tenni a squid-et: megfigyeltem, hogy az eredeti /var/cache/squid mappát hajlandó inicializálni (a /squid/cache-et meg nem; pedig az ls -l szerint teljesen azonosak voltak a jogosultságai a két mappának).
Erre az inicializált /var/cache/squid mappát átmásoltam a /squid/-be, és átneveztem /squid/cache-re. Hasonlóképpen a /var/log/squid mappát is.
(cp -R -p /var/cache/squid /squid/; mv /squid/squid /squid/cache; cp -R -p /var/log/squid /squid/; mv /squid/squid /squid/log).
Az így létrejött /squid/cache mappát nem csak használni, hanem inicializálni is hajlandó volt a squid.

Úgyhogy, csodák csodája, a squid ezek után ragyogóan működött.

Kb. egy napig.

Tegnap ugyanis egyszer csak ismét nem indult többé; és a hiba már megint ugyanaz: "storeUfsDirOpenSwapLog: Failed to open swap log" és kilépés. A cache pedig ismét inicializálhatatlan.

Az most már látszik, hogy a squid teljes legyalulásával, majd újratelepítésével "meggyógyítható" a dolog, de az is nagyon valószínű, hogy röviddel a /squid partícióra átkonfigurálás után ismét elromlana.
Jó lenne tudni, mi okozhatja a problémát, mert a squid-et szeretném egy neki "dedikált", külön partíción tartani (a /var partíción meg amúgy sincs elég hely neki).

---
Mondjon le!

lehet hogy marhaság, de a /var/log/squid ból ha csinálsz egy symlinket ami a /squid/cache -ra mutat akkor se képes inicializálni?

Ez lesz a következő amit megpróbálok, ha gépközelbe kerülök.

---
Mondjon le!

chown nobody:squid /asd/sdf ?

Ezt hogy érted? Adjam a squid csoport tulajdonába a gyökérpartíciót (/) ?!? Azért ez elég rizikós lenne :-(. És értelmetlen is, mert "squid" csoportom nincs; csak "squid" userem van)
Nincsenek /asd és /sdf mappáim sem.

---
Mondjon le!

Tiszta lámaság, de nem működött a symlinkeléssel se, úgyhogy maradnak a squid fájljai a /var partíción, ahol - úgy látszik - a 10.1-en egyedül működőképesek.

Igaz, emiatt le kellett csökkentenem a cache méretét 400M-ról 100M-ra, de ez még jót is tett a sebességének :-)

---
Mondjon le!

a problema ugyanez, csak ubuntu 16.04-en.

otlet?

nekem nem oldodik meg, akarhova rakom a cache dir-t.

--
FBK

Kedves nekromanta, ez már egy 9 éves topic. Illik újat nyitni. http://i.imgur.com/55kBhi6.jpg