PostgreSQL 9.x database server - start problem (solucija)

UREDNIK
Učlanjen(a)
26.09.2010
Poruka
992
Ovaj tutorijal je za korisnike Ubuntu distribucija u koji su integrisali Kali Linux alate kao i za Kali Linux sisteme gde su korisnici kreirali dodatni (ne-root) korisnički nalog, a koji imaju problem prilikom pokretanja određenih alata čije instaliranje odnosno pokretanje zahteva prethodno startovanje PostgreSQL 9.1 (9.x) database servera.

Da bi mogli instalirati i/ili kasnije pokrenuti pojedine alate (metasploit, armitage i sl.), potrebno je prethodno pokrenuti PostgreSQL 9.1 database server komandom:
sudo service postgresql start

Kod ne-root korisničkih naloga se javlja problem i dobijamo poruku:

* Starting PostgreSQL 9.1 database server
* Error: Could not create log file /var/log/postgresql/postgresql-9.1-main.log
[fail]
BPG5jrY.png


Prolem rešavamo na sledeći način:

1. Kreiramo fasciklu postgresql u /var/log direktorijumu i u njoj postgresql-9.1-main.log fajl, potreban PostgreSQL serveru radi logovanja odnosno pokretanja, sledećom komandom iz terminala:
sudo mkdir -p -v /var/log/postgresql && sudo touch /var/log/postgresql/postgresql-9.1-main.log
1mS2rkS.png

2. Preuzimamo kontrolu nad kreiranom fasciklom i fajlom komandom:
sudo chown ime_grupe:korisničko_ime /var/log/postgresql && sudo chown ime_grupe:korisničko_ime /var/log/postgresql/postgresql-9.1-main.log
primer:
sudo chown shakajaada:shakajaada /var/log/postgresql && sudo chown shakajaada:shakajaada /var/log/postgresql/postgresql-9.1-main.log

3. Sada dodeljujemo kompletnu RW kontrolu nad postgresql-9.1-main.log fajlom jednim od sledeća dva načina

Prvi način: komandom iz terminala
sudo chmod o+rw /var/log/postgresql/postgresql-9.1-main.log

Drugi način: otvorite /var/log/postgresql direktorijum i desnim klikom na postgresql-9.1-main.log fajl kasnije na Properties na dnu kontekstnog menija otvorite dijalog gde u panelu Permissions dodelite RW dozvole kao na slici ispod i zatvorite dijalog.

6OGPtOO.png


Sada, komandom
sudo service postgresql start
pokrećemo server,
odnosno komandom
sudo service postgresql stop
ga zaustavljamo.


piB1avH.png


Ovo je privremena solucija tako da će prilikom restartovanja sistema fascikla postgresql unutar /var/log/ direktorijuma kao i fajl postgresql-9.1-main.log koji se nalazi u njemu biti obrisan od strane sistema!
 
UREDNIK
Učlanjen(a)
26.09.2010
Poruka
992
PostgreSQL 9.x database server - start problem (trajno rešenje)
Ukoliko želite da se posle svakog re-startovanja sistema postgresql-9.1-main.log fajl automatski sačuva uradite sledeće:

otvorite kao root /etc/rsyslog.d/50-default.conf fajl komandom
sudo gedit /etc/rsyslog.d/50-default.conf

i dodajte sledeću liniju
local0.* -/var/log/postgresql/

Primer:
Kod:
#  Default rules for rsyslog.
#
#       For more information see rsyslog.conf(5) and /etc/rsyslog.conf

#
# First some standard log files.  Log by facility.
#
auth,authpriv.*       /var/log/auth.log
*.*;auth,authpriv.none     -/var/log/syslog
#cron.*         /var/log/cron.log
#daemon.*       -/var/log/daemon.log
kern.*         -/var/log/kern.log
#lpr.*         -/var/log/lpr.log
mail.*         -/var/log/mail.log
#user.*         -/var/log/user.log
local0.* -/var/log/postgresql/

Posle toga pronađite ove linije pri dnu fajla
Kod:
daemon.*;mail.*;\
news.err;\
*.=debug;*.=info;\
*.=notice;*.=warn |/dev/xconsole
i preuredite da izgledaju ovako (koristite sistem copy/paste da izbegnete greške!!!)
Kod:
daemon.*;mail.*;\
news.err;\
*.=debug;*.=info;\
*.=notice;*.=warn |/dev/xconsole;\
local0.none

Sačuvajte promene i zatvorite editor.


Prilikom svakog startovanja sistema kreiraće se gore pomenuti fajl i PostgreSQL server će se pokrenuti kada za to bude bilo potrebe!

Napomena:

U slučaju da ste u Kali Linux-u napravili NON-root korisnički nalog, prilikom kucanja komande
sudo gedit /etc/rsyslog.d/50-default.conf
otvoriće se prazan dokument! U tom slučaju samo nalepite sadržaj ispod, sačuvajte izmene i zatvorite fajl.
local0.* -/var/log/postgresql/
daemon.*;mail.*;\
news.err;\
*.=debug;*.=info;\
*.=notice;*.=warn |/dev/xconsole;\
local0.none

Posle restartovanja bićete u mogućnosti pokrenuti postgresql servis...
 
Natrag
Top