Newsgroup: it.comp.os.linux.iniziare
Titolo: Sovrascrittura in "make install"

Ciao ragazzi,
un dilemma mi attanaglia: quando, dopo aver compilato un programma 
lancio il "make install", come si comporta il sistema nel caso in cui si 
accorge che installando potrebbe sovrascrivere qualche file gia' 
esistente? mi avverte con un messaggio o procede brutalmente e dunque e' 
bene stare attenti per non "corrompere" il sistema?
ciao
slacky

 [...] dunque e' bene stare attenti per non "corrompere" il sistema?
Questo sempre, anche e sopratutto con rpm o equivalenti.
-- 
Ikitt 
"Stupid people do stupid things smart people outsmart each others"
*** mailserver: 
freemail.it

Ciao lkitt,
grazie per la risposta,
Ikitt wrote:
 > Sun, 23 Mar 2003 16:26:05 +0100 <Slacky>: "Sovrascrittura in "make 
install""
 >
 >
 >>un dilemma mi attanaglia: quando, dopo aver compilato un programma
 >>lancio il "make install", come si comporta il sistema nel caso in cui si
 >>accorge che installando potrebbe sovrascrivere qualche file gia'
 >>esistente?
 >
 >
 > A cose normali, sovrascrive e via.
scusa se sono lento a capire, ma non vorrei ci si fraintendesse: cosa 
intendi con l'espressione "a cose normali"? intendi "generalmente"
 >
 >
 >>[...] dunque e' bene stare attenti per non "corrompere" il sistema?
 >
 >
 > Questo sempre, anche e sopratutto con rpm o equivalenti.
 >
beh, non uso rpm, ma tgz(uso slack), o spesso ricompilo da sorgenti.
ciao
slacky

 Questo sempre, anche e sopratutto con rpm o equivalenti.
No, rpm distingue i file di configurazione dai binari e non li sovrascrive.  
Se fai un upgrade e i file di configurazione non devono essere cambiati, non
verranno sovrascritti, se *devono* essere cambiati (perche' cambia il
formato ad esempio) i vecchi vengono copiati con estenzione .rpmsave e
quindi salvato. 
-- 
Enrico Bodo  -   Postdoc Fellow       
University of Rome "La Sapienza"    
Department of Chemistry        

Ciao Bodo,
Bodo wrote:
 > No, rpm distingue i file di configurazione dai binari e non li 
 >sovrascrive.
"li" e' riferito solo ai file di configurazione, intendi questo?
 > Se fai un upgrade e i file di configurazione non devono essere 
 >cambiati, non
 >erranno sovrascritti, se *devono* essere cambiati (perche' cambia il
 >formato ad esempio) i vecchi vengono copiati con estenzione .rpmsave e
 >quindi salvato.
a questo punto spiego il perche' della domanda: supponiamo che io 
sia(non lo sono) un programmatore pasticcione che crea un programma in 
c++(per esempio), crei anche delle librerie per questo programma, faccia 
insomma tutto quello che deve fare, lo compila e lo installa con un bel 
make install.
Supponiamo che sempre il solito programmatore pasticcione faccia un 
altro programma e dia per esempio lo stesso nome a qualche binario e/o 
libreria del nuovo programma di qualche binario e/o libreria del vecchio 
programma.
Di nuovo si compilera' il nuovo programma, lancera' un bel make install 
e...che succede? viene avvertito che binary o altro con lo stesso nome 
gia' esistono e proseguendo verranno sovrascritti, o non viene avvertito 
di nulla, e si accorgera' del danno solo quando provera' a lanciare il 
primo programma, che non partira' o funzionera' male?
Windows(scusate se lo tiro in ballo qui sul newsgroup di linux :-) ) 
quando installi qualcosa di nuovo e trova dll esistenti con lo stesso 
nome di quelle che vorrebbe installare, qualcosa te lo dice. Come 
funzica con i sistemi unix/linux?
ciao
slacky(powered by slackware 8.1)

 No, rpm distingue i file di configurazione dai binari e non li sovrascrive. 
[...]
Qui hai ragione (puntuale come sempre :), oltretutto il mio discorso era
un po` criptico.
Quando dicevo che e` bene stare attenti, stavo pensando a cose che escono
dalla routine della gestione del sistema (per fortuna!), nella fattispecie
a pacchetti .rpm malformati o che fanno azioni maligne deliberatamente.
Voglio dire, per installare un .rpm sono necessari privilegi di root,
e rpm (il tool) in fase di installazione puo` compiere tutta una varieta`
di azioni in maniera automatica, andando dalla sovrascrittura di file
sino all'apertura di back-door o cose del genere.
Attenzione: *PUO`* avvenire, non e` che lo fa sistematicamente! :)
Attenzione2: questo *PUO`* avvenire anche con la solita triade 
./configure; make; make install.
Ci sono stati casi abbastanza recenti di compromissione dovute ad uno script
./configure maligno (tcpdump e fragroute, se ben ricordo).
Tutto questo per dire: occorre, in linea generale, un minimo di criterio
e di prudenza in _tutti_ i casi in cui si va a modificare il sistema, se
questo non e` isolato e sacrificabile. Anche se non c'e` pericolo immediato
o all'orizzonte: e` come tenere aggiornato il software, sono buone abitudini
che costano relativamente poco che alla fine pagano.
(comunque attualmente, per fortuna, questi sono scrupoli probabilmente inutili) 


 funzica con i sistemi unix/linux?
Ci sono opzioni per cp, mv e probabilmente install che fanno la stessa cosa.
Per default, che io sappia, sono su 'off' (sovrascrivi e via)
Di solito la linea di pensiero su Unix e` che l'utente e` il capo, sa
quel che fa e non ha bisogno di balie, ma solo di un servitore efficiente.


 funzica con i sistemi unix/linux?
Con rpm la cosa funziona senza problemi, i file di configurazione di uno
stesso pacchetto non vengono sovrascritti durante l'upgrade. File
preesistenti con lo steso nome, ma di un altro pacchetto stoppano il
processo di installazione e rpm esce con un errore del tipo "file cippalippa
conflicts with ...". Puoi comunque costringere rpm a sovrascrivere.
Con i sorgenti tutto dipende dal Makefile, ma di solito i "make install" non
avvertono e riscrivono. L'atteggiamento unix infatti e' quello di fare
quello che tu gli dici di fare senza porsi troppe domande. A differenza di
windows, unix suppone tu sappia cosa stai facendo e come. A me comunque non 
e' mai successo di avere questi problemi ne' con gli rpm ne' con i tar.gz.


 che costano relativamente poco che alla fine pagano.
Tutto molto giusto, se c'e' un modo di sviluppare virus in linux e' quello 
di usare gli rpm. Per fortuna che c'e' il modo di controllare le signature e 
sei una persona seria lo fai sopratutto su macchine di produzione.
Anche un "make install" malizioso pero' ha la stessa vulnerabilita'.


Redhat Linux, Debian, FreeBSD, Windows, Mandrake
Fast Servers in Germany !
Agent wanted in Italy !
http://www.italiaserver.net

Ciao!,
grazie sia a lkitt che a Bodo per le risposte.
ciao e buona notte
slacky