Home Tecnica Distribuzioni GNU/Linux Openembedded: la distribuzione «ristretta» per Linux

In evidenza

SMAU a Bologna con Research to Business

SMAU a Bologna con Research to Business

Il 6 e 7 giugno il Roadshow Smau Business torna a far tappa al Padiglione 33 della Fiera di Bologna e...
Gli articolisti del Portale

Gli articolisti del Portale

Abbiamo deciso di dare più visibilità a tutti coloro che hanno pubblicato articoli per noi, questo perché...
SMAU festeggia il suo quinto anno nel NordEst a Padova

SMAU festeggia il suo quinto anno nel NordEst a Padova

Il 18 e 19 aprile al padiglione 5 di Padova Fiere si terrà la prossima tappa di SMAU Business Roadshow. All'evento...
SMAU risale l’Italia e arriva a Roma

SMAU risale l’Italia e arriva a Roma

Il 21 e 22 marzo nella Nuova Fiera di Roma si terrà la prossima tappa di SMAU Business Roadshow. L'evento...

Bandi di Concorso

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

Avviso per incarico ad ingegnere informatico alla Provincia di Bergamo

Nell'ambito del progetto denominato "SOS badanti: la rete provinciale di sportelli per assistenti e collaboratori familiari” nell'ambito del programma "SAP - Servizi alla Persona" è stato pubblicato la Provincia di Bergamo ha pubblicato l'avviso per il reclutamento di una unità per incarico di...

21 Mag 2012 - Letture:1

Esperto di servizi e tecnologie cloud al Digit PA

Procedura comparativa per il conferimento di un incarico di collaborazione coordinata e continuativa per un profilo senior di “Esperto di servizi e tecnologie cloud”, nell’ambito del progetto europeo “Open Dai” presso l' Ente nazionale per la digitalizzazione della Pubblica Amministrazione...

18 Apr 2012 - Letture:34

Selezione per addetto servizi informatici all'Autorità Portuale di Brindisi

