[>a2396.html>] [<a2394.html<] [^a2.html^]


Capitolo 309.   La condivisione delle risorse in rete

309.1   Montare i filesystem di macchine in rete

Ho una rete con indirizzi IP statici del tipo 192.168.x.x. Riesco a fare telnet fra le macchine ma non riesco però a montare il filesystem di un macchina sull'altra. Quando provo a fare mount mi appare un messaggio di errore:

mount: RPC: Program not registerd

mountd è presente nel file /etc/rpc ma non è in esecuzione sulla macchina e non lo trovo in /sbin (così come nfsd).

---------

Assicurati che:

/sbin/rpc.portmap

/usr/sbin/rpc.mountd

/usr/sbin/rpc.nfsd

vengano avviati all'avvio del sistema, controllando nei file rc*. Altrimenti prova ad avviarli manualmente e guarda se tutto funziona. Le directory da condividere vanno configurate in /etc/exports.

Per le varie opzioni ti rimando alla pagina di manuale:

$ man 5 exports[Invio]

309.2   Come faccio ad aprire una sessione X remota su un'altra macchina?

Vorrei usare il mio sistema come terminale X di un altra macchina. Come posso fare?

---------

Se vuoi usare la tua macchina come terminale grafico di un altro pc, puoi usare una sessione broadcast (fai attenzione che tutto viene passato in chiaro, password comprese). Poniamo che linux2 sia la macchina remota da cui avviare X, e linux1 la macchina su cui lavori (il terminale).

Questo è possibile se su linux2 è attiva una sessione xdm (gdm o kdm), per cui lanciando da una console virtuale:

$ X -indirect linux2[Invio]

dovresti vedere il logo di benvenuto. Naturalmente in questo caso stai usando linux1 come terminale X.

In pratica X è nato con questo scopo. Se una macchina rende disponibile il suo X, l'altra (o le altre) possono usare quell'ambiente per lavorare.

309.3   Come faccio ad aprire una applicazione X da un'altra macchina?

Vorrei accedere dalla mia macchina Linux ad un X presente su un'altra macchina; come posso fare?

---------

Innanzitutto sulla macchina dove ti trovi devi avere già una sessione X aperta; dai il comando:

# xhost +nomeserver[Invio]

con nomeserver si intende il nome o l'ip della macchina da cui vuoi attivare le applicazioni.

Fatto ciò, dalla macchina dove ti trovi fai telnet sull'altra con:

$ telnet nome_host[Invio]

esegui il login per collegarti alla stazione remota. Ora, a seconda della shell che hai sul sistema remoto, dai il comando:

# export DISPLAY=nome_tua_macchina:0.0[Invio]

se la shell è bash

# setenv DISPLAY nome_tua_macchina:0.0[Invio]

se la shell è cshrc

che dice all'host di inviare il client sul tuo monitor.

A questo punto fai partire il client, e lo vedrai sul tuo schermo.

Ovviamente la macchina remota deve avere il modo di capire a chi corrisponde nome_tua_macchina: o c'è quindi un DNS che gli dà l'informazione, o questa va messa in /etc/hosts, così:

xxx.xxx.xxx.xxx   nome.dominio     nome

309.4   Reindirizzamento del display di un utente su quello di un altro

Entro in X come utente, apro un terminale grafico e impartisco il comando:

# su -[Invio]

come faccio a questo punto a lanciare applicazioni come utente root? Ricevo degli errori.

---------

Da utente comune dai il comando:

$ xhost localhost[Invio]

poi da utente root dai:

# export DISPLAY=localhost:0.0[Invio]

così ridirezioni il display di root sull'attuale che è quello dell'utente, come se lo stessi facendo tra due macchine diverse.

Attenzione, prima di tutto ciò si deve avere già una sessione X aperta!

309.5   Montare una partizione di una macchina Solaris in rete

Mi trovo a dover montare una porzione di filesystem di una macchina Solaris con una Linux, che però non risulta tra le macchine autorizzate poiché appena attivata. Consultando i man ho trovato i file vfstab ed alcuni altri: in particolare /etc/dfs. Come posso fare?

Il file da modificare è dfstab in /etc/dfs. Poi devi dare il comando:

# shareall[Invio]

se la macchina è Solaris 2. Per Solaris 1 invece il file è in /etc/exports e il comando è:

$ exportfs -a.[Invio]

309.6   Copiare i file tra macchine in rete

Ho collegato due macchine in rete. Vorrei riuscire ad entrare nell'altra macchina e spostare file da una parte all'altra. Come faccio?

---------

Puoi considerare l'ipotesi di utilizzare gli r-command per eseguire shell e comandi in remoto. Devi creare nella directory principale (/) delle due macchine (o nella $HOME dell'utente che usi) il file .rhosts, nel quale dovrai inserire il sistema al quale permetti l'accesso e l'utente abilitato a farlo. Se vuoi consentire l'accesso a tutti ti basta dare:

# echo "+ +" > /.rhosts[Invio]

su entrambe le macchine.

A questo punto potrai dare:

# rlogin NOME_HOST[Invio]

per accedere all'altra macchina senza richiesta di login e password, e soprattutto potrai copiare file da un sistema all'altro senza FTP:

# rcp HOST_REMOTO:/home/pippo/* .[Invio]

oppure:

# rcp * HOST_REMOTO:/PATH[Invio]

LDR --- Copyright © 1999-2000 Gaetano Paolone --  bigpaul @ pluto.linux.it

[>a2396.html>] [<a2394.html<] [^a2.html^]