Ergebnis 1 bis 9 von 9

Thema: Linux/passwd: User für postgres

  1. #1
    Rolf Tschan ist offline Neuer Benutzer
    Registriert seit
    23.06.2011
    Ort
    Gunten, Bern, Switzerland, Switzerland
    Beiträge
    25

    Frage Linux/passwd: User für postgres

    Mein Eintrag für postgres sieht wir folgt aus (/etc/passwd):
    Code:
    postgres:x:108:113:PostgreSQL administrator,,,:/usr/lib/postgresql/8.4/bin:/bin/bash
    a) Ist das vernünftig?

    b) Habe ich DESWEGEN einige für mich unerklärliche Probleme?

    c) Wie sieht das bei Euch (und problemlos funktionierendem PG) aus?

    PS: Man sieht - ich bin kein Linux-Crack. Aber ich bin lernfähig

  2. #2
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.055

    Standard

    Warum nimmst du nicht einfach das Paket deines Betriebssystems und lässt selbiges alles notwendige erledigen?
    Den Benutzer im "bin" Verzeichnis enden zu lassen ... na ja, wird funktionieren, ist aber keine geschickte Wahl.
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  3. #3
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    791

    Standard

    Wenn du es selbst kompiliert hast solltest du es unter /usr/local/.. plazieren, dann wird es auch vom Paketmanager in Ruhe gelassen.

    Gruß Uwe
    Have a lot of fun!

  4. #4
    Rolf Tschan ist offline Neuer Benutzer
    Registriert seit
    23.06.2011
    Ort
    Gunten, Bern, Switzerland, Switzerland
    Beiträge
    25

    Standard

    Na, Ihr seid mir noch Freunde: Kritik ja, aber nicht wie ich's am Besten einrichten soll

    Nein, zurück zum Ernst.

    1. Wo soll ich den User "postgres" denn SONST landen lassen? In /usr/lib/... ist PG installiert (worden). Soll ich's in passwd leer lassen? Kannst du mir bitte ein Beispiel hinstellen?

    2. Nein, ich hab's nicht selbst kompiliert, sondern mittels apt-get installiert. Es ist automatisch in /usr/lib/ gestrandet.

    Mühsam finde ich, dass ich (nach "su postgres") für die Utilities immer diese langen Verzeichnisse eingeben muss und nicht einfach "pg_ctl" oder "initdb" eingeben kann. Kann mir vielleicht jemand sagen (Beispiel zeigen), wie ich mir das vereinfachen könnte, OHNE den in passwd von Euch kritisierten Eintrag? Wie gesagt: Ich fahre mit Debian/Linux.

    Was mir verdächtig vorkommt, ist die Meldung "Could not change to root" (s. Beispiel):
    Code:
    postgres@nas:/root$ /usr/lib/postgresql/8.4/bin/pg_ctl --help
    could not change directory to "/root"
    pg_ctl is a utility to start, stop, restart, reload configuration files,
    report the status of a PostgreSQL server, or signal a PostgreSQL process.
    
    Usage:
    ...ff...

  5. #5
    akretschmer ist gerade online Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.467

    Standard

    Zitat Zitat von Rolf Tschan Beitrag anzeigen
    Na, Ihr seid mir noch Freunde: Kritik ja, aber nicht wie ich's am Besten einrichten soll

    Nein, zurück zum Ernst.

    1. Wo soll ich den User "postgres" denn SONST landen lassen? In /usr/lib/... ist PG installiert (worden). Soll ich's in passwd leer lassen? Kannst du mir bitte ein Beispiel hinstellen?

    2. Nein, ich hab's nicht selbst kompiliert, sondern mittels apt-get installiert. Es ist automatisch in /usr/lib/ gestrandet.

    Mühsam finde ich, dass ich (nach "su postgres") für die Utilities immer diese langen Verzeichnisse eingeben muss und nicht einfach "pg_ctl" oder "initdb" eingeben kann. Kann mir vielleicht jemand sagen (Beispiel zeigen), wie ich mir das vereinfachen könnte, OHNE den in passwd von Euch kritisierten Eintrag? Wie gesagt: Ich fahre mit Debian/Linux.

    Was mir verdächtig vorkommt, ist die Meldung "Could not change to root" (s. Beispiel):
    Code:
    postgres@nas:/root$ /usr/lib/postgresql/8.4/bin/pg_ctl --help
    could not change directory to "/root"
    pg_ctl is a utility to start, stop, restart, reload configuration files,
    report the status of a PostgreSQL server, or signal a PostgreSQL process.
    
    Usage:
    ...ff...
    Fall für Re: could not change directory to "/root" ?

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  6. #6
    Rolf Tschan ist offline Neuer Benutzer
    Registriert seit
    23.06.2011
    Ort
    Gunten, Bern, Switzerland, Switzerland
    Beiträge
    25

    Standard

    Super, Andreas! Mit "su - postgres" ist dieses Problem verschwunden. Und wieder habe ich was gelernt

    Doch die langen Verzeichnisnamen muss ich noch immer eingeben. Und wie ich passwd am besten einrichte weiss ich auch noch immer nicht. :::-(

  7. #7
    Gisman ist offline Erfahrener Benutzer
    Registriert seit
    20.01.2006
    Ort
    Pfalz
    Beiträge
    791

    Standard

    Um die langen Pfade wegzukriegen mußt du den Pfad zum Programm der Pfad-Variablen hinzufügen. also etwa so:

    export PATH=$PATH:/pfad/zum/programm

    Gruß Uwe
    Have a lot of fun!

  8. #8
    Rolf Tschan ist offline Neuer Benutzer
    Registriert seit
    23.06.2011
    Ort
    Gunten, Bern, Switzerland, Switzerland
    Beiträge
    25

    Standard

    Danke Uwe.

    Doch: So viel war mir auch schon klar, doch ich weiss nicht WIE und WO ich das tun soll. Es soll ja automatisch passieren, nach dem Einloggen (also nach "su - postgres").

    Ich hab's jetzt mal hingebastelt, indem ich in /etc/profile, unmittelbar vor "export path" dies eingebaut habe (108 = postgres):

    Code:
    if [ "`id -u`" -eq 108 ]; then
      PATH="/usr/local/bin:/usr/bin:/bin:/usr/lib/postgresql/8.4/bin:/usr/local/games:/usr/games"
    fi
    Das funktioniert zwar (yipee!), doch ich bin nicht so überzeugt, dass dies der richtige Ort dafür ist.

  9. #9
    Rolf Tschan ist offline Neuer Benutzer
    Registriert seit
    23.06.2011
    Ort
    Gunten, Bern, Switzerland, Switzerland
    Beiträge
    25

    Standard

    OK. Ich zeige hier mal, wie ich das jetzt gemacht habe. Vielleicht haben andere ja eine ähnliche Frage, dann können sie hier eine (EINE) Antwort finden:

    1. In /etc/passwd eingetragen/geändert:
    Code:
    postgres:x:108:113:PostgreSQL administrator,,,:/home/postgres:/bin/bash
    2. Dann ein Verzeichnis /home/postgres/ erstellt. Owner und Group = postgres. Mit rwxr-xr-x.

    3. Dort drin eine Datei .profile wie folgt erstellt:
    Code:
    # /home/postgres/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
    # exists.
    # see /usr/share/doc/bash/examples/startup-files for examples.
    # the files are located in the bash-doc package.
    
    # the default umask is set in /etc/profile; for setting the umask
    # for ssh logins, install and configure the libpam-umask package.
    #umask 022
    
    # if running bash
    if [ -n "$BASH_VERSION" ]; then
        # include .bashrc if it exists
        if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
        fi
    fi
    
    # set PATH so it includes user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
        PATH="$HOME/bin:$PATH"
    fi
    
    # rts 2011-08-05 >
    PATH="$PATH:/usr/lib/postgresql/8.4/bin"
    
    function mypath(){
        old=$IFS
        IFS=:
        printf "%s\n" $PATH
        IFS=$old
    }
    # rts 2011-08-05 <
    
    *) Meine speziellen Anpassungen für PG sind rot gekennzeichnet, das Andere ist sozusagen Standard. Die Funktion mypath kann ich nach einem "su - postgres" aufrufen: Sie zeigt mir den gegenwärtigen PATH an; schön lesbar aufbereitet. Nach einem Upgrade kann das hilfreich sein.

Ähnliche Themen

  1. passwd zerschossen (user postgres reset?)
    Von Marlon im Forum Benutzer- & Rechteverwaltung
    Antworten: 5
    Letzter Beitrag: 10.08.2011, 19:43
  2. postgres, passwd bringt nichts
    Von CenText im Forum Installation von PostgreSQL
    Antworten: 5
    Letzter Beitrag: 18.01.2008, 11:47
  3. Linux User = postgres-User und Serverstart?
    Von buecherschrank im Forum Benutzer- & Rechteverwaltung
    Antworten: 2
    Letzter Beitrag: 20.10.2007, 11:02
  4. user postgres could not be created:the user account already exist
    Von praios im Forum Installation von PostgreSQL
    Antworten: 1
    Letzter Beitrag: 31.01.2007, 07:48
  5. wo ist der postgres user? (mac)
    Von GRD im Forum Sonstige Installationsprobleme
    Antworten: 1
    Letzter Beitrag: 28.04.2006, 20:55

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum