Newsgroup: it.comp.os.linux.iniziare
Titolo: comandi da konsole

Chiedo scusa se mi ripeto, spero che la mia richiesta precedente sia passata 
innoservata, qualcuno sa spiegarmi questo perche da konsole se mi loggo 
come root ad ogni comando che lancio (in questo caso guarddog) mi dice 
sempre:
bash: guarddog: command not found
mentre se lancio lo stesso comando dalla stessa posizione però come utente 
funziona però non posso metterci le mani perchè il programma richiede i 
privilegi di root.
Grazie francesco

 mentre se lancio lo stesso comando dalla stessa posizione però come utente
Perchè sicuramente non è settato nel path di root mentre in quello di utente
si. I path li trovi in .bash_profile nella home directory.
Puoi fare così:
da utente
$ type guarddog
restituirà il percorso del file, per esempio
/usr/local/guarddog/bin
vai come root, apri .bash_profile e, in fondo al file, aggiungi:
export PATH:$PATH:/usr/local/guarddog/bin
Matteo

Francesco wrote:

        soluzione empirica:
        1) whereis  " nome comando che non funziona "
        2) cd /percorso indicato dall'output punto 1
        3) su root
        4) ./"nome comando che non funziona"
        inoltre 
        5) echo $PATH (obbligatorio il maiuscolo)
        6) nu libro su linux
        saluti
-- 
-------------------------------------------------------------
SLACKWARE ... THE BEST !!
-------------------------------------------------------------

Francesco wrote:

Root e utenti normali hanno dei PATH (posti in cui vengono cercati
i comandi) diversi.
Tipicamente, /usr/local/.., /usr/games,  e la directory attuale (.)
non sono nel PATH di root
Le directory con comandi di sistema /sbin , /usr/sbin, ... non 
sono nel PATH degli utenti normali
ciao, Andrea

         4) ./"nome comando che non funziona"
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified
guarddog: cannot connect to X server :0.0
e qui mi son fermato perchè non so cosa significhino quelle scritte.
 ciao Francesco

 
Fammi capire bene la Konsole dove scrivo i comandi come utente ha una PATH 
dove sono i comandi che dovrebbe essere diversa da quella di root, quini 
anche se accedo come root non trovo i comandi perchè manca la PATH.
Giusto?
ciao, Francesco

 
qua mi son perso, come lo apro .bash_profile? con un editor qualunque? e 
dove si trova questo file?
Ciao Francesco

 Fammi capire bene la Konsole dove scrivo i comandi come utente ha una PATH
il path è una variabile di ambiente. Per vederla usa
echo $PATH
per vederle tutte usa
env
Matteo

 dove si trova questo file?
sotto la home directory, quindi per un utente è /home/nomeutente, per root
/root; per verderlo devi dare un
ls -a
è un file nascosto e ls semplice non lo mostra.
Matteo


Significa che è un programma grafico (spero che su sappia che programma è,
visto che lo vuoi lancire, perchè io non lo conosco ma mi bastano questi
messaggi).
Significa due cose:
1-hai lanciato l'interfaccia grafica come utente, vuoi lanciare
l'applicazione come root (con un 'su' per esempio)
2-lo vuoi lanciare da console senza aver avviato l'interfaccia grafica (e
questo è più probabile). Avvia l'interfaccia grafica (si chiama 'X') con il
comando 'startx', quindi carica una console (te lo ritrovi da qualche
parte), poi lancia l'applicazione.
Matteo

Francesco wrote:

Tutte le volte che avvii una shell (da konsole, da xterm, da console 
virtuale, cliccando un'icona, ...) viene letta la variabile d'ambiente 
$PATH che contiene l'elenco delle directory in cui cercare i comandi.
Ogni utente può avere una propria PATH impostandola in $HOME/.bash_profile
o può variare temporaneamente quella della shell in cui sta lavorando (basta 
dare PATH=$PATH:/nuova/dir e export $PATH per propagare un po' la
modifica).
Se non si modifica nulla, root e gli utenti normali hanno due PATH diverse.
Se dai l'indirizzo completo dell'eseguibile, questo viene trovato ed 
eseguito anche se non è nella PATH.
man bash per maggiori dettagli
ciao, Andrea

Francesco wrote:

significa che tu il server X sulla tua macchina in questo momento
accetta "ordini" solo dall'utente che ha aperto la seduta grafica (tu).
Quindi, se un altro gli chiede di aprire una finestra sul display :0
(anche se è root), lui si rifiuta.
Con il comando host puoi dare ad altri (o root può prendersi) il
permesso di usare il tuo schermo.
Ad es. èutile, su reti locali, per impedire che un singolo utente
"buontempone" innondi gli schermi di tutti i colleghi :-)
ciao, Andrea

 parte), poi lancia l'applicazione.
Ora mi pare di aver capito, sto usando SuSE 8, prima usavo Mandrake 9 che 
non mi ha dato tutti questi problemi, da shell potevo diventare root e fare 
tutto quello che volevo.
Grazie
Ciao Francesco

 è un file nascosto e ls semplice non lo mostra.
scusa la mia ignoranza ma il file si chiama proprio bash_profile? Perche 
sotto /home/nomeutente ho dato ls -a e gli unici due file con richiamo a 
bash sono:
bash_history e bashrc
ciao Francesco

 e bashrc
.bashrc è simile a .bash_profile tranne qualcosina che non ricordo. Se non
sbaglio puoi mettere i comandi da lanciare al login anche in quel file (ma
non so di preciso); qualcuno mi corregga se sbaglio.
Se non erro man bash dovrebbe darti qualche dettaglio al riguardo, vedi a
fine testo.
Matteo

 tutto quello che volevo.
Anche con suse e tutte le altre da shell puoi diventare root, basta
assicurarsi di aver dato
export DISPLAY=:0
dopo aver fatto il su
Matteo

 
Scusa il ritardo ma ho dovuto reinstallare mandrake perchè con suse non mi 
trovavo bene.Guardog mi sembra fatto abbastanza bene, io l'ho scoperto 
grazie a linux pratico dove c'era un articolo che spiegava come 
configurarlo.
Trovi alcune indicazioni anche su manualinux 
www.tivedotonico.it/manualinux/index.php
ciao
Francesco