Avviso di selezione pubblica per titoli e prova orale per l’assunzione di n. 1 “addetto ai servizi informatici”, a tempo pieno ed determinato triennale, previo periodo di prova, da inquadrare nell’Area Amministrativa. (Inquadramento al III Livello del C.C.N.L. dei Lavoratori...

12 Feb 2012 - Letture:435

Concorso pubblico per informatico alla Corte dei Conti

E' indetto un concorso pubblico, per   esami,   per   il reclutamento di tre unità di informatici da inquadrare nella III area, fascia retributiva F1, da destinare agli Uffici della Corte dei Conti con sede in Roma. Requisiti: laurea triennale in scienze e...

05 Feb 2012 - Letture:306

Istruttore informatico L.68/1999 al Comune di Potenza

Concorso pubblico, per esami, per la copertura di n. 2 posti di Istruttore Informatico, categoria C, posizione economica C1, a tempo pieno e indeterminato, con riserva assoluta alle categorie dilavoratori di cui all'art. 1 della legge n. 68/1999 (norme per...

21 Gen 2012 - Letture:244

Senior Business Consultant presso Lombardia Informatica

Selezione per figura Senior Business Consultant presso Lombardia Informatica. Il collaboratore dovrà fornire consulenza strategica e di business sulle tematiche verticali della Socio-Sanità. Requisiti di ammissione: Laurea in Ingegneria, Economia e Commercio o Scienze dell’Informazione; Percorsi di formazione professionale in ambito sanitario e socio-sanitario, su...

11 Gen 2012 - Letture:284

Bando progetto TAG (Toscana Area Giovani) per giovani talenti digitali

UPI Toscana ha indetto un avviso pubblico per la selezione di 20 giovani (2 per ciascuna delle 10 province della Toscana), da impiegare come formatori all'interno del Progetto TAG (Toscana Area Giovani). Il bando è finalizzato a valorizzare al meglio i...

03 Gen 2012 - Letture:271

I più attivi

Dati e punteggi dell'ultimo anno

Giovanna Casamassima Giovanna Casamassima
47 articoli
16,500 punti totali
Rodolfo Giometti Rodolfo Giometti
49 articoli
5,152 punti totali
Vittorio D'Aversa Vittorio D'Aversa
33 articoli
3,444 punti totali
Fulvio Lucchetti Fulvio Lucchetti
9 articoli
0,279 punti totali
Luigi Carbone Luigi Carbone
10 articoli
0,262 punti totali

Ci hanno visitato

Oggi:1232
Ieri:2110
Totali (14/04/09):1170407

I nostri numeri

Articoli pubblicati: 552
Iscritti al portale: 768
Iscritti all'Elenco: 184
Iscritti ML Discussioni: 351
Iscritti ML Articoli: 30
Iscritti ML Lavoro: 166
 

Installare strace su Android

Quando si programma è importante avere buoni tool di debug e uno dei più importa...

Come ti controllo i tassi di interesse con Linux

In questi giorni sto cercando di fare una surruga per il mutuo di casa mia. Tra ...

Google +1: il «nemico» del «mi piace» di Facebook

Il tanto atteso nemico del "mi piace" targato Facebook è arrivato, il colosso de...

IPhone recupero file: un gioco di squadra!

Un giorno l'amico Armando Buzzanca mi chiama perchè deve recuperare una no...

F-Droid, e il FOSS su Android è servito!

Come Software Libre Evangelist mi son spesso trovato ad incoraggiare l'uso del s...

Multi puntatore su Ubuntu 10.4: ecco come

Tempo fa ebbi modo di dare un'occhiata al progetto MPX per un cliente. La cosa n...

SL4A e il drone parla più lingue

Chi come me non ama Java si sentirà a disagio volendo programmare una qualsiasi ...

I-Memo: le password personali sempre con te

Prodotto dalla MensTecnica, una giovane azienda della Basilicata fondata nel 200...

I dati e le loro anomalie nascoste

La motivazione per questo articolo nasce dalla crescente problematica di gestion...

Come creare un NFS server ridondante

Quelli che mi conoscono sanno che il mio ambito lavorativo è nei sistemi embedde...

TurnKey Linux: accendi e vai!

Quanto tempo occorre per installare e configurare una macchina LAMP (Linux, Apac...

Il telefono… la tua voce!

Era lo slogan pubblicitario della Telecom di un po’ di anni fa. Certo, al concet...

L'SMS autoprodotto!

Tempo fa sulla mailing list di CFI ho provato a lanciare l'idea di effettuare un...

Cloud Money

Discorrendo con un collega di cloud computing, si è finito, come al solito, a pa...

Boot from SAN

Intendiamoci, non è l’ultima briciola tecnologica caduta da un banchetto alla NA...

Tenere i servizi sotto controllo con Monit

In questi giorni mi è capitato di dover risolvere un problema per un mio cliente...

Integrazione Webmaster Tool. Google Analytics, le ultime novità

Google non finisce mai di stupirci, ma soprattutto è inarrestabile sull'implemen...

Il settore danneggiato e l'acquisizione forense

Se si deve acquisire un hard disk in maniera forense, ossia con tutti i crismi n...

Git in Eclipse

Chi mi conosce sa la mia avversione (del tutto personale, ci tengo a sottolinear...

Controllare MAME con Wiimote su N900!

Ecco un'altra dimostrazione delle potenzialità di questo telefono (se vogliamo c...

munin: come ti controllo il server aziendale

In questi ultimi tempi il server che mantiene il nostro portale è sottoposto ad ...

Gimp, OpenOffice & C. su N900? Semplice con Debian!

Che Maemo fosse versatile me ne sono accorto subito, ma l'idea di poter installa...

Nvidia 295.33, ecco i nuovi driver per linux versione 3.3

L'annuncio è di qualche giorno fa, Nvidia rilascia i nuovi driver 295.33 con sup...

Lion desktop: finalmente una distribuzione mirata alle aziende!

Chi è abituato a lavorare con Linux, ed in particolare ha provato a lavorare con...

Sabayon Linux 5.4 (32 e 64 bit)

E' stata rilasciata online la nuova versione 5.4 di Sabayon Linux, una tra ...

GNU readline: un tool indispensabile per la linea di comando

Chiunque di voi abbia avuto a che fare con la linea di comando avrà senz'altro a...

Forno a microonde: analisi emissioni EME

Nell'immaginario collettivo c'è una forte paura per i danni che posso generare s...

Come saltare il proxy «blocca-tutto» aziendale

Mi capita spesso, ma non sempre, di andare da dei miei clienti e non potermi con...

Mageia 1 alpha1 è tra noi

Finalmente è stata rilasciata la tanto attesa versione alpha1 principalmente riv...

Android: se non hai il telefono usa l'emulatore!

In questi giorni sto valutando di comprare un cellulare basato su Linux. Inizial...

WODE, l'emulatore DVD per la Wii

Qualche giorno fa mi è capitato di sfidare mio cognato ad una partitella a tenni...

busybox & Android: la command line facile

Nei precedenti articoli abbiamo visto due tecniche per aggiungere nuovi programm...

Cifratura wireless: TKIP vs AES

Una delle domande più frequenti di chi intende implementare una rete Wireless è...

Installare Linux su una USB key: ecco come!

L’installazione  e l'avvio di una distribuzione Linux Live da un supporto U...

Perché cross compilare quando si può compilare nativamente?

Lavorando con architetture diverse mi trovo spesso a dover utilzzare uno stesso ...

Intervista esclusiva a Mageia Linux

La Presidente dell'Associazione MAGEIA.ORG, Anne Nicolas, in questa intervi...

Come gestire una presentazione con il Wiimote

Capitandomi spesso si tenere conferenze e workshop mi trovo sempre il problema d...

Autenticarsi con la pen drive

La pen drive è ormai diventata come il cellulare, impossibile non averla, ma sie...

Server Linux: tutti i trucchi per farlo al meglio

Volete fare un server Linux per la vostra impresa, ufficio o semplicemente per c...

Demolinux: l'automazione industriale con Linux

Qualche tempo fa il mio ex istituto superiore mi aveva chiesto di fare una picco...

Anomalie di partizionamento hard disk: un esperienza personale

Nonostante le decine di installazioni delle varie distribuzioni Linux eseguite s...

Architettura di una trading room

La trading room o sala mercati è il luogo dove vengono effettuate le operazioni ...

Linaro, la no-profit che produce distribuzioni Linux/ARM

Il progetto Linaro presentato nel 2010 da colossi del calibro di Freescale Semic...

Geexbox: la mini distro MediaCenter Linux

Geexbox è un piccolo ma potente sistema operativo orientato alla riproduzione di...

Generare un file pieno di 0xff

Per generare in file da 16Kbyte pieno di zeri su di un sistema UNIX/GNU-Linux si...

Openembedded: la distribuzione «ristretta» per Linux

Quando le risorse di un sistema sono limitate non è possibile usare una distribu...

Linutop OS 4.0: Internet, Chiosco Multimediale e non solo!

Presentata negli ultimi giorni nella capitale francese la nuova distribuzione LI...

Snom 870: il telefono con Linux

Definirlo solo telefono è sicuramente riduttivo, infatti lo Snom 870 è sicuramen...

Virtualizzazione di Windows XP o altri SO su Ubuntu con Qemu

I pc odierni sono sempre più potenti e molto spesso sotto sfruttati, la virtua...

ASUS U36SD il notebook in soli 19mm

La concorrenza al più blasonato della “mela” si fa agguerrita specie nell'ultimo...

Cluster VMWARE

In questo articolo vediamo come realizzare un cluster di macchine virtuali con u...

ettercap: il man-in-the-middle facile

Troppo spesso mi rendo conto che molti considerano la rete aziendale o quella ...

Socat: quando i dati passano via rete

Lavorando coi sistemi embedded molte volte mi capita di dovermi arrangiare su di...

XMount finalmente liberi di virtualizzare!

Cosa succede dopo che abbiamo acquisito un disco in bitstream su file immagine? ...

Sviluppare codice per Arduino dalla command line

Arduino Uno è un micro controllore basato su CPU ATmega328; si alimenta via alim...

Verificare spazio su disco su UNIX

Nella gestione si sistemi informativi capita spesso di accedere a postazioni ser...

Il NAS D-Link DNS-343

Grazie alla D-Link azienda produttrice di apparecchiature di rete e non solo v...

Arduracing: come realizzare una robot-car intelligente con Arduino

Arduracing è un progetto realizzato con Arduino in collaborazione con il Lucccal...

Gobby: l'editor collaborativo

Quante volte vi sarà capitato di dover dire come modificare un file di testo ad ...

Universal USB Installer 1.8.04 e Ubuntu Linux 10.10

Rilasciata il 10.10(.2010) la nuova versione di Ubuntu Linux (la data corrispond...

Openembedded: la distribuzione «ristretta» per Linux Stampa E-mail
(1 voto, media 5.00 di 5)
Area Tecnica - Distribuzioni GNU/Linux
Scritto da Rodolfo Giometti   
Giovedì 10 Febbraio 2011 11:32
Articolo letto 1713 volte

logoQuando le risorse di un sistema sono limitate non è possibile usare una distribuzione classica (Ubuntu, Debian e via discorrendo) ma occorre usare una distribuzione che abbia un footprint (cioè una occupazione di memoria di massa) molto ridotto.

Una distribuzione abbastanza versatile e diffusa è OpenEmbedded che è la distribuzione alla base di altre distribuzioni più note come, ad esempio, OpenMoko e Angstrom.

OpenEmbedded, al momento, supporta diverse architetture (x86, arm, powerpc, mips, ecc.) e CPU ed è in grado di generare, per queste macchine, una distribuzione completa (e pronta da caricare sul sistema) con il relativo SDK! Non c'è che dire: servizio completo.

Installazione

Installare OpenEmbedded è relativamente facile poiché si fa tutto con GIT. Basta clonare il repository con il comando:

$ mkdir OE && cd OE
$ git clone git://git.openembedded.org/openembedded
Initialized empty Git repository in /home/giometti/OE/openembedded/.git/
remote: Counting objects: 418106, done.
remote: Compressing objects: 100% (118843/118843), done.
Receiving objects:   0% (124/418106), 36.00 KiB | 3 KiB/s

Una volta finito (e ci vorrà un bel po'...) dobbiamo installare il motore di OpenEmbedded: BitBake.

BitBbake è un tool per la gestione e la compilazione di pacchetti software il quale tiene conto anche delle dipendenze che intercorrono tra di essi, ad esempio, se il pacchetto A dipende dal pacchetto B, e se si chiede a BitBake di compilare A, allora egli provvederà a compilare prima B e poi A. Non solo, BitBake si occupa anche di scaricare i sorgenti ed utilizzare un cross compilatore nel caso che il sistema su cui si compila sia di architettura diversa da quella del sistema embedded.

Sul mio sistema basato su Ubuntu il pacchetto di BitBake che viene fornito è obsoleto e quindi devo installarmelo scaricando i sorgenti direttamente dal sito ufficiale:

$ wget http://download.berlios.de/bitbake/bitbake-1.10.2.tar.gz
$ tar xvfz bitbake-1.10.2.tar.gz
$ ln -s bitbake-1.10.2 bitbake

In fine occorre installare un po' di pacchetti di supporto; sulla mia Ubuntu ho usato:

$ sudo aptitude install python-psyco texinfo chrpath diffstat texi2html cvs subversion

Una nota finale, verificate che la shell di default sia bash e non dash, cioè:

$ sudo rm /bin/sh
$ sudo ln -s /bin/bash /bin/sh

Generazione immagine

A questo punto siamo pronti, ora non ci resta che decidere quale sistema utilizzare per un test di base.

Io, in questo articolo, utilizzerò un sistema basato su CPU arm, nello specifico di un sistema Cirrus EP9307A.

Per dire ad OpenEmbedded di creare una immagine del rootfs per il mio sistema basta che crei alcuni file di configurazione:

$ install -d build/conf
$ cp openembedded/conf/local.conf.sample build/conf/local.conf

e quindi apportare le seguenti modifiche:

-DL_DIR = "${HOME}/sources"
+DL_DIR = "${OEBASE}/sources"
-BBFILES := "${@bb.fatal('Edit your conf/local.conf: BBFILES')}"

+BBFILES := "${OEBASE}/openembedded/recipes/*/*.bb
+MACHINE = "ep93xx"
+DISTRO = "minimal"
-REMOVE_THIS_LINE:="${@bb.fatal('Read the comments in your conf/local.conf')}"

Dove con la variabile OEBASE ho specificato la directory di lavoro /home/giometti/OE usata prima in fase di download dei sorgenti.

La spiegazione delle impostazioni è abbastanza banale, con DL_DIR specifico dove salvare i file dei sorgenti dei pacchetti che verranno di volta in volta scaricati per essere compilati, con BBFILES dico a BitBake dove sono le ricette di OpenEmbedded, mentre con MACHINE e DISTRO specifico proprio la configurazione del mio sistema embedded e il tipo di distribuzione che voglio metterci su (esistono diverse distribuzioni generabili e minimal è quella minimale con solo la console seriale più un server SSH).

In fine, cancellando la linea che definisce la variabile REMOVE_THIS_LINE dico a BitBake che il file di configurazione è usabile.

A questo punto non mi resta che generare l'immagine, ma prima di lanciare BitBake devo configurare alcune variabili d'ambiente:

export OEBASE=/home/giometti/OE
export PATH=$OEBASE/bitbake/bin:$PATH
export BBPATH=$OEBASE/build:$OEBASE/openembedded
export BB_ENV_EXTRAWHITE="OEBASE"

quindi faccio partire la compilazione con il comando:

$ bitbake minimal-image

se abbiamo configurato tutto bene dovremmo vedere qualcosa tipo:

$ bitbake minimal-image
NOTE: Handling BitBake files: \ (7289/7289) [100 %]
Parsing of 7289 .bb files complete (0 cached, 7289 parsed). 7654 targets, 343 skipped, 0 masked, 0 errors.

Build Configuration:
BB_VERSION        = "1.10.2"
METADATA_BRANCH   = "master"
METADATA_REVISION = "e152587"
TARGET_ARCH       = "arm"
TARGET_OS         = "linux-gnueabi"
MACHINE           = "ep93xx"
DISTRO            = "minimal"
DISTRO_VERSION    = "dev-snapshot-20110207"
TARGET_FPU        = "soft"

NOTE: Resolving any missing task queue dependencies
NOTE: Preparing runqueue
NOTE: Executing runqueue

Ora mettevi pure comodi o, meglio, prendetevi una bella pausa perché ci vuole parecchio tempo prima che la creazione del filesystem finisca. Ovviamente questo dipende dalla macchina che utilizzate, ma giusto per darvi un'idea sul mio povero dualcore (che però ha un disco via NFS) ci son volute più di 8 ore... è chiaro che queste cose si fanno su una macchina con multe CPU, tanta RAM e un disco veloce, ma è anche vero che una volta creata l'immagine di base la si mette da parte e non la si ricrea più (a meno di modifiche sostanziali).

Il test

Una volta finito, nella directory tmp troviamo i risultati del nostro lavoro:

$ ls tmp/
abi_version    deploy/      pkgdata/  rootfs/         stamps/    usr/
cache/         distro_pr    pstage/   saved_tmpdir    sysroots/  work/

Non sto qui a spiegare a cosa servono tutte le directory (rimando il lettore curioso al manuale di OpenEmbedded), quello che però ci interessa è la directory tmp/deploy:

$ ls tmp/deploy/
images/  ipk/  sources/

In tale directory infatti ci sta l'immagine del rootfs del sistema (directory images) e i file ipkg (directory ipkg) di ogni pacchetto software installato nella rootfs creata. Questi ultimi sono molto importanti perché sono già in una forma esportabile via HTTP in modo tale da costituire un repository di base del sistema dal quale poter scaricare nuovo software e/o aggiornamenti; infatti nella directory tmp/deploy/ipk/ si ha:

$ ls tmp/deploy/ipk/
Packages           Packages.gz        all/     ep93xx/
Packages.filelist  Packages.stamps    armv4t/

Se configuriamo un server HTPP che punta a questa directory, basterà allora configurare il tool opkg nel sistema embedded in modo tale che punti al nostro server e i pacchetti saranno aggiungibili via rete nè più nè meno di come si fa per una distribuzione classica!.

Ma vediamo una prova di funzionamento. Prima di tutto prendo l'immagine in formato JFFS2 e la metto in flash (qui la procedura dipende dal sistema utilizzato e quindi non la riporterò), poi accendo il sistema e, dopo i primi messaggi del kernel, via console seriale vedo:

VFS: Mounted root (jffs2 filesystem).
Freeing init memory: 112K
INIT: version 2.86 booting
Please wait: booting...
Error opening /dev/fb0: No such device or address
Starting udev
error initializing netlink socket
Root filesystem already rw, not remounting
Caching udev devnodes
Populating dev cache
root: mount: mount point /dev/shm does not exist
Configuring network interfaces... ifup: can't open '/var/run/ifstate': No such file or directory
done.
Setting up IP spoofing protection: rp_filter.
Tue Feb  8 09:05:00 UTC 2011

touch: /var/log/wtmp: No such file or directory
INIT: Entering runlevel: 5
mkdir: can't create directory '/var/lock/': No such file or directory
chown: /var/lock/subsys: No such file or directory
chmod: /var/lock/subsys: No such file or directory
chown: /var/log/wtmp: No such file or directory
chmod: /var/log/wtmp: No such file or directory
Creating Dropbear SSH server RSA host key.
Will output 1024 bit rsa secret key to '/etc/dropbear/dropbear_rsa_host_key'
Generating key, this may take a while...
Public key portion is:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwCDP7S/6c6+DSdQcSP8/ni+gUQqL8Setj1PkrtYS2AENEuA5H0DrQsNtbNufCgcKB/e2R82WaXPHmC+BBbF+53aMem95ygktEdR9/61LoFJv/oLgZ55Uirp4w1ycAv4E5NlpKz2mUCSstczqcfFCQfoPjOdiwzBZIExKEVgPOgMLQmx root@ep93xx
Fingerprint: md5 21:1a:06:17:a1:18:77:0c:1d:8f:67:f5:4a:c6:be:64
Starting Dropbear SSH server: dropbear.
Starting syslogd/klogd: done

OpenEmbedded Linux ep93xx ttyAM0

minimal dev-snapshot-20110207 ep93xx ttyAM0

ep93xx login:

Aggiungere un pacchetto

Creare una distribuzione di base, ovviamente, è cosa buona e giusta, ma fare questo senza poter aggiungere nuovi pacchetti è diabolico! Vediamo allora come si può aggiungere un pacchetto al nostro sistema nuovo di pacca.

Ci sono due strade:

  1. appoggiarsi ad una distro già consolidata e che esporta i suoi pacchetti in rete e quindi scaricarli da lì (ad esempio Angstrom), oppure
  2. ricompilarsi di volta in volta i pacchetti che ci servono e quindi installarli nel sistema via HTTP o a mano.

Vediamo un esempio di quest'ultima ipotesi utilizzando un server HTTP (precedentemente configurato).

Supponiamo ad esempio di voler aggiungere il supporto per il linguaggio PHP al sistema, prima di tutto dobbiamo compilarci il pacchetto php con BitBake:

$ bitbake php

Una volta finito, nella solita directory tmp/deploy dovremmo trovare i file ipkg relativi a PHP:

$ ls tmp/deploy/ipk/armv4t/php*
tmp/deploy/ipk/armv4t/php-cgi_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php-cli_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php-dbg_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php-dev_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php-doc_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php-pear_5.2.13-r7.4_armv4t.ipk
tmp/deploy/ipk/armv4t/php_5.2.13-r7.4_armv4t.ipk

Quindi rigenero i file di indice per il repository su HTTP:

$ bitbake package-index

Ora, per installare il supporto per PHP basta andare sul sistema embedded e dare il comando:

root@ep93xx:~# opkg update
Downloading http://gundam/remote-feed//all/Packages.gz.
Inflating http://gundam/remote-feed//all/Packages.gz.
Updated list of available packages in /var/lib/opkg/remote-all.
Downloading http://gundam/remote-feed//armv4/Packages.gz.
wget: server returned error: HTTP/1.1 404 Not Found
Downloading http://gundam/remote-feed//armv4t/Packages.gz.
Inflating http://gundam/remote-feed//armv4t/Packages.gz.
Updated list of available packages in /var/lib/opkg/remote-armv4t.
Downloading http://gundam/remote-feed//ep93xx/Packages.gz.
Inflating http://gundam/remote-feed//ep93xx/Packages.gz.
Updated list of available packages in /var/lib/opkg/remote-ep93xx.
Collected errors:
* opkg_download: Failed to download http://gundam/remote-feed//armv4/Packages.gz, wget returned 1.

Per aggoirnare il sistema, e quindi, per installare PHP uso:

root@ep93xx:~# opkg install php
Installing php (5.2.13-r7.4) to root...
Downloading http://gundam/remote-feed//armv4t/php_5.2.13-r7.4_armv4t.ipk.
Configuring php.

Strabiliante!

 
 

In primo piano

Simons Voss: un mondo senza chiavi

Simons Voss: un mondo senza chiavi

Il sistema di gestione e di controllo degli accessi 3060 si presenta come un’alternativa con enormi vantaggi...
Pubblicità mirata dei prodotti

Pubblicità mirata dei prodotti

Hai un prodotto o un servizio da pubblicizzare? Fallo su consulenti-ict.it! Pubblicizzare un prodotto...
Recensioni sul Portale

Recensioni sul Portale

Hai un prodotto hardware/software o un libro riguardante uno dei temi dell'ICT? Vuoi farlo conoscere...

Offerte di lavoro

Visualizza Topic »

Eventi

Non ci sono eventi in programma
Maggio 2012
D L M M G V S
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
Giugno 2012
D L M M G V S
27 28 29 30 31 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Sondaggi

busyCaricamento Sondaggio...