Newsgroup: it.comp.os.linux.iniziare
Titolo: stranezza di 'su' in RH 6.1

Quando faccio 'su' e immetto la password del super-utente il PATH mi
rimane quello dell'utente precedente, facendomi credere che siano
spariti certi comandi! Forse lo dice anche la documentazione di 'man',
ma non l'ho capito bene. Qualcuno sa come evitarlo? Grazie.
Michele D.

In un messaggio del Fri, 24 Mar 2000 18:10:21 GMT Michele D. scriveva:

La man page lo dice _sicuramente_ ma tu _sicuramente_ non l'hai letta.
$ su - root
-- 
Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).
<<      LINUX: the choice of a GNU generation     >>
<<   For my real address... ask the Balrog.       >>
* Sostenete la Lega per la Soppressione dei Troll *

ma non l'ho capito bene. Qualcuno sa come evitarlo? Grazie.
devi usare 'su -' .
-- 
 +-------------------------------------------+
 |        Enrico Bodo  -   PhD student       |
 |      University of Rome "La Sapienza"     |
 |          Department of Chemistry          |
 +-------------------------------------------+

Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).
Grazie. Ma perché sei così severo e offensivo? Una cosa è leggere e
un'altra capire. Io ho detto che ho letto e non ho capito. Se io
capissi tutto non ricorrerei all'aiuto di gente esperta come te.
Saresti contento? Io, al tuo posto, no.
La pagina in questione, che, a mio parere, e' tradotta in maniera
discutibile dall'inglese, presenta passi poco chiari per un
principiante, a cominciare da questo: "su - lancia una shell con user
e del group ID sostitutivi". Immagino che voglia dire: "su - lancia
una shell con un nuovo user e un nuovo gruppo". Ma ad una prima
lettura devi ammettere che non si capisce niente.
Spero che la mia pagina sia uguiale alla tua.
E dove dice che 'su' senza opzioni ne' parametri non cambia il PATH?
Forse qui: "Lancia una shell per l'UTENTE usando i  suoi user  ID  e
group ID reali ed efficaci e con i gruppi supplementari dell'UTENTE.
Se non è dato  nessun  UTENTE,  di default viene assunto root, il
superuser. La shell da lanciare è presa dalla  riga  relativa
all'UTENTE  nel  file delle  password,  o  se non ne è specificata
nessuna viene lanciata /bin/sh".
A me pare abbastanza criptico. Prima di tutto ho dovuto indovinare
che, quando parla di file delle password, parla di /etc/passwd. E poi
non ho ancora capito che cos'è il file /bin/sh e se si può gestirlo in
qualche modo. Se qualcuno me lo spiega, forse poi potro' capire anche
perché una quantità enorme di esempi di Giacomini iniziano col
commento #!/bin/sh.
Abbi pazienza, Pierluigi. Tu ti sei scelto l'ingrato compito di
rispondere a quelli che vogliono 'iniziare' come me. Se non lo fai
volentieri, nessuno ti obbliga a farlo. Io non te ne voglio. Se lo fai
te ne sono grato. Ma non metterci sempre tutto questo astio per chi ha
scelto un metodo di lavoro che non coioncide esattamente con quello
che tu consigli. Ognuno ha i suoi problemi e le sue motivazioni
diverse.
Ciao
Michele D.

commento #!/bin/sh.
/bin/sh e' un link simbolico alla tua shell. Cosi', sia che tu usi
"bash" (il default), "tcsh", "csh", "pdksh" od altre, lanciando il
medesimo comando ("sh"), ti si aprira' la TUA shell.
Uno script eseguibile (cioe' marcato +x con chmod) non e' eseguito
da solo; ci vuole un programma che lo esegua.
Mi spiego: se tu scrivi in uno script
	echo "Ciao";
potrebbe essere un comando bash, o un comando PHP, o un comando di
chissa' quale linguaggio.
Per specificare che quello script va interpretato da un programma,
e non da un altro, si mette
#!nomeprogramma opzioni
come prima riga dello script. Percio' un programma Perl inizia con
#!/usr/bin/perl -Tw
e uno script bash inizia con
#!/bin/bash
oppure
#!/bin/sh
In teoria, se usi !/bin/sh, NON DOVRESTI usare sintassi specifiche
di una shell, ma solo sintassi comuni a tutte. Se usi sintassi che
solo bash puo' capire, allora la prima riga dovrebbe recitare
#!/bin/bash
o
#!/bin/bash2
(se hai la bash 2). Altrimenti rischi di far partire uno script di
bash lanciandolo con sh, che sul tuo sistema e' un link a pdksh, e
pdksh non capisce il contenuto dello script... :-)
Se avessi installato un interprete BASIC questo sarebbe un comando
eseguibile (credo):
#!/usr/local/bin/basic
INPUT "Come ti chiami? ", a$
PRINT "Ciao, ", a$
Leonardo
".signature": bad command or file name

 La pagina in questione, che, a mio parere, e' tradotta in maniera
