[hp-ux]sendmail wil niet naar nieuwe logfile schrijven

Pagina: 1
Acties:

  • zomertje
  • Registratie: Januari 2000
  • Laatst online: 17-02 12:22

zomertje

Barisax knorretje

Topicstarter
Ik wil elke maand sendmail herstarten om naar een andere logfile te laten schrijven, dit om de logs niet te groot te laten worden. Sendmail wil echter niet naar nieuwe logfile schrijven nadat ik de deamon opnieuw gestart heb met het volgende:

/usr/bin/kill -HUP `head -1 /etc/mail/sendmail.pid`

Daarvoor heb ik netjes de oud logfile gemoved en een nieuwe logfile voor hem aangemaakt.

totale script:
code:
1
2
3
4
#!/usr/bin/ksh
/usr/bin/mv /var/adm/syslog/mail.log /var/adm/syslog/OLDmail.log
touch /var/adm/syslog/mail.log
/usr/bin/kill -HUP `head -1 /etc/mail/sendmail.pid`


Dit geintje werkt wel met de gewone syslog en de logging van lp(printen).

Het gaat hier niet om Linux maar om een HP-UX 10.20 machine met sendmail 8.24. Ik weet niet of er veel verschil in zit maar het zou kunnen.

Sendmail een gewone kill geven helpt ook niet trouwens.

Iemand tips?

het ultieme jaargetijde.... | #!/usr/bin/girl | Art prints and fun


  • _nethack
  • Registratie: September 2000
  • Laatst online: 08:25

_nethack

We're all MAD here

Je geeft (als root?) het commando touch om die file opnieuw aan te maken. Misschien moet je daarna nog met een chmod/chown zorgen dat de user waar de sendmail daemon onder draait lees- en schrijfrechten op die file krijgt.

(syslog en lpd draaien wellicht onder het root account, en sendmail niet)

Sometimes you just have to sit back, relax, and let the train wreck itself


  • zomertje
  • Registratie: Januari 2000
  • Laatst online: 17-02 12:22

zomertje

Barisax knorretje

Topicstarter
_nethack schreef op 27 september 2002 @ 16:11:
Je geeft (als root?) het commando touch om die file opnieuw aan te maken. Misschien moet je daarna nog met een chmod/chown zorgen dat de user waar de sendmail daemon onder draait lees- en schrijfrechten op die file krijgt.

(syslog en lpd draaien wellicht onder het root account, en sendmail niet)


schrijfrechten zijn er volgens mij, sendmail draait onder het root account

het ultieme jaargetijde.... | #!/usr/bin/girl | Art prints and fun


  • serkoon
  • Registratie: April 2000
  • Niet online

serkoon

mekker.

Niet moven maar kopieren en dan touchen?
(kost je wat meer schijfruimte ja, 't is sowieso slim om te zippen)

  • _nethack
  • Registratie: September 2000
  • Laatst online: 08:25

_nethack

We're all MAD here

Misschien als je sendmail helemaal stopt, dan de file mv-ed en touch-ed, en daarna sendmail weer starten. (Met een kill -HUP stopt ie helemaal niet, en blijft de logfile geopend. Waarschijnlijk blijft ie, ondanks de move/rename, naar de oude logfile schrijven??)

Sometimes you just have to sit back, relax, and let the train wreck itself


  • Broer
  • Registratie: Januari 2002
  • Laatst online: 19-12-2025
Onder *nix moet je nooit de logfiles verplaatsen of verwijderen als een proces draait, de enige goed manier is de volgende:

1- copieer de logfile naar een file met een nieuwe naam
2- truncate de bestaande file met het
> filename
(dus een ">" teken en vervolgens de naam van de file op een regel)
commando.
3 - te zijner tijd de logfiles die je gecopieerd hebt opruimen.

Het proces blijft schrijven naar dezelfe file (=inode) op disk, dus je hoeft je geen zorgen te maken over rechten of zo.

  • MyDyingBride
  • Registratie: November 2001
  • Laatst online: 19-04 20:18
Schrijft sendmail zijn log niet via syslog ?

edit:
Bij de methode die Broer omschrijft kan er wel eens een regeltje verdwijnen. Hier heb je bij de mv methode geen last van.

  • Broer
  • Registratie: Januari 2002
  • Laatst online: 19-12-2025
MyDyingBride schreef op 27 september 2002 @ 20:01:
...
Bij de methode die Broer omschrijft kan er wel eens een regeltje verdwijnen. Hier heb je bij de mv methode geen last van.
:) Klopt helemaal, maar als je de file moved naar bijvoorbeeld een ander filesystem, dan gebeurt er onder water een copy + delete en dan is de originele file weg, maar het proces blijft dan vrolijk naar de inode, dus naar disk, schrijven, waar je echt niet meer bij kan:

