Archivio

Posts Tagged ‘centos’

Tunnel via ssh per gestire il server postgresql con pgAdmin3

[201209 Aggiornamento] Altri tunnels:  ssh tunnel per accedere a servizi http, postgresql, samba in remoto

Tunnel via ssh per amministrare il server postgresql con pgAdmin

premessa è bene che l’autenticazione non sia di tipo ident per le connessioni del
localuser del server postgres.
Pentanto nel file pd_hda.conf di postgres (installazione standard di RedHat o Centos
/lib/pgsql/data/pg_hda.conf è preferibile settare l’opzione METHOD per gli indirizzi 127.0.0.1
da ident impostazione standard a md5

METHOD
host all all 127.0.0.1/32 md5

Utilizzo di ssh per creare il tunnel

Il server sql postgres comunica sulla porta 5432
pertanto qualora la porta locale 5432 fosse disponibile è possibile
utilizzare la stessa porta.
Il tunnel sarà impostato con il seguente comando

ssh -fNg -L 5432:localhost:5432 pluto@83.45.193.165

qualora la porta 5432 del computer locale non fosse disponibile è possibile indirizza verso altra porta
ad esempio la 8888 oppure la 5433 in questo caso il comando diventa:

ssh -fNg pluto@83.45.193.165 -L 8888:localhost:5432

quindi per la console interattiva

$ psql -h 127.0.0.1 -p 8888 postgres postgres

per pgdmin3 impostare host=127.0.0.1, port=8888 quindi user e database desiderati

 

Utilizzo di putty per creare il tunnel

Il programma putty disponibile sia per windows che per linux
offre un interfaccia grafica agevole per creare connessioni anche ti tipo ssh.

I passa da seguire sono:

  • impostare Hostname digitando l’indirizzo Ip o il nome del server da raggiungere.
  • selezionare SSH come Connection Type
  • indicare l’eventuale nome per salvare la sessione ( scelta consigliata )
  • utilizzare l’opzione Tunnels per impostare il tunnel ssh.
  • L’opzione Tunnels si trova nel menu SSH della category Connection dell’elenco a sinistra.
    Controllare che sia selezionato Local.
    Nel campo Source port inserire la porta del server nel nostro caso 5432
    Nel campo Destination inserire localhost:5432
    Quindi premere Add.
    Salvare e aprire la connessione.
Annunci

Downgrade postgresql 9.1.4 to postgresql 8.4.12 – Centos 5

aggiornamento 2012 maggio

postgresql  vai a:  PostgreSQL nel blog 

downgrade di postgresql dalla versione 9.1.4 alla 8.1.12 su server Centos 5 e necessario disporre di un backup ( dumpall ) del server postgresql.

mkdir /home/pgbck
chown postgres:postgres /home/pgbck
su - postgres
pg_dumpall > /home/pgbck/dumpalldb.sql
per avere solo le impostazioni globals 
pg_dumpall --globals-only > /home/pgbck/globals.sql

si può usare questo script per il backup dei singoli db

passiamo a root con su –

fermiamo il server con

service postgresql-9.1 stop

rinominiamo a scopo precauzionale il cluster della versione  9.1

mv /var/lib/pgsql/9.1 /var/lib/pgsql/9.1.old

rimuoviamo la versione 9.1

yum remove postgresql*

Adesso editiamo il file /etc/yum.repos.d/CentOS-Base.repo e commentiamo la riga  exclude=postgresql* che era stata inserita nella sezione upgrades per consentire installazione della versione postgresql 9.1

# exclude=postgresql*’

possiamo anche disinstallare il repo di postgres91 con

rpm -e  pgdg-centos92-9.1 ……

quindi svuotare e ripulire yum  con

yum clean all

quindi installiamo la versione postgresql84 per centos 5

yum install postgresql postgresql-server postgresql-contrib

inizializziamo  il server postgresql 8.4

service postgresql initdb

avviamo il server postgresql con

/etc/init.d/postgresql start

ripristinare la base dati del server sql caricare i dati dal file dumpall di backup creato

su – postgres

cd /home/pgbck

psql < dumpalldb.sql

per accedere alla console interattiva
psql

per l’elenco dei database caricati

\l

Altri post:

Upgrade postgresql 8.4 to postgresql 9.1 Centos 5

aggiornamento giugno 2012

postgresql  vai a:  PostgreSQL nel blog 

Esempio di upgrade di postgresql dalla versione 8.4.12 alla versione 9.1.4 in Centos 5.8.  L’upgrade di versione necessita della fase di dump/restore oppure dell’utilizzo di pg_upgrade ( questo dalla versione 9.0) per consentire la migrazione della base dati alla nuova versione.  Per poter utilizzare il pg_update deve essere supportata l’esecuzione in parallelo di postgresql come avviene in debian o Centos 6. Centos 5 putroppo non la supporta pertanto sarà necessario utilizzare il dump/restore.

Creare una directory di backups, procedere al dump degli oggetti globali (roles e tablespaces) e di tutto il server, volendo si possono salavare in automatico i singoli db:

mkdir /home/pgbck
chown postgres:postgres /home/pgbck
su - postgres
pg_dumpall --globals-only > /home/pgbck/globals.sql 
pg_dumpall > /home/pgbck/dumpalldb.sql
exit

I singoli db di postgresql 8.4 possono essere copiati utilizzando lo script nel link di seguito

Script per il backup dei database di postgresql

Fermiamo il servver postgresql

service postgresql stop

Visto che si tratta di upgrade di versione con cambi nella struttura dei dati possiamo conservare la directory dei dati di PostreSQL /var/lib/pgsql/data oppure al termine dell’upgrade rimuoverla

Per installare la nuova versione di postgresql utilizziamo  il repository yum per rpm. La pagina sotto  linkatar iposrta le varie combinazioni di distribuzione e versione postgresql

PostgreSQL RPM Repository (with Yum)

Installiamo il repository di postgresql 9.1 per  centos 5 – i386

cd /usr/local/src

wget http://yum.pgrpms.org/9.1/redhat/rhel-5-i386/pgdg-centos91-9.1-4.noarch.rpm
rpm -ivh pgdg-centos91-9.1-4.noarch.rpm

Adesso escludiamo postgrsql dal processo standard di update dei pacchetti editando il file etc/yum.repos.d/CentOS-Base.repo aggiungendo la riga

exclude=postgresql*’

nelle sezioni [base] [updates]

Controlliamo i pacchetti disponibili

yum list | grep 'postgresql'

nella lista saranno presenti pacchetti  postgres84 versione installata e i pacchetti della versione 91  di postgresql

adesso rimuoviamo la versione precedente postgresql84

yum remove postgresql84*

installiamo la versione postgresql91

yum install postgresql91 postgresql91-server postgresql91-contrib postgresql91-libs

inizializziamo la base dati e avviamo il server postgresql-9.1

service postgresql-9.1 initdb

service postgresql-9.1 start

su - postgres
psql < /home/pgbck/dumpalldb.sql

Ripristinare le modifiche ai files di configurazione /var/lib/pgsql/data/*.conf
in particolare postgresql.conf e pg_hba.conf

il file pg_hba.conf con le vecchie impostazioni può essere copiato dal precedente cluster che era stato rinominato:

cp /var/lib/pgsql/data/pg_hba.conf /var/lib/pgsql/9.1/data/pg_hba.conf

riavviamo

service postgresql-9.1 restart

controlliamo il risultato scorrendo la lista dei db importati

su – postgres

vacuumdb –all –analyze-only
psql
\l

controlliamo e/o Impostiamo l’avvio automatico e il runlevel

chkconfig --level 35 postgresql-9.1 on

Altri post:


								

Downgrade postgresql 8.4 to postgresql 8.1 – Centos 5

postgresql  vai a:  PostgreSQL nel blog 

downgrade di postgresql dalla versione 8.4 alla 8.1 su server Centos 5 e necessario disporre di un backup ( dumpall ) del server postgresql

mkdir /home/pgbck
chown postgres:postgres /home/pgbck
su - postgres
pg_dumpall > /home/pgbck/dumpalldb.sql
per avere solo le impostazioni globals 
pg_dumpall --globals-only > /home/pgbck/globals.sql

si può usare questo script per il backup dei singoli db

passiamo a root con su –

fermiamo il server con

service postgresql stop

rimuoviamo la versione 8.4

yum remove postgresql*

Adesso editiamo il file /etc/yum.repos.d/CentOS-Base.repo e commentiamo le righe exclude=postgresql* che erano state inserite per poter avere disponibile la versione postgresql 8.4

# exclude=postgresql*’

quindi installiamo la versione standard di postgresql per centos 5 che è una versione minor di 8.1

yum install postgresql postgresql-server postgresql-contrib

avviamo il server postgresql con

/etc/init.d/postgresql start

l’avvio sarà preceduto dall’inizializzazione

ripristinare la base dati del server sql caricare i dati dal file dumpall di backup creato

su – postgres
cd /home/pgbck
psql < dumpalldb .sql

per accedere alla console interattiva
psql

per l’elenco dei database caricati

\l

Altri post:

								

Centos 5 repositories – abilitare repository testing

Per abilitare Centos 5 testing

creare   file ‘CentOS-Testing.repo’  in /etc/yum.repos.d/

e inserire

[testing]
name=CentOS – $releasever – Testing
baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing

Il file  CentOS-Base.repo

con i repository   [base]  [updates] [extras] [centosplus] [contrib]

le sezioni [centosplus] e [contrib] sono disabilitate (enabled=0) attivarle utilizzando –enablerepo

ad esempio per visualizzare il contenuto del repository centosplus

yum –enablerepo=centosplus  list  | egrep  ‘centoplus’

 

#  CentOS-Base.repo
[base]
name=CentOS-$releasever – Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

#released updates
[updates]
name=CentOS-$releasever – Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

#additional packages that may be useful
[extras]
name=CentOS-$releasever – Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
# exclude=postgresql*

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever – Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#contrib – packages by Centos Users
[contrib]
name=CentOS-$releasever – Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

Installazione applicativi e gestione pacchetti con apt-get e dpkg in linux ubuntu debian

Debian e Ubuntu

Comandi per gestire i pacchetti  in Ubuntu, Debian e distribuzioni derivate: installare applicazioni eliminare,  cercare.

Comando dpkg

Installare un file .deb

sudo dpkg -i package_file.deb

Qualora ci siano problemi di dipendenze nell’installazione del pacchetto lanciare  di seguito

sudo apt-get -f install 

ed eventualmente nuovamente il comando  sudo dpkg -i package_file.deb

Rimuovere .deb file

sudo dpkg -r package_name

Per rimuovere pacchetti che danno problemi di rimozione con apt-get remove si può provare

sudo dpkg -P package_name

Cercare un pacchetto installato con dpkg

dpkg -l libgtk[0-9]* | grep ^i 

Visualizzare  tutto i pacchetti il software installato con dpkg

dpkg -get-selections 

Provare a riparare i pacchetti danneggiati

sudo dpkg --configure -a

Per elencare i pacchetti disponibili si può usare

sudo dpkg -l php*

Per elencare i pacchetti installati si può usare

sudo dpkg -l | grep php

Comando apt-get

apt-get ( advanced packagind tool è il gestore dei pacchetti standard della distribuzione Debian e anche della derivata Ubuntu

installare il pacchetto “package” con

sudo apt-get install package

cercare un pacchetto nella cache di apt-get

sudo apt-cache search mysql 

Per ottenere dettagli su un pacchetto utilizzare il comando

apt-cache policy mysql-server

Rimuovere il pacchetto “package” con

sudo apt-get remove package

Rimuovere il pacchetto package con tutti i files di configurazione

sudo apt-get --purge remove package

Rimuovere il pacchetto package con tutte le dipendenze inutilizzate

sudo apt-get autoremove package

Riparare le dipendenze dei pacchetti non soddisfatte

sudo apt-get -f install 

Convertire i pacchetti  .rpm

Convertire i pacchetti .rpm. in pacchetti .deb

sudo alien -k file.rpm

Repository importare chiave di autenticazione

Per importare la chiave di autenticazione di un repository utilizzare un comando del tipo che segue sostituendo con il numero della chiave le X :

gpg --keyserver keyserver.ubuntu.com --recv XXXXXXXX && gpg --export -a XXXXXXXX | sudo apt-key add -

Ubuntu – Debian

Controllare e risolvere eventuali errori o dipendenze rotte con:

sudo apt-get check 
sudo apt-get -f install

Provare a riparare pacchetti danneggiati

sudo dpkg --configure -a

Reinstallazione  ubuntu debian

Reinstallare da zero un sistema ubuntu o debian linux con tutti i pacchetti di una altra installazione.

Salvare la lista dei pacchetti in un file

sudo dpkg -get-selections > package_installed.txt

Utilizzare la lista dei pacchetti salvata per installare lo stesso software anche nel nuovo sistema

sudo dpkg -set-selections < package_installed.txt && apt-get dselect -upgrade

Ubuntu aggiornamenti ( update )

Per aggiornare la lista dei pacchetti disponibili

sudo apt-get update 

Scaricare e installare gli aggiornamenti per tutti i pacchetti installati

sudo apt-get upgrade 

Ubuntu upgrade di versione

Per aggiornare l’intero sistema ad una nuova versione

sudo do-release-upgrade

o

sudo apt-get dist-upgrade 

oppure è possibile digitare la combinazione Alt+F2 e scrivere

update-manager -d

Problemi ed errori installazione pacchetti: apt-get

Per quanto riguarda i problemi con i pacchetti abbiamo visto che è possibile provare a riparare i pacchetti danneggiati con:

sudo dpkg --configure -a

Inoltre che è possibile controllare e risolvere errori o dipendenze dipendenze non soddisfatte dei pacchetti con:

sudo apt-get check 
sudo apt-get -f install
Reading package lists... Error!
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_natty-security_restricted_binary-i386_Packages
E: The package lists or status file could not be parsed or opened.

Si può provare a risolvere usando :

sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update

Centos

yum install package
yum remove package
yum update

Risorse: