directory DATA di postgresql

4 risposte [Ultimo contenuto]
Ritratto di frippe12573
frippe12573
(Junior)
Offline
Junior
Iscritto: 24/01/2007
Messaggi: 35

Da root cambio i privilegi e la proprietà della cartella DATA (quella dove vanno tutti i dati di postgresql)
infatti con ls -l mi da che la dir è di proprietà dell'utente e gruppo postgres con rwx per tutti....sembrerebbe tutto ok...
al che do un comando per inizializzare la cartella come cartella dati di postgresql e ottengo questo:
postgres@cartoserver:~$ /usr/local/pgsql/bin/initdb -D /home/dati/data/
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale it_IT.UTF-8.
The default database encoding has accordingly been set to UTF8.

fixing permissions on existing directory /home/dati/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 24MB/153600
creating configuration files ... ok
creating template1 database in /home/dati/data/base/1 ... FATAL: could not link file "pg_xlog/xlogtemp.17349" to "pg_x log/000000010000000000000000" (initialization of log file 0, segment 0): Operation not permitted
child process exited with exit code 1
initdb: removing contents of data directory "/home/dati/data"

Se a questo punto ridò il comando ls -l sulla cartella vedo che il gruppo e gli altri utenti non hanno accesso in rwx.

Aggiungo cosa fondamentale per capire che la directory DATA sta in un HD con fs FAT32, montato in /carto e DATA sta in /carto/DATA

Grazie E.

Ritratto di franz
franz
(Collaboratore)
Offline
Collaboratore
Iscritto: 21/12/2005
Messaggi: 312

Prova a rimuovere la dir DATA creata a mano e a rifare l'initdb passando comunque quella come parametro: postgres dovrebbe crearla se non la trova.
Mi rimane il dubbio per i permessi su filesystem FAT32: perche` questa scelta? Per quanto ne so, potrebbe essere questo il tuo problema.
Franz

There are only 10 types of people in the world: those who understand binary and those who don't.

Ritratto di frippe12573
frippe12573
(Junior)
Offline
Junior
Iscritto: 24/01/2007
Messaggi: 35

Togliendo la dir data e passandoglielo dal comando cme da te suggerito, ottengo il solito risultato:
postgres@cartoserver:/$ /usr/local/pgsql/bin/initdb -D /carto/data/
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale it_IT.UTF-8.
The default database encoding has accordingly been set to UTF8.

creating directory /carto/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers/max_fsm_pages ... 24MB/153600
creating configuration files ... ok
creating template1 database in /carto/data/base/1 ... FATAL: could not link file "pg_xlog/xlogtemp.11309" to "pg_xlog/000000010000000000000000" (initialization of log file 0, segment 0): Operation not permitted
child process exited with exit code 1
initdb: removing data directory "/carto/data"

La scelta del fs FAT32 è data dal fatto che in questo HD ci devono andare anche altri dati oltre a quelli del db postgresql da condividere con winzoz.

Altri suggerimenti?

Grazie

E.

Ritratto di franz
franz
(Collaboratore)
Offline
Collaboratore
Iscritto: 21/12/2005
Messaggi: 312

Ma il SO Win e` 9x/Me ?
PostgreSQL non e` supportato su FAT32.
Penso che ti convenga creare una partizione ad hoc per il db su quel disco.
Non ho capito se anche la directory del db deve essere condivisa, ma potresti provare a formattare NTFS e usare ntfs-3g per accedere da linux... non ho mai provato ma potrebbe funzionare. Smile
HTH

There are only 10 types of people in the world: those who understand binary and those who don't.

Ritratto di frippe12573
frippe12573
(Junior)
Offline
Junior
Iscritto: 24/01/2007
Messaggi: 35

Si è formattato fat32 per win98.
Proverò a formattare ntfs.