Nomenclatura dei device su Sun Solaris

Tutti i device possono essere nominati in 3 modi diversi su Solaris, secondo logiche diverse:
- Nomi logici di device;
- Nome fisici di device;
- Nomi abbreviati (alias).

Nomi logici di device
Sono usati da programmi ed utenti e sono tutti contenuti della directory /dev.
Sono link simbolici ai nomi di device fisici presenti nella directory /devices.
Il nome dei device come dischi fissi contiene: numero del controller, numero del target, numero del disco, numero della slice (partizione).
Un esempio può essere c0t0d1s4: Controller 0, Target 0, Disco 1, Slice 4.
Per dischi fissi IDE i nomi di device sono (si considerano con un unica partizione):
Primary Master: c0t0d0s0 - Primary Slave: c0t1d0s0
Secondary Master: c0t2d0s0 - Secondary Slave: c0t3d0s0

Nomi fisici di device
Identificano univocamente i dispositivi attaccati al sistema con una convenzione basata su un albero di directory che inizia da /devices, che si considera la radice dell'albero sotto la quale esistono varie ramificazioni.
Per esempio su una Netra T1, il device logico /dev/dsk/c0t0d0s0 corrisponde al device fisico /devices/pci@1f,0/pci@1,1/scsi@2/sd@0,0:a

Nomi abbreviati
Sono nomi assegnati dal kernel per ogni dispositivo del sistema. Sono in forma abbreviata e facilmente utilizzabile.
Il device sopra indicato, per esempio, ha nome abbreviato sd.
Le schede di rete hanno nomi come hme, qfe (sono nomi diversi a seconda del modello e del tipo della scheda, a differenza di Linux, dove ogni scheda di rete ethernet è chiamata eth).


Il file /etc/path_to_inst contiene un elenco di tutti i device fisice e il relativo alias utilizzato dal kernel per identificare ogni tipo di device. Questo file è diverso a seconda del sistema, su una Netra T1 ha questo aspetto:
"/pci@1f,0" 0 "pcipsy"
"/pci@1f,0/pci@1,1" 0 "simba"
"/pci@1f,0/pci@1,1/ebus@1" 0 "ebus"
"/pci@1f,0/pci@1,1/ebus@1/power@14,724000" 0 "power"
"/pci@1f,0/pci@1,1/ebus@1/i2c@14,600000" 0 "i2c"
"/pci@1f,0/pci@1,1/ebus@1/i2c@14,600000/adc@0,9e" 0 "i2cadc"
"/pci@1f,0/pci@1,1/ebus@1/i2c@14,600000/gpio@0,70" 0 "i2cgpio"
"/pci@1f,0/pci@1,1/ebus@1/i2c@14,600000/gpio@0,72" 1 "i2cgpio"
"/pci@1f,0/pci@1,1/ebus@1/fdthree@14,3203f0" 0 "fd"
"/pci@1f,0/pci@1,1/ebus@1/i2c@14,100000" 1 "i2c"
"/pci@1f,0/pci@1,1/ebus@1/su@14,3602f8" 1 "su"
"/pci@1f,0/pci@1,1/ebus@1/su@14,3803f8" 0 "su"
"/pci@1f,0/pci@1,1/ebus@1/ecpp@14,340278" 0 "ecpp"
"/pci@1f,0/pci@1,1/scsi@2" 0 "glm"
"/pci@1f,0/pci@1,1/scsi@2/ses@f,0" 15 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@d,0" 13 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@e,0" 14 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@b,0" 11 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@c,0" 12 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@a,0" 10 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@6,0" 6 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@7,0" 7 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@4,0" 4 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@5,0" 5 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@2,0" 2 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@3,0" 3 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@0,0" 0 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@1,0" 1 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@8,0" 8 "ses"
"/pci@1f,0/pci@1,1/scsi@2/ses@9,0" 9 "ses"
"/pci@1f,0/pci@1,1/scsi@2/sd@4,0" 4 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@5,0" 5 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@6,0" 6 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@0,0" 0 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@1,0" 1 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@2,0" 2 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@3,0" 3 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@8,0" 7 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@9,0" 8 "sd"
"/pci@1f,0/pci@1,1/scsi@2/sd@d,0" 12 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@4,0" 4 "st"
"/pci@1f,0/pci@1,1/scsi@2/sd@e,0" 13 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@5,0" 5 "st"
"/pci@1f,0/pci@1,1/scsi@2/sd@f,0" 14 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@6,0" 6 "st"
"/pci@1f,0/pci@1,1/scsi@2/st@0,0" 0 "st"
"/pci@1f,0/pci@1,1/scsi@2/sd@a,0" 9 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@1,0" 1 "st"
"/pci@1f,0/pci@1,1/scsi@2/sd@b,0" 10 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@2,0" 2 "st"
"/pci@1f,0/pci@1,1/scsi@2/sd@c,0" 11 "sd"
"/pci@1f,0/pci@1,1/scsi@2/st@3,0" 3 "st"
"/pci@1f,0/pci@1,1/network@1,1" 0 "hme"
"/pci@1f,0/pci@1" 1 "simba"
"/pci@1f,0/pci@1/pci@1" 0 "pci_pci"
"/pci@1f,0/pci@1/pci@1/ide@e" 0 "uata"
"/options" 0 "options"
"/pseudo" 0 "pseudo"


Un comando uile per visualizzare la configurazione del sistema e ogni istanza di device è prtconf.
Il suo output elenca anche device non fisicamente attaccati (ma previsti dal sistema), nell'output che segue vengono omessi i device non attaccati:
prtconf | grep -v not
System Configuration:  Sun Microsystems  sun4u
Memory size: 1024 Megabytes
System Peripherals (Software Nodes):

SUNW,UltraSPARC-IIi-cEngine
    options, instance #0
    pci, instance #0
        pci, instance #0
            ebus, instance #0
                su, instance #0
                su, instance #1
            network, instance #0
            scsi, instance #0
                sd, instance #0
                sd, instance #1
        pci, instance #1
            pci, instance #0
                ide, instance #0
    pseudo, instance #0


Per visualizzare e gestire (partizionare, formattare, rinominare) i dischi fissi del sistema si può usare anche il comando format.

Inoltre è possibile visualizzare l'elenco dei device sul sistema (nome fisico e alias) su OpenBoot, con il comando devalias.


AGGIUNGERE UN DEVICE AD UN SISTEMA SUN
Se si deve aggiungere un nuovo device al proprio sistema Sun si possono seguire 3 metodi di massima:
1- Creare il file /reconfigure (touch /reconfigure), spegnere il sistema, attaccare il device e riavviarlo.
2- Spegnere il sistema. attaccare il device. Entrare in PROM mode. Digitare boot -r per un boot in reconfigurazion mode.
3- Usare da shell il comando devfsadm -v. E' il metodo più comune e pratico. Disponibile da Solaris 8.
4- Su Solaris 7 si può usare il comando shell drvconfig seguito da un comando diverso a seconda del tipo di device che si sta utilizzando, per esempio: tapes per device a nastro; disks per hard disk.

Tutti questi metodi creano in /dev i link relativi ai nuovi device e li installano utilizzando i relativi drivers (se esistono sul sistema).

Privacy Policy