Dan ben je verder van huis, je filesystem blijft vollopen, maar je kan de file die groeit niet meer vinden.

  • MyDyingBride
  • Registratie: November 2001
  • Laatst online: 19-04 20:18
Broer schreef op 28 september 2002 @ 08:18:
[...]

:) Klopt helemaal, maar als je de file moved naar bijvoorbeeld een ander filesystem, dan gebeurt er onder water een copy + delete en dan is de originele file weg, maar het proces blijft dan vrolijk naar de inode, dus naar disk, schrijven, waar je echt niet meer bij kan:

Dan ben je verder van huis, je filesystem blijft vollopen, maar je kan de file die groeit niet meer vinden.
Je moet hem dan ook niet naar een ander filesysteem moven :)
En normaal gesproken moet een HUB signaal voldoende zijn om het proces de file te laten sluiten, zodat hij dan ook echt verwijderd wordt.

  • Broer
  • Registratie: Januari 2002
  • Laatst online: 19-12-2025
Ik heb nog even in de docs bij hp gekeken (docs.hp.com) daar staat een voorbeeld script, met een kill -1 commando (is dus kill -HUP) na een kopieer commando.
Er wordt alleen zo te zien niets opgeruimd, maar misschien start sendmail wel een nieuwe file na een HUP signaal.
#!/usr/bin/sh
# NEWSYSLOG: save only the last week's sendmail logging
#
cd /var/adm/syslog
mv mail.log.6 mail.log.7
mv mail.log.5 mail.log.6
mv mail.log.4 mail.log.5
mv mail.log.3 mail.log.4
mv mail.log.2 mail.log.3
mv mail.log.1 mail.log.2

cp mail.log mail.log.1

kill -1 `cat /var/run/syslog.pid`
bron hpdocs
klik op troubleshooting -> configuring and reading the sendmail log en dan ongeveer drie blz naar beneden scrollen.

  • MyDyingBride
  • Registratie: November 2001
  • Laatst online: 19-04 20:18
code:
1
kill -1 `cat /var/run/syslog.pid`


Zie je wel, toch syslog :)

  • igmar
  • Registratie: April 2000
  • Laatst online: 12-05 15:46

igmar

ISO20022

zomer schreef op 27 september 2002 @ 16:09:
Ik wil elke maand sendmail herstarten om naar een andere logfile te laten schrijven, dit om de logs niet te groot te laten worden. Sendmail wil echter niet naar nieuwe logfile schrijven nadat ik de deamon opnieuw gestart heb met het volgende:
Sendmail schrijft geen logs maar logt via syslog.

  • zomertje
  • Registratie: Januari 2000
  • Laatst online: 17-02 12:22

zomertje

Barisax knorretje

Topicstarter
igmar schreef op 28 september 2002 @ 12:28:
[...]


Sendmail schrijft geen logs maar logt via syslog.


Bij ons dus naar een mail.log file maar dat misschien ergens ingesteld zijn. Ik ga eens in die hp docs kijken waar Broer het over heeft(alleen die structuur van hp is soms zo irri :X )

bedankt voor het meedenken, ik vertel maandag wel verder :)

het ultieme jaargetijde.... | #!/usr/bin/girl | Art prints and fun


  • igmar
  • Registratie: April 2000
  • Laatst online: 12-05 15:46

igmar

ISO20022

zomer schreef op 28 september 2002 @ 19:53:

Bij ons dus naar een mail.log file maar dat misschien ergens ingesteld zijn. Ik ga eens in die hp docs kijken waar Broer het over heeft(alleen die structuur van hp is soms zo irri :X )

bedankt voor het meedenken, ik vertel maandag wel verder :)
De manual pag van syslog(d) zal daar wel uitkomst in moeten bieden, maar over het algemeen genomen staat het in /etc/syslog.conf. Facilty is mail, het default leven info.

Happy hacking :)
Pagina: 1