La man page sara' anche criptica (capita spesso) ma vorrei ti mettessi
nei panni di chi sta qui a rispondere alle domande di gente che spesso e
volentieri di leggere le man pages e la documentazione in generale non
ha proprio nessuna voglia e pretende di ottenere l'aiuto desiderato (da
noi, nel nostro gergo dicesi "pappa pronta") che costituisce un buon
inizio per essere additati come persone sgradite al gruppo perche' di
imparare non hanno proprio voglia. Io come tutti gli altri non rispondo
controvoglia altrimenti non lo farei proprio ma occorre che voi newbies
capiate che non siamo ne' tenuti ne' pagati per farlo cosi' come non
siete stati obbligati ad installare Linux se non lo ritenete adatto a
voi per il semplice motivo che c'e' da studiare della documentazione per
capire, attivita' che a molti newbies sembra apparire ostica, il che a
persone come me che stanno a rispondere giornalmente alla stessa domanda
posta almeno 10 volte prima, indice del fatto che non ci si e' neanche
preoccupati di curiosare con Deja News fra i vecchi articoli per vedere
giusto se qualcuno aveva per caso posto la medesima domanda.
Il fatto che tu ritenga offensivo chi ti fa notare una lettura poco
attenta della man page, per quanto criptica possa essere, invece di un
tuo atteggiamento piu' positivo, del tipo "Chi sa darmi altre fonti di
riferimento? Ho sentito parlare di alcuni fantomatici Appunti Linux,
dove posso trovarli?" e' indice del fatto che non ti sei preoccupato di
cercare altre informazioni che _sicuramente_ esistono e che ancora non
hai ben chiaro con che mentalita' ci si deve avvicinare a Linux.
-- 
Pierluigi De Rosa (
tho...@durin.khazad-dum.net
).


medesimo comando ("sh"), ti si aprira' la TUA shell.
TUA, vuoi dire cioe` che il link e stato fatto a bash in conseguenza
alla scelta che si e` fatta durante l'installazione?
Se e` cosi`... be' io pensavo fosse invece di sistema, essendo caduta
in disuso sh. Allora e` molto interessante questa precisazione per uno
che si mette a fare script, potrebbe usarli un altro con un'altra shell.
-- 
Ci sentiamo  |  Remigio Zedda
             |  
remi...@tiscalinet.it
ciao Remigio |                    kernel 2.2.13 su Slack 7.0


Grazie mille. E' una spiegazione chiarissima e ragionata. Direi che č
quasi un... minicorso :-) 
Michele D.

hai ben chiaro con che mentalita' ci si deve avvicinare a Linux.
Ma tu non mi hai invitato a rileggerla con più attenzione: hai
asserito che io non l'abbia letta, quando io avevo già confessato di
non averla capita. Quelle lineette sottoscritte che usi al posto degli
spazi mi sembrano molto offensive :-)
Quanto agli Appunti Linux, me li sono scaricati tutti da un pezzo e me
li leggo quando mi serve.
Devo dirti una cosa. Forse Unix è un sistema "volutamente oscuro" come
ho letto da qualche parte. Ma Linux, anche se è figlio di Unix, non è
fatto solo per i secchioni e i pedanti con i paraocchi. E non esiste
solo questo tipo di studenti o di studiosi. Linux è un fenomeno di
libertà unico nella storia. E quindi è fatto per tutti. Le energie, a
mio parere, dovrebbero essere impiegate per diffonderlo sempre di più
migliorando la documentazione e le vie per accedervi, non per
stroncare sul nascere le volontà di partecipazione.
Comunque smettiamola con le polemiche e le discussioni sul metodo, o
ci renderemo sempre più OT. Facciamo una tregua. Sei d'accordo?
Ciao
Michele D.

 solo questo tipo di studenti o di studiosi. Linux è un fenomeno di
Linux e' un OS fatto per gente che vuole capire. Qui ne abbiamo piene le
palle di gente che arriva dopo averlo installato e pretende di avere le
risposte come se tutti fossero al proprio servizio. Io come tutti gli
altri mi sono fatto un culo cosi' per arrivare ad avere una certa
conoscenza ed e' normale che a gente che continua ad avere la mentalita'
dell'utonto si consigli di tornare a WinBug e di smetterla di farsi del
male. Se in tutto questo tu vedi i paraocchi allora mi dispiace, ma
neanche tu hai capito molto della filosofia di UNIX come OS aperto,
soprattutto nel cervello, che dovrebbe aiutare chi l'ha installato a
liberarsi dai legami di Clippy e dei foglietti svolazzanti cui era
abituato ed iniziare ad usare finalmente il proprio cervello, invece di
farselo guidare da Clippy: sono oramai piu' di 6 anni che uso Linux, ho
lavorato anche con altri UNIX commerciali e continuo a preferire la
soddisfazione dei ringraziamenti di quelli che ho aiutato piuttosto che
gli insulti di 4-5 utonti che pretendono di usare uno UNIX come se fosse
WinBug e non capiscono che non e' adatto per loro per cui se la prendono
quando li si maltratta: nessuno piange se questi poi spariscono e
tornano ad usare WinBug. Comunque vada per la tregua.


Forse interpretabile?
Si', interpretabile. D'altra parte tu non sai cosa c'e' dentro un file,
digiti "pippo" e succede qualcosa. Percio' per te "pippo" e' eseguibile
e basta.
Poi fai "vi pippo" e vedi che dentro c'e' un programma Pascal :-)
