Newsgroup: it.comp.os.linux.iniziare
Titolo: Eject 2 [per ESPERTI]

ciao. Mi sono reso conto che in questo ng non c'e' così tanta gente
preparata come credessi.
Un problemino banalissimo come il mio non trova risposta o la trova
sbagliata o trova un modo per arginarlo, ma non per risolverlo!
Ri-posto la cosa sperando che qualcuno abbia l'idea giusta...
Ho una mandrake 8.1 e il comando eject (che di norma smonta ed espelle il
cd) funziona solo se accompagnato dalla stringa scd0 che presumo sia il nome
del mio lettore (che e' un masterizzatore), eppure quando monto il cd
scrivo:
mount /mnt/cdrom
e tutto va a gonfie vele.
Ora, voglio fare in modo che non debba piu' digitare quel scd0 dopo eject
,cioe' invece di scrivere :
eject scd0
vorrei scrivere solo:
eject
Anche perche' di default , eject espelle cdrom non scd0.
Automount o lock nel kernel sono opzioni che non voglio modificare, mi vanno
bene cosi' e poi non si risolve in questo modo il problema anche se potrebbe
funzionare.
In /dev DOVREBBE esserci -a mio avviso-, forse sbagliando, un link simbolico
chiamato cdrom che punta a /dev/scd0, il link c'e' ,ma da root non mi riesce
di rimuoverlo e/o modificarlo.
Se scrivo (chiaramente sempre da root) :
rm -rf cdrom
ls
mi appare la directory di /dev senza quel link , uno pensa "l'avrà
cancellato!" invece no.
Basta dare eject o eject scd0 che ricompare!
Se tento di riscriverlo con :
ln -s /dev/cdrom[od anche /dev/scd0] cdrom
mi dice : il file esiste anche se prima l'ho rimosso con rm -rf .
Insomma come si risolve il problema ?
Ringrazio, ciao.

 Ringrazio, ciao.
Di niente!
Certa gente...
-- 
Testing? What's that? If it compiles, it is good, if it boots up it is perfect 
-- [Linus Torvalds]
To reply: news [at] mamakin1976 [dot] plus [dot] com

 Un problemino banalissimo come il mio non trova risposta
se č banalissimo perchč vieni a rompere i coglioni qua?
risolvitelo pure da
da solo e dopo illuminaci.
grazie in anticipo per quello che ci insegnerai
ciao

 Insomma come si risolve il problema ?
Fai un'alias per la shell che usi. In bash:
alias eject='eject scd0'
-- 
 Francesco Romani - Ikitt  | Describe your vision, the meaning is missing |
*** mailserver: 
freemail.it
| Won't anybody listen?                        |

 ma per te faccio volentieri un'eccezione.
troll , io ?!
Ma vaffanculo!
E te lo sei meritato.
Ciao.

 da solo e dopo illuminaci.
Risposta adattabile a tutte le domande :-D
Dovrebbe essere banale per chi conosce bene linux, questo intendevo.
Comunque, la risposta , per come ho posto la domanda e' azzeccata...
Abbozzo.

 di rimuoverlo e/o modificarlo.
Se non lo sai tu cosa c'è nella tua /dev...Ma il comando file /dev/cdrom 
che risultato di dà?
E in /etc/fstab come hai indicato il tuo masterizzatore?
Ciao , Paolo

 Basta dare eject o eject scd0 che ricompare!
Presumo sia devfsd che lo ricrea, come lo hai configurato? Tieni 
presente che se usi devfs modificare i link a mano è pressoché inutile.
Intanto verifica che subito dopo il boot ci sia il link (usa ls -l) a 
/dev/scd0 (o anche a /dev/sr0).

 Ma vaffanculo!
Sicuro. Ci vediamo la'?


 -h o -d.
eject -V
eject version 2.0.12 by Jeff Tranter (
tra...@pobox.com
)
il man fra le righe riporta questa:
eject [-vnrsfqp] [<name>]
da cui si deduce che i parametri sono opzionali
Io ho un solo cd e quando digito eject lo sputa fuori (per eject non
ho alias impostati nella shell).
nel man vedo questo
If no name is specified, the default name "cdrom" is used
Potrebbe essere che "cdrom" non sia un alias del cd che vuole sputare.
Per risolvere sarebbe utile l'output di 
# eject -v cdrom
e solo di:
# eject -v
da fare loggato da root, eventuali problemi di permessi un altra volta.

 /dev/scd0 (o anche a /dev/sr0).
non c'e'.
Ho in /dev un link di nome cdrom :
cdrom -> ../cdroms/cdrom0
Ciao.

 # eject -v
Eccolo :
using default device /dev/cdrom
device name is 'dev/cdrom'
unable to find or open device for : '/dev/cdrom'

 Ciao , Paolo
/dev/scd0   /mnt/cdrom auto user,
iocharset=iso8859-it,umask=0,exec,codepage=850,ro, noauto 0  0
Ciao, grazie.

 
Il fatto che "file /dev/cdrom" ti dia come risposta broken symbolic link 
to ../cdroms/cdrom0, significa che punta a un device inesistente, come 
sembra confermare anche l'output di eject -n.
Da quello che ho capito tu non hai il lettore di cdrom, hai solo il 
masterizzatore, il problema è quindi che devi far puntare /dev/cdrom a 
/dev/scd0: il modo usuale per farlo è ln -s /dev/scd0 /dev/cdrom (nel 
tuo caso dopo aver cancellato il vecchio /dev/cdrom che è un broken 
symbolic link).
Visto che però  mi sembra di capire che hai provato a farlo senza esito, 
credo proprio che tu hai attivo devfsd (credo che Mandrake lo usi, ma 
non sono sicuro, potrei dire una fesseria), che è un demone che si 
occupa di gestire i device nella directory /dev.
Io non lo uso, quindi non ti so dire di più; se è così devi cercare 
documentazione su come configuararlo (man, readme, google groups...).
Ciao, Paolo

 configuararlo (man, readme, google groups...). Ciao, Paolo
Ok anche dalle prove che ti ho fato fare io si capiva che hai un link
sbagliato.
Se hai devfsd dovresti avere il file /etc/devfsd.conf 
che sui cdrom contiene qualcosa di simile. 
# Create /dev/cdrom for the first cdrom drive
LOOKUP          ^cdrom$          CFUNCTION GLOBAL mksymlink cdroms/cdrom0 cdrom
REGISTER        ^cdroms/cdrom0$   CFUNCTION GLOBAL mksymlink $devname cdrom
UNREGISTER      ^cdroms/cdrom0$   CFUNCTION GLOBAL unlink cdrom
Sul mio sitema questo crea /dev/cdrom che è un link per cdroms/cdrom0.
/dev/cdroms/cdrom0 è a sua volta un link per /dev/ide/host0/...posizione
del cd sul bus
Visto che il tuo cd è montato come scsi qualche modifica la devi fare.
Per mia fortuna il mio funziona quindi non so esattamente come fare per
sistemarlo (OK, lo ammetto, non sono preparato) quindi ti posto solo il
link alla documentazione
man devfsd
man 8 devfsd
man devfsd.conf
http://www.atnf.csiro.au/people/rgooch/linux/docs/devfs.html
 

 UNREGISTER      ^cdroms/cdrom0$   CFUNCTION GLOBAL unlink cdrom
OK, ho risolto !
Mi e' bastato editare /etc/devfsd.conf , praticamente ho sostituito (nelle
righe qui sopra) alla variabile cdrom$ , scd$ ,poi ho killato devfsd,
cancellato il link rotto in /dev e ne ho fatto uno nuovo con ln -s /dev/scd0
/dev/cdrom. Poi riavviato il tutto.
Ora funziona perfettamente.
Grazie !
Ciao.

 
Il quale è a sua volta un link a, presumo nel tuo caso,
/dev/scsi/host0/bus0/target0/lun0/cd
Comunque per eject dovrebbe andare bene così, questo per esempio è il
mio "eject -v":
eject: using default device `cdrom'
eject: device name is `cdrom'
eject: expanded name is `/dev/cdrom'
eject: `/dev/cdrom' is a link to `/dev/scsi/host0/bus0/target3/lun0/cd'
eject: `/dev/scsi/host0/bus0/target3/lun0/cd' is not mounted
eject: `/dev/scsi/host0/bus0/target3/lun0/cd' is not a mount point
eject: `/dev/scsi/host0/bus0/target3/lun0/cd' is not a multipartition device
eject: trying to eject `/dev/scsi/host0/bus0/target3/lun0/cd' using
       CD-ROM eject command
eject: CD-ROM eject command succeeded
-- 
Registered user at 
http://counter.li.org
 # 170453
Jabber JID: 
sil...@jabber.linux.it
GnuPG Key fingerprint = 10E0 2B05 0B0A 3525 8760  788B 59B6 C74A 250E 65B6

 
Bingo! Questa è la configurazione di supermount che fa a pugni con
eject, perché in /etc/fstab il dispositivo è chiamato /mnt/cdrom (primo
campo, come richiesto da supermount). Ne hai conferma leggendo l'output
del comando eject -v cdrom.
Cosa succede? Succede che eject non trova in /etc/fstab una riga che
faccia riferimento a /dev/cdrom.
Prova ad aggiungere questa riga:
/dev/cdrom	/mnt/cdrom	iso9660 defaults 0 0
e vedi eject funziona. 
Non ti garantisco che questo però non crei problemi a supermount, ma se
lasci entrambe le righe secondo me la spunti.


On Sun, 24 Aug 2003 09:09:55 +0000, Hemen wrote:
Allora siamo stati promossi :-)

 Allora siamo stati promossi :-)
si ;-)
aggiungo anche (mi sono scordato di dirlo) che ho dovuto modificare anche
urpmi.cfg ,anche qui sostituendo alla voce cdrom, scd0.
Puo' essere utile per chi lurka...
ciao.