Hardware PC · 21 min read · Jan 11, 2026
CREARE UN SISTEMA WRAP PC ENGINES PER USO GENERALE
KEYWORDS: PC ENGINES WRAP WRAP BOARD WRAP PLATFORM LINUX DEBIAN SBC SOC LINUX ON WRAP LOW-POWER SMALL SILENT SERVER
Autore: Nathan L. Cutler
Data: 18 Giugno 2006
Disclaimer
Questo documento è fornito nella speranza che possa risultare utile a qualcuno. Tuttavia, se segui le procedure descritte in questo documento, lo fai A TUO RISCHIO. L’Autore non fornisce alcuna garanzia che seguire le istruzioni qui contenute porterà al risultato desiderato. L’Autore non si assume alcuna responsabilità per qualsiasi cosa accada a chi legge o utilizza in altro modo questo documento.
Background
Ho utilizzato Linux più o meno come utente per oltre dieci anni. Negli ultimi anni non ho realmente fatto molto con esso. Nel maggio 2006 il mio amico Chip Coldwell (http://frank.harvard.edu/~coldwell) mi ha parlato di un computer a scheda singola (SBC) basato su ARM che aveva acquisito e stava trasformando in una segreteria telefonica. Stava facendo cose interessanti come abilitare i trasferimenti DMA nel driver seriale del kernel. Avevo già sentito il termine “embedded computing” prima, ma fino ad allora non mi ero reso conto di cosa significasse. Quando ho visto le foto dell’SBC di Chip (basato su un chip “System-on-a-Chip” (SoC) Atmel (gioco di parole voluto)) e ho letto su internet di persone che eseguivano Linux su questi computer piccoli e semplificati, sono stato catturato dall’idea di avere un sistema Linux che consuma meno di 10W di potenza, senza ventole e dischi rotanti. Alla fine sono riuscito a far funzionare un sistema senza ventole rotanti, ma ho dovuto cedere e procurarmi un disco rotante per esso.
Ho trascorso circa una settimana a esaminare varie opzioni, ma in sostanza si riducevano a tre:
- la piattaforma WRAP della svizzera PC Engines (http://www.pcengines.ch)
- una scheda VIA EPIA (fattore di forma Mini-ITX) basata sul chip C3 Eden
- riportare in vita una vecchia scheda Pentium 90 (con un dissipatore passivo), installare un adattatore USB e farla funzionare con un’unità flash invece di un disco rigido
Queste sono elencate nell’ordine in cui le ho considerate. All’inizio ero entusiasta per il WRAP, ma presto ho iniziato a preoccuparmi che fosse sottodimensionato per le mie esigenze, poiché sognavo di usarlo per riprodurre MP3 e far girare X, e cose del genere, e il WRAP non ha capacità audio o VGA e nessun modo per aggiungerle. Così mi sono interessato alla linea di schede EPIA di VIA, una delle quali ha un convertitore DC-DC integrato e può essere alimentata da un “wall wart”. Ancora una volta, dopo un paio di giorni di ricerca, ero pronto a comprare i componenti e costruire un sistema. Ma poi mia moglie ha suggerito che sarebbe stato meglio aspettare prima di fare un investimento del genere e ho avuto un ripensamento e ho iniziato a considerare l’alternativa a basso costo (terza nella lista sopra). Tuttavia, per questo avrei dovuto acquistare uno dei nuovi alimentatori switching senza ventole e un adattatore USB, aumentando significativamente i costi, e sapevo che un tale sistema avrebbe consumato molta più energia rispetto al WRAP o al VIA EPIA.
Più tardi ho capito che le schede di memoria a stato solido e le unità flash non sono realmente adatte per eseguire un sistema a uso generale. Possono andare bene per router e altre applicazioni embedded che possono cavarsela con un’unità di sola lettura + un piccolo ramdisk, ma per le tue esigenze quotidiane di calcolo Linux, hai davvero bisogno di avere un disco rigido rotante. Fortunatamente, ora ci sono Microdrive accessibili che si collegano direttamente allo slot CF del WRAP, che accetta sia schede CF di Tipo I che di Tipo II.
Faccio il Grande Passo
Alla fine ho deciso per il WRAP, per i seguenti motivi:
- Consumo energetico più basso delle 3 opzioni, di gran lunga
- Estrema miniaturizzazione - lo rende più interessante
- Supporto alle piccole imprese - la scheda è progettata da un ragazzo in Svizzera, non da una corporazione
- Può essere modificato per supportare USB, così posso collegare stampanti e il modem CDMA.
- Ha più memoria (128MB) rispetto alla vecchia scheda Pentium 90, per la quale sarebbe difficile trovare moduli di memoria
- Potrei vivere senza le capacità audio e video, poiché posso sempre fare cose A/V sul mio normale computer Linux
Così ho comprato la scheda WRAP. Poiché voglio e ho bisogno che il mio sistema abbia capacità USB, sono rimasto piacevolmente sorpreso di sapere che avevano un adattatore USB duale disponibile, quindi ho preso anche quello. Maggiori dettagli sull’aggiunta dell’opzione USB più avanti. Ho anche acquistato un adattatore Compact Flash-IDE, che (presumibilmente) consente di collegare una scheda CF a un’interfaccia IDE normale e farla apparire come un disco rigido.
Dopo essere tornato a casa, mi sono reso conto che mancavano ancora due componenti critici: (1) una scheda CF per il filesystem root, e (2) un cavo NULL Modem, senza il quale non sarei stato in grado di vedere i messaggi di avvio. Per l’alimentazione ho deciso di utilizzare un adattatore AC/DC “Universale” che avevo in deposito. L’ho tirato fuori, ho trovato un connettore che si adattava alla scheda e ho testato l’uscita usando il mio multimetro. Era esattamente 12V, e suppongo che i 6VA che produce saranno sufficienti per alimentare la scheda WRAP.
Il cavo NULL Modem di cui hai bisogno ha connettori femmina a 9 pin su entrambe le estremità. Poiché la scheda WRAP non ha alcuna capacità VGA, l’unico modo per accedere alla configurazione del BIOS e vedere i messaggi di avvio è tramite la porta seriale (da qui il cavo NULL Modem), utilizzando un emulatore di terminale su un secondo computer.
Scheda CF o Microdrive?
All’inizio avevo la falsa idea di avere il filesystem root su una scheda CF da 512MB e il resto dei miei dati su un’unità flash da 1GB collegata tramite USB 1.1 (il WRAP non supporta USB 2.0). Fortunatamente non ho comprato l’unità flash, anche se ho comprato la scheda CF - comunque, era economica (meno di 400 CZK) e posso mantenere un’installazione di Voyage Linux su di essa se mai decidessi di usare il WRAP come router dedicato.
Dopo aver provato a installare un sistema Debian sulla scheda CF e aver incontrato difficoltà nel farlo funzionare in sola lettura con solo alcuni file e directory critici per la missione su un filesystem tmpfs (RAM disk), ho rinunciato e ho installato Voyage Linux 0.2. È stato relativamente indolore, ed è stato bello vedere la mia piccola scheda WRAP avviarsi e darmi un prompt Linux, ma gradualmente mi sono reso conto che avevo davvero bisogno di avere un disco rigido, perché voglio usare il sistema su base quotidiana e ho bisogno che il filesystem root sia sempre in lettura-scrittura. Dopo alcune ricerche, sono arrivato a tre diverse opzioni per aggiungere un HDD al WRAP:
- Costruire il mio adattatore CF-to-IDE (cioè uno che mi permetta di collegare un’unità IDE allo slot CF sulla scheda WRAP)
- Comprare un NASD (Network Attached Storage Device), riflashare il firmware per farlo funzionare con Linux, esportare condivisioni NFS al WRAP
- Comprare un Microdrive e collegarlo allo slot CF del WRAP
Li ho scritti nell’ordine in cui mi sono venuti in mente. La prima opzione era la più interessante per me, poiché pensavo di avere tre o quattro dischi da 3.5” in giro, potrei usarne uno di essi. Tuttavia, incredibile ma vero, non esiste un adattatore facilmente disponibile che trasforma uno slot CF in una porta IDE, anche se lo slot CF opera in modalità “True IDE”. Parte del problema è la tensione - la scheda WRAP fornisce solo 3.3V al CF, mentre un’unità IDE ha bisogno di 5V. Questo rende più difficile la proposta, richiedendo di saldare 44 fili. Sarebbe difficile con il connettore IDE standard, ma con il connettore CF, che è molto più piccolo, sarebbe praticamente impossibile.
Ieri non avevo idea che esistesse un NAS. Ne sono venuto a conoscenza perché pensavo che potesse esistere un adattatore per collegare un’unità IDE a una porta Ethernet RJ45. Pensavo che, dato che ho un’interfaccia LAN extra che non sto usando, potrei collegare l’HDD a quella. Certo, ho trovato un sacco di piccole scatole che contengono dischi rigidi - basta collegarle alla tua LAN e via. Il problema è che queste scatole sono significativamente più costose di un HDD da 3.5” perché all’interno contengono SBC (Single-Board Computers). Ma, mi sono detto, un SBC è ciò che sto cercando di costruire qui - non ha molto senso averne due. Tuttavia, ero tentato di acquistare un Linksys LSLU2 Network Storage Link, perché ho scoperto che c’è una comunità attiva di appassionati che lavorano per hackerarlo. Hanno persino diverse versioni di nuovo firmware per esso, così puoi riflashare completamente il firmware e trasformarlo in una scatola Linux. Questa soluzione sembrava interessante, ma dovevo ammettere che era una deviazione.
Dalla mia corrispondenza con Pascal Dornier, il progettista della scheda WRAP, ho appreso che puoi semplicemente collegare un Microdrive al WRAP, e che funzionerà. Non avevo considerato questa possibilità, perché (1) avevo solo una vaga idea di cosa fosse un “Microdrive”, e (2) pensavo che avrebbe richiesto troppa energia per l’alimentatore della scheda WRAP e (3) pensavo che il WRAP accettasse solo schede CF di Tipo I. Si scopre che il Microdrive è una soluzione ideale - Pascal era fermo nel dire che avrebbe funzionato, quindi sono andato a comprarne uno. Superato questo ostacolo, la strada per trasformare la mia piccola scheda WRAP in una scatola Linux a uso generale era aperta.
Secondo le specifiche tecniche, l’IBM/Hitachi Microdrive da 4GB consuma 395mA a 3.3V per la scrittura, che corrisponde a 1.3 watt.
Configurazione del Filesystem Root
Poiché avevo tempo durante il fine settimana, ho navigato in rete e ho trovato un HOWTO (in realtà un post di blog) di Jan Willem (http://www.lextreme.nl) per installare un sistema Debian regolare sulla scheda WRAP. Questo mi ha attratto poiché le alternative, come Voyage Linux, pur supportando esplicitamente il WRAP, sono orientate ad applicazioni di routing wireless e all’esecuzione del filesystem root da una scheda CF. Cercavo una soluzione più generale, e semplicemente Debian sembrava ideale. L’installazione è semplice. Hai bisogno di un adattatore CF-to-IDE per consentire al Microdrive di essere collegato a un computer che sta già eseguendo Linux e ha una connessione Internet o un CD di installazione di Debian. Fondamentalmente, si riduce ai seguenti passaggi di base, che sono solo una versione leggermente modificata della procedura di Jan Willem:
- Utilizzando fdisk, crea due partizioni sul Microdrive, swap e root
- Formatta il Microdrive utilizzando mkfs.ext3 (userò un filesystem journaling) e mkswap
- Monta il Microdrive, ad esempio, sotto /mnt
- Utilizzando debootstrap, scarica e installa un sistema Debian minimo in /mnt
- Installa il kernel 2.6.15 da Voyage Linux 0.2, configura i moduli
- esegui lilo -r /mnt per installare il bootloader lilo
- Sposta il Microdrive sulla WRAP
- Avvia la WRAP
Questa è solo una lista generalizzata dei passaggi. I dettagli seguono.
fdisk
Dopo aver collegato la mia scheda CF-to-IDE alla porta IDE1 del mio computer Linux, inserito il Microdrive nello slot CF e acceso il computer Linux, dmesg vede il Microdrive come /dev/hdc:
hdc: HMS360404D5CF00, CFA DISK drive
...
hdc: max request size: 128KiB
hdc: 7999488 sectors (4095 MB) w/128KiB Cache, CHS=7936/16/63, UDMA(33)
hdc: cache flushes supported
hdc: hdc1Quindi eseguo “fdisk /dev/hdc” come root. Il Microdrive viene preformattato con un filesystem FAT32.
Disk /dev/hdc: 4095 MB, 4095737856 bytes
128 heads, 63 sectors/track, 992 cylinders
Units = cylinders of 8064 * 512 = 4128768 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 * 1 992 3999712+ b W95 FAT32
Quindi, il primo passo è eliminare quel baby e creare una partizione swap e una partizione root al suo posto.
Disk /dev/hdc: 4095 MB, 4095737856 bytes
128 heads, 63 sectors/track, 992 cylinders
Units = cylinders of 8064 * 512 = 4128768 bytes
Device Boot Start End Blocks Id System
/dev/hda1 1 32 128992+ 82 Linux swap / Solaris
/dev/hda2 33 992 3870720 83 Linux
Come puoi vedere, ho messo la partizione swap all’inizio del disco. Probabilmente potrei cavarmela senza alcuno swap, ma perché no? 128MB è solo circa il 3% del disco. Con un sistema a disco singolo, la partizione swap “dovrebbe” trovarsi al centro del disco, ma avendo già fatto questo prima, preferirei avere tutti i miei dati in un unico filesystem piuttosto che distribuirli su due.
Inizializza le Partizioni e Monta
Comunque, i comandi successivi sono per inizializzare le nuove partizioni:
mkswap /dev/hdc1
mkfs.ext3 /dev/hdc2Questi due sono andati senza intoppi, quindi ho montato /dev/hdc2 come /mnt:
mount -t ext3 /dev/hdc2 /mntInstalla un Sistema Debian Minimo Utilizzando debootstrap
Poi mi è venuto in mente che o (1) il supporto ext3 deve essere compilato nel kernel, oppure (2) devo usare initramfs per caricare il modulo ext3 all’avvio. Questo potrebbe rappresentare un problema con il kernel di Voyage Linux, che è di tipo monolitico, se non ha ext3 compilato. Ma un rapido sguardo a “voyage-0.2/boot/config-2.6.15-486-voyage” mi ha rassicurato. ext3 è presente. Posso continuare.
debootstrap sid /mnt ftp://ftp.cz.debian.org/debian/Volevo installare “sid”, che è più recente, ma ha fallito nel momento in cui ha provato a scaricare il passaggio “base-config”. Per qualche motivo, l’elenco dei pacchetti sid include “base-config” ma il repository sid non contiene quel pacchetto. Più tardi, però, ho appreso che per installare sid su un sistema sarge come il mio, devo aggiornare alla versione sid di debootstrap, il che ha senso. Dopo aver fatto ciò, ha funzionato, senza errori.
Cosa c’è dopo?
Nel mio tentativo precedente di far funzionare Debian sulla WRAP (utilizzando una scheda CF), mi sono immediatamente chrootato in /mnt a questo punto e ho provato a configurare il sistema mentre la scheda CF era ancora nella mia macchina di installazione. Questo non ha funzionato molto bene, specialmente quando si trattava di eseguire “base-config”. Il problema erano le localizzazioni - nella prigione chroot, base-config non vedeva alcun supporto per le localizzazioni, ma poteva vedere le mie variabili d’ambiente per le localizzazioni. Quindi ha emesso molti avvisi. Volendo evitare questo, eviterò la configurazione iniziale e passerò direttamente all’installazione del kernel e all’esecuzione di lilo.
Installazione del Kernel Voyage Linux 2.6.15
Dopo un debole tentativo di compilare un pacchetto kernel per il WRAP, ho rinunciato e ho scaricato Voyage Linux 0.2, che include un kernel precompilato che è stato patchato per funzionare bene con il WRAP. Una bella caratteristica di questo kernel (oltre al supporto ext3 compilato, come menzionato sopra) è che ha letteralmente tutto incluso come moduli. Quindi non devi ricompilare - se hai bisogno di attivare una funzionalità del kernel, devi solo aggiungere il nome del modulo a /etc/modules.
Prima, ho estratto l’archivio voyage-0.2 e ho iniziato a curiosare al suo interno. Ho eseguito i seguenti comandi per trasferire il kernel Voyage al mio filesystem root CF:
cd voyage-0.2
cp -a boot/* /mnt/boot
cp -a lib/modules/* /mnt/lib/modulesConfigurazione di Base (Pre-avvio)
Moduli del Kernel
Il primo file di configurazione che ho affrontato è stato /etc/modules. Ecco il /etc/modules creato dallo script di configurazione della distribuzione Voyage Linux per la scheda WRAP, escluse le driver WLAN, che non sono trattate in questo documento:
# Interfacce LAN
natsemi
# timer watchdog incluso nel processore Geode `SC1100`
# Decommenta la seguente riga se stai eseguendo il demone watchdog
# wd1100 sysctl_wd_graceful=0 sysctl_wd_timeout=30
# monitoraggio termico hardware
lm77
# National Semiconductor SCx200 ACCESS.bus (necessario per la lettura della temperatura)
scx200_acb base=0x820,0
Un’altra cosa che mi è venuta in mente da fare è “depmod”, ma poi mi sono reso conto che il file modules.dep è già presente in /mnt/lib/modules/2.6.15-486-voyage, quindi non c’è bisogno.
/etc/inittab
Il prossimo file di configurazione da modificare è /etc/inittab. QUESTO È CRUCIALE, ALTRIMENTI NON OTTERRAI UNA CONSOLE SERIALE. Per ovvi motivi, l’installazione standard di Debian presume che avrai una tastiera e VGA come console Linux. Ma il WRAP ha bisogno di una console seriale. Ciò significa che dobbiamo modificare /etc/inittab per eliminare le console virtuali e abilitare una console seriale. Questo è molto semplice, ma devi fare attenzione alla velocità di trasmissione - se non corrisponde a quella che il BIOS del WRAP si aspetta, non vedrai nulla nell’emulatore di terminale all’avvio. Per scoprire a quale velocità è impostato il WRAP, premi il tasto “s” mentre il WRAP esegue il suo test di memoria iniziale. Questo ti porterà al menu del BIOS, dove puoi impostare 9600, 38400, o anche una velocità di trasmissione più alta. Io ho scelto 38400. Ecco il file completo /etc/inittab:
# /etc/inittab: init(8) configurazione.
# $Id: index.html,v 1.2 2006/06/19 08:52:38 livingston Exp $
# Il runlevel predefinito.
id:2:initdefault:
# Script di configurazione/inizializzazione del sistema all'avvio.
# Questo viene eseguito per primo, tranne quando si avvia in modalità emergenza (-b).
si::sysinit:/etc/init.d/rcS
# Cosa fare in modalità utente singolo.
~~:S:wait:/sbin/sulogin
# /etc/init.d esegue gli script S e K al cambiamento
# di runlevel.
#
# Il runlevel 0 è arresto.
# Il runlevel 1 è utente singolo.
# I runlevel 2-5 sono multi-utente.
# Il runlevel 6 è riavvio.
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normalmente non raggiunto, ma fallisce in caso di emergenza.
z6:6:respawn:/sbin/sulogin
# Cosa fare quando l'alimentazione fallisce/riprende.
pf::powerwait:/etc/init.d/powerfail start
pn::powerfailnow:/etc/init.d/powerfail now
po::powerokwait:/etc/init.d/powerfail stop
# Console seriale per WRAP
T0:23:respawn:/sbin/getty -L ttyS0 38400 vt100L’ultima riga esegue getty sulla porta seriale, consentendo di accedere come root.
/etc/fstab
Ecco qui con la strategia KISS (Keep It Simple, Stupid). Poiché abbiamo un Microdrive, possiamo rinunciare all’idea di minimizzare il numero di scritture al filesystem root.
# WRAP con Microdrive
/dev/hda1 swap swap defaults, 1 1
/dev/hda2 / ext3 defaults, 0 0
proc /proc proc defaults/etc/apt/sources.list
Questo file è utilizzato da “apt-get” per trovare i repository di pacchetti deb. Abbiamo bisogno solo di un’entrata a questo punto:
deb http://ftp.debian.cz/debian/ sid mainUna volta creato questo file nella struttura /mnt, ci chrootiamo e installiamo pacchetti aggiuntivi. Alcuni, come “less”, sono comodità, ma altri, come “lilo”, sono critici e non potrai avviare il WRAP senza di essi.
chroot /mnt /bin/bash
mount /proc
apt-get update
apt-get install watchdog # va con il modulo wd1100
apt-get install less
apt-get install lilo # CRITICO! QUESTO È UN MUST!
apt-get install udev # CRITICO! QUESTO È UN MUST!
apt-get install [il tuo pacchetto preferito di cui non puoi fare a meno]Nota che, per quanto ne so, grub non funzionerà con il WRAP e devi usare LILO. Sto solo ripetendo ciò che ho letto altrove, però, non parlo per esperienza.
/etc/lilo.conf
Il passo successivo è installare lilo (sono davvero arrivato così lontano?!). Ecco come ho fatto. Dopo aver lavorato e consultato il manuale, ho creato questo per il file di configurazione:
boot = /dev/hdc # Il Microdrive appare come /dev/hdc sul mio sistema
disk = /dev/hdc # Microdrive
bios = 0x80 # Il BIOS del WRAP vedrà questo come Master Primario
#compact
lba32 # imposta LBA nelle impostazioni del BIOS del WRAP - ma ho provato anche con CHS e funziona
install=text
map=/boot/map
vga=normal
delay=1
timeout=50
prompt
serial=0,38400n8 # Non c'è modo di impostare il duplex, quindi ottengo il raddoppio di ogni carattere all'avvio. Sigh.
default=Linux
image=/vmlinuz
# initrd=/initrd.img # Voyage Linux non utilizza initramfs (Grazie a Dio!)
root=/dev/hda2 # Questo è come apparirà il Microdrive sul WRAP
label=Linux
append="console=ttyS0,38400n8 reboot=bios"
read-only
# restricted
# alias=1Se stai usando “sid”, c’è un problema: il chroot in “sid” funziona in modo diverso rispetto a quello in sarge. Nell’ambiente chroot, non ci sono né “/dev/hda” né “/dev/hdc”. Quando esegui “df” ottieni questo:
Filesystem 1K-blocks Used Available Use% Mounted on
sysfs 3809936 220184 3396216 7% /sysChe è il Microdrive, ma non come “/dev/hdc”. Guardando nella directory /dev, vedo che c’è solo un insieme minimo di file di dispositivo che non include /dev/hdc. Quindi “lilo -t” produce un errore che non riesce a trovare /dev/hdc. Inoltre, il symlink “vmlinuz” nella directory root deve essere creato. La soluzione che ho trovato per questo è la seguente, assumendo che siamo già chrootati in /mnt:
cd /
ln -si boot/vmlinuz-2.6.15-486-voyage vmlinuz
cd dev
./MAKEDEV hda
./MAKEDEV hdc
lilo -tSul mio sistema, questo è stato sufficiente per superare lilo -t senza errori.
Dopo ho fatto:
lilo -v # è andato senza errori
umount /proc # non so se questo sia necessario
exit # esci dal chroot
umount /dev/hdc2 # smonta il Microdrive
shutdown -h nowIl Momento della Verità
Tutto ciò che resta è inserire il Microdrive nella scheda WRAP e accenderlo. Tuttavia, se vuoi vederlo avviarsi (e sono sicuro che lo vuoi), devi collegare la porta seriale della scheda WRAP a un altro computer utilizzando un cavo NULL modem DB9(femmina)-a-DB9(femmina) (noto anche come cavo Laplink).
Questi possono ancora essere acquistati, anche se di solito sono un articolo su ordinazione speciale. Una volta collegato il cavo NULL modem su entrambe le estremità, esegui un programma di emulazione terminale come (su Winblows) TuTTY (che è MOLTO meglio di Hyperterminal) o (sotto Linux) minicom. Le impostazioni corrette sono:
baud rate: 38400 (o qualunque sia la configurazione della scheda WRAP)
data bits: 8
parity: none
stop bits: 1
flow control: XON/XOFFQuesto è il momento che stavamo aspettando! Nel mio caso, si è avviato subito e mi ha premiato con un prompt di accesso:
Debian GNU/Linux testing/unstable wrap ttyS0
wrap login:La prima volta che accedi non c’è password di root, quindi dovresti ottenere un prompt di root semplicemente digitando “root”.
Configurazione (Post-avvio)
Aver avviato il WRAP dal Microdrive è solo l’inizio. Ci sono molte configurazioni da fare.
Demone Watchdog
Ci sono un paio di cose da tenere a mente qui. Prima di tutto, se metti la riga wd1100 in /etc/modules, DEVI eseguire il demone watchdog, altrimenti il modulo wd1100 riavvierà il sistema dopo non più di 30 secondi! Quindi fai attenzione ad attivare il modulo kernel wd1100.
Se lo attivi (utilizzando i parametri forniti sopra), tutto ciò che devi fare è “apt-get install watchdog” mentre il Microdrive è ancora nella macchina di installazione (prima di avviare il WRAP) e non ci saranno problemi. Il demone watchdog è impostato per scrivere automaticamente in /dev/watchdog ogni 10 secondi, mentre il modulo wd1100 riavvia solo se /dev/watchdog NON è stato scritto per 30 secondi o più. Quindi sei al sicuro. Puoi regolare “interval” in /etc/watchdog.conf a 15 secondi se lo desideri.
Un’altra cosa da considerare è a che punto durante l’avvio viene avviato il demone watchdog. Sul mio sistema, è l’ultima cosa a partire. Ciò significa che se qualche altro elemento di avvio è ritardato o scade, il modulo wd1100 sarebbe in esecuzione ma il demone watchdog non verrebbe avviato in tempo per impedirgli di riavviare il sistema. Quindi, sul mio sistema, ho spostato l’avvio del watchdog a un punto precedente nel processo di avvio. Volevo assicurarmi che venisse avviato prima di ntpdate, che è suscettibile a ritardi perché si connette a un server Internet per ottenere l’ora attuale.
Rete
Configurare la rete è al di fuori dello scopo di questo documento. Il minimo indispensabile di cui hai bisogno è impostare un’interfaccia IP fissa in /etc/network/interfaces e puntatori ai nameserver in /etc/resolv.conf. È anche buona norma impostare /etc/hostname e /etc/hosts (se hai altre macchine a IP fisso sulla tua rete, puoi inserire i loro indirizzi IP in /etc/hosts e mappare gli indirizzi a nomi leggibili come “daisy” o “patty”).
Telnet/ssh
Se stai usando Hyperterminal per comunicare con il WRAP, presto desidererai usare PuTTY invece. Per farlo funzionare, devi impostare o telnet (avviso di sicurezza obbligatorio: telnet non è sicuro - le password non sono criptate, teoricamente qualcuno potrebbe catturare la tua password ascoltando sulla porta telnet) o ssh. Avevo bisogno di una soluzione rapida e sporca, quindi ho usato telnet. Prima, aggiungi la seguente riga a /etc/inetd.conf:
#:STANDARD: Questi sono servizi standard.
telnet stream tcp nowait telnetd.telnetd /usr/sbin/tcpd /usr/sbin/in.telnetdPoi installa il pacchetto telnetd usando “apt-get install telnetd” e fai partire il superserver inetd (“/etc/init.d/openbsd-inetd start” in Debian “sid”). Impostare ssh su sid è discutibilmente ancora più semplice. Tutto ciò che devi fare è:
apt-get install openssh-serverOccupa 2 MB di spazio su disco, ma se c’è anche solo una remota possibilità che qualcuno dall’esterno possa connettersi alla porta telnet della tua macchina, beh, lascerò a te decidere quale sia meglio.
Tuttavia, prima di poter utilizzare telnet o ssh, devi impostare un account utente tramite “adduser”. È anche una buona idea impostare una password di root tramite “passwd”.
Da qui, è solo una questione di avviare PuTTY e scegliere telnet o SSH. Ovviamente, devi essere in grado di vedere il WRAP dal tuo computer Winblows. Se hai TCP/IP abilitato e il WRAP e il computer Winblows sono sulla stessa subnet (io uso 192.168.0.0/24, il WRAP è 192.168.0.7 e il computer Winblows è 192.168.0.5 - tutti questi sono indirizzi IP fissi, non viene utilizzato DHCP), allora basta digitare l’indirizzo IP del WRAP e dovrebbe funzionare.
exim4
Usa il comando “dpkg-reconfigure exim4-config” per configurarlo.
ntpdate
Poiché il WRAP non ha una batteria, perdi la tua impostazione dell’ora ogni volta che riavvii. Per garantire che il WRAP sappia che ore sono, e supponendo che tu abbia una connessione Internet “always-on”, puoi semplicemente installare il pacchetto ntpdate. Questo consulterà automaticamente un server di tempo e imposterà l’orologio del sistema all’avvio.
Client NFS
All’inizio avevo bisogno di accedere ai file della mia macchina Linux dal WRAP. La macchina Linux esegue la versione 2 del server kernel NFS. Per far accedere il WRAP, ho fatto quanto segue:
apt-get install portmap
apt-get install nfs-commonSul lato SERVER, ho impostato un file /etc/exports in questo modo:
/home/livingston wrap(rw)(wrap è impostato in /etc/hosts per puntare alla macchina WRAP)
Sul WRAP, ho fatto questo:
mount -o nfsvers=2,rw f216:/home/livingston /mnt(f216 è il server.) Per ulteriori informazioni dettagliate, fai riferimento al NFS-HOWTO.
Trucchi Interessanti per WRAP
Per scoprire la temperatura attuale del sistema:
cat /sys/bus/i2c/devices/0-0048/temp1_input(moltiplica il risultato per 1000 per ottenere gradi Celsius). Ecco un piccolo script bash che fornirà un output più user-friendly (richiede “bc”, quindi esegui “apt-get install bc” prima):
#!/bin/sh
t=`cat /sys/bus/i2c/devices/0-0048/temp1_input`
t2=`echo scale=1",$t/1000|bc -l`
echo "Temperatura del sistema: "$t2" gradi Celsius"
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.