Laser Office s.a.s di Magnaterra Alessandro & C.

Archive for 21 aprile 2009

resolv.conf – alcuni appunti

Posted by xer su 21 aprile 2009


resolv.conf

A volte, per chi installa una distribuzione linux, sopratutto per chi è alle prime armi o è veramente la ‘prima volta’ con Linux, si trova
nettamente spiazzato quando da una semplice shell non si riesce a ‘pingare’ uno degli hosts più famosi come ad esempio http://www.google.com

Nessun panico, se Linux è installato correttamente occorre solo verificare se sono stati configurati opportunamente i DNS che si occupano di risolvere gli “host name”, di questa risoluzione se ne occupa il file ‘resolv.conf‘ allocato sotto /etc

Diamo un occhiata al file:

/etc/resolv.conf

# resolv.conf di xernet.net
# revisione del 15.05.2008
domain xernet.net

# utilizziamo i DNS di Tin
nameserver 195.31.190.31
nameserver 194.243.154.62

Spieghiamo rapidamente l’utilizzo della voce ‘domain‘ come potete vedere, ho aggiunto il mio dominio ‘xernet.net‘, se dalla macchina con il sucitato resolv.conf si prova ad effettuare un ping all’host chiamato per esempio ‘pippo’ potrebbe darsi che non essendo un host di tipo pubblico non è risolvibile dai DNS di Tin, dopo avere tentato di ricercare il nome host ‘pippo’ con i DNS di Tin, la macchina tenterà di risolvere l’hostname ‘pippo’ aggiungendo il dominio, in questo caso xernet.net, pertanto il ping diventerà ‘pippo.xernet.net‘ ricercando così un FQDN (full qualified domain name).

A questo punto parliamo di un host appartenente al dominio xernet che per essere risolvibile e di conseguenza pingabile, perlomeno dovrebbe essere presente nei files hosts o domain.txt allocati sotto /etc

# /etc/hosts
# /etc/domain.txt

esempio di host o domain.txt:

pippo 192.168.20.60

Una nota a riguardo dei files hosts o domain.txt, la soluzione di inserire manualmente i nomi hosts in detti files è applicabile solo quando si hanno da gestire una realtà di poche di macchine, ma quando si parla di una LAN di una certa entità è auspicabile installare e configurare un DNS (Bind) anche non autoritativo, per gestire in modo dinamico la popolazione dei pc presenti nella vostra LAN.

Per quanto riguarda i DNS da utilizzare come nameservers, per accedere ad internet occorre utilizzare i DNS del proprio ISP di collegamento ad internet, non tutti i DNS sono accessibili, mi piace però considerare anche soluzioni alternative, come ad esempio opendns, i quali sono nameservers free, rimando al sito per maggiori info:

http://www.opendns.org/

Annunci

Posted in Appunti liberi *nix | Contrassegnato da tag: , , | Commenti disabilitati su resolv.conf – alcuni appunti

il kill di un processo, a volte non va buon fine

Posted by xer su 21 aprile 2009


A volte è necessario ‘uccidere’ un processo, di fatto il comando da eseguire è il kill

# kill ‘numero_PID’

A volte è impossibile riuscire a killare un processo, a volte il comando molto più invasivo # kill -9 ‘numero_PID’ dovrebbe risolvere, ma prima di killare un processo, sarebbe interessante scoprire perchè non si riesce a fermarli. In questi casi, solo i processi che possono essere in coda di esecuzione (run queue) possono ricevere i segnali di kill, pertanto, se non è possibile killare il processo, le cause possono essere:

  1. Il processo è bloccato in uno stato di attesa del disco (disk wait), ciò è possibile verificarlo eseguendo un comando ‘ps‘ e lo stato di disk wait è raffigurato dal flag D nella colonna STAT.
    Questo può indicare un problema hardware con l’hard disk oppure con il controller dell’hard disk, se si parla di un NFS montato, potrebbero essere problemi di congestione di rete.
  2. Il processo è sospeso (SIGSTOP). In questo caso è possibile verificarlo sempre con il nostro amico ‘ps‘ e lo stato di SIGSTOP è raffigurato dal flag T sempre nella colonna STAT.
  3. Un altro caso di impossibiltà di kill del processo potrebbe essere lo status di ZOMBIE. A volte il processo è concluso (terminated) ma il processo che lo ha generato (processo padre) invece è ancora attivo, questo può essere causato da errori di programmazione del processo che lo ha richiamato. Tale stato può essere visualizzato, sempre tramite ‘ps‘ e nella colonna STAT il processo in questione è contrassegnato  da una Z.

Le cause di processi bloccati ed unkillable possono essere anche altre, ma queste tre sono le più comuni.
Basta utilizzare il comando ‘ps’ e controllare la colonna STAT, in quella colonna sarà segnalato il perchè un processo è bloccato. Un altro comando utile per queste necessità è ‘top‘.

Alcuni esempi di ‘ps‘:

# ps -ef (linux)
# ps -auxww (prettamente per FreeBSD)

# man ps
oppure
# man top

# man kill

per avere maggiori ragguagli sui comandi.

Posted in Appunti liberi *nix | Contrassegnato da tag: , , | Commenti disabilitati su il kill di un processo, a volte non va buon fine

 
%d blogger hanno fatto clic su Mi Piace per questo: