Although Sheevaplug has appeared to be not particularly reliable piece of hardware (this claim is based on personal experience and numerous reports of other users), it is a great fun as well, so I gave it next (the last one) chance and have bought another new plug to replace the broken one.
I planned to use SDHC card with Debian which worked seamessly with my previous plug computer, so I follow the procedure described below.
Connect PC to Sheevaplug with USB-miniUSB cable
Turn on the plug computer.
Run cu:
cu -s 115200 -l /dev/ttyUSB0
press any key. In response to boot loader prompt type:
Marvel>> version U-Boot 1.1.4 (Dec 27 2009 - 22:03:21) Marvell version: 3.4.27
The u-boot boot loader have to be upgraded before installing Debian
(cf.
http://www.cyrius.com/debian/kirkwood/sheevaplug/uboot-upgrade.html
).
Copy the U-Boot binary u-boot.kwb
to a USB stick formated with the FAT filesystem.
Plug the USB stick into a plug computer, connect the serial console and type the following commands:
usb start fatload usb 0:1 0x0800000 u-boot.kwb nand erase 0x0 0x60000 nand write 0x0800000 0x0 0x60000
Regardless of how U-Boot was installed, one have to restart the machine to load the new version of U-Boot:
reset
Boot the system (cf.
http://www.cyrius.com/debian/kirkwood/sheevaplug/unpack.html
).
Configure the boot loader now. First of all, one has to change a setting so the device will boot the kernel which is used by Debian:
setenv mainlineLinux yes setenv arcNumber 2097 saveenv reset
Restart the device so the changes will take effect. Now configure the machine to boot:
setenv bootargs_console console=ttyS0,115200 setenv bootargs_root 'root=/dev/mmcblk0p2' setenv bootcmd_mmc 'mmc init; ext2load mmc 0:1 0x00800000 /uImage; ext2load mmc 0:1 0x01100000 /uInitrd' setenv bootcmd 'setenv bootargs $(bootargs_console) $(bootargs_root); run bootcmd_mmc; bootm 0x00800000 0x01100000' saveenv
At this point SheevaPlug is ready to boot Debian automatically from SD card.
So, I inserted
my SDHC card with Debian 5.0 installed some 2 years ago and tried to connect via ssh
.
ssh -l <user> 192.168.1.88 Linux neptune.pinkaccordions.org 2.6.30-5-kirkwood #1 Wed Jan 12 15:27:07 UTC 2011 armv5tel
System is up and running so it seems reusing SDHC card with old Debian installation was sucessfull, but shortly I discovered there were problems...
System clock is terribly fast and
there are problems communicating with USB port. Upon consulting google I have discovered
kernel upgrade is recommended (cf.
http://www.cyrius.com/debian/kirkwood/sheevaplug/boot.html
and
http://www.cyrius.com/journal/debian/kirkwood/sheevaplug/
):
apt-get update apt-get dist-upgrade flash-kernel
First command generated lots of 404 errors because Lenny is not supported anymore (I was not aware of that).
I decided not to upgrade
to Lenny
and fixed /etc/apt/sources.list
instead
(cf.
http://superuser.com/questions/404806/did-debian-lenny-repositories-vanish
):
deb http://archive.debian.org/debian/ lenny main non-free contrib deb-src http://archive.debian.org/debian/ lenny main non-free contrib # Volatile: deb http://archive.debian.org/debian-volatile lenny/volatile main contrib non-free deb-src http://archive.debian.org/debian-volatile lenny/volatile main contrib non-free # Backports: deb http://archive.debian.org/debian-backports lenny-backports main contrib non-free # Previously announced security updates: deb http://archive.debian.org/debian-security lenny/updates main
Then, apt-get dist-upgrade
and flash-kernel
was completed
without errors.
After reboot, system works fine. I plan to upgrade it to Squeeze in the nearest future.
The moral from the story is: with God's and Google help one has not to be an expert to cope with running Linux.
Dziś wpisując df
przeraziłem się widząc, że pozostało
mi 17% wolnej przestrzeni
na pinkaccordions.homelinux.org
(8Gb karta SDHC)
bo
do niedawna było to ca. 70%.
Szukając winnego znalazłem ponad 3Gb plik w katalogu
/var/lib/mlocate
, który powstał (i powiększał się) ponieważ
lekkomyślnie zamontowałem
katalog ,,/'' z dugiej szewy poprzez fusermount
.
Z kolei ta druga szewa ma podłączony 2 Tb dysk (który nie jest
przez nią indeksowany dzięki dodaniu czego trzeba do
/etc/updatedb.conf
).
W pierwszej chwili
chciałem zablokować indeksowanie podmontowanego katalogu. Po chwili
namysłu zdecydowałem się na bardziej radykalne wywalenie mlocate
:
apt-get remove mlocate && rm -rf /var/lib/mlocate/*
Alternatywnie można dodać do /etc/updatedb.conf
vim /etc/updatedb.conf # PRUNEPATHS to, które _nie będą_ indeksowane, dodaję /<ssfhs-katalog> żeby # nie był indeksowany katalog zamontowany via fusermount # PRUNEPATHS="/tmp /var/spool /<ssfhs-katalog>"
Ale po co mi w ogóle indeksowanie systemu plików na serwerze? Niepotrzebne... A im mniej zapisów tym -- podobno -- karta dłużej wytrzyma.
Przy okazji problemów z szewą:
mój sposób synchronizacji czasu nie działa na jednej szewie jeżeli
przy starcie systemu ntp
nie połączył się
z serwerem czasu...
Poprawiłem czas (z pomocą kol. Rafiego):
# /etc/init.d/ntp stop * Stopping NTP server ntpd [ OK ] # ntpdate ntp.ubuntu.com # /etc/init.d/ntp start
Popsuł się zasilacz w Sheevaplug co objawiało się tym, że po włączeniu migała tylko żółta dioda i dioda przy porcie RJ45 (także na żółto). Na szczęście problem był mi znany ponieważ jest masa doniesień i żalów co do jakości zasilacza aka PSU (power supply unit). Przykładowo tutaj:
Mine is flickering green and also ethernet port. No blue light. Do you think I have the same problem? Please let me know...
No więc zepsuł się 28. stycznia, tj. w piątek wieczorem. Od razu zamówiłem replacement psu, które wysłane 31. stycznia doszło w piątek... Nawiasem mówiąc dziś (sobota 5. lutego) na stronie jest napis Pre-Order now, due in late February -- musiałem kupić ostatni. Widać mocno schodzący towar:-) i warto mieć zapas ale o tym później...
Teoretycznie zmiana jest prosta, ale po rozkręceniu nie byłem tego już taki pewien. Obudowa tego komputera jest z plastiku a PSU i gniazdo zasilania wsadzone na zicher pomiędzy obudowę a wewnętrzne zaczepy (cf. tutaj). Bojąc się połamania obudowy poszedłem do fachowca (Piotr Strzelczyk) i to był dobry ruch. Zwłaszcza wsadzenie z powrotem gniazda zasilania było trudne.
Szewę kupiłem w październiku 2009 co oznacza, że popsuła się po 15 miesiącach. Not bad -- innym psuje się już po kilku... Mam jeszcze drugą szewę więc dobrze by było mieć zapasowy zasilacz pod ręką na wypadek braków w magazynie. Zamierzam zatem wypróbować procedurę reklamacji opisaną tutaj:
We can of course supply these under your warranty, but first we need to have your failed PSU returned to us (this is a stipulation from Globalscale, we have had to buy the PSU's and will get refunded for the failed PSU's we return to them), before we can send out the replacement. The charge for sending out the replacement PSU will be based on your location:
UK Customers -- GPB 2.50 [and] EU Customers -- GBP 5.00
If you feel you are not confident to do this replacement you can of course send the unit to us for us to carry out the replacement, there will however be a charge for returning the unit to you, this will again be based on your location:
UK Customers -- GBP 7.00 [and] EU Customers -- GBP 10.00
Nawet już napisałem do mr. Jasona, ale mnie olał... No cóż będziemy namolni.
Wygląda na to, że wadliwy PSU Sheevaplug to tzw. pikuś przy problemach z GuruPlug, reklamowanym jako następca Sheevaplug, który się nadmiernie grzeje. Niektórzy wprawdzie twierdzą, że nie ale problem chyba jest skoro producent [w desperacji] wyposażył GuruPlug w wiatrak, który:
makes a sound resembling that of a hair dryer...
Innym przypomina to odkurzacz (They are ridiculously noisy, similar to a high powered vacuum cleaner) Anyway, sprawa wygląda kiepsko. Kiedyś chciałem kupić GP, ale teraz już nie chcę...
Potencjalnym rozwiązaniem może być zewnętrzny zasilacz. Przykładowo tutaj jest opisane takie rozwiązanie. Jak się nowy [podobno lepszy] zepsuje, to może też się zdecyduję na zewnętrzny...
Dopisane 19 lutego 2011:
Problem jest wałkowany in extenso w tym wątku na
forum plugcomputer.org
Zainstalowałem Debiana Lenny na karcie SD (Patriot 16Gb class 6) wg. wskazówek ze strony Manually unpacking a tar ball of Debian on SheevaPlug, ale nie poszło gładko. Ponieważ boot loader mojej szewy był w wersji wcześniejszej od zalecanej 3.4.19, zatem kierując się wskazówkami ze strony Upgrading SheevaPlug's U-Boot, rozpocząłem od wgrania nowego U-boata stosując technikę wykorzystującą USB (a nie serwera TFTP). W rezultacie już za pierwszym podejściem zbrikowałem szewę na amen.
Na szczęście się okazało, że wgranie nowego programu rozruchowego i systemu do pamięci NAND nie jest aż takie trudne i sprowadza się do pobrania czegoś co się nazywa SheevaPlug Installer. Relewantna informacja zaczyna się od śródtytułu How to install 1.0?. Należy mianowicie:
.tar.gz
installer
do katalogu
głównego PenDrive'a
uboot-nand-custom.txt
oraz
uboot-mmc-custom.txt
i poprawić MAC adres odczytując go z obudowy
SheevaPlug.
root
):
php ./runme.php nand
Odczekać aż wszystko się nagra. U mnie nie do końca działa: system się ładuje
ale root
nie może się zalogować... Pech...
Ponieważ ostatecznie chcę uruchomić system z karty SD, a nie wbudowany z pamięci NAND, to powyższa niedogodność jest w sumie bez znaczenia. Ważne że U-boat jest zaktualizowany do wersji 3.4.19. Można zatem instalować Debiana.
Kartę podzieliłem na partycje i sformatowałem zgodnie z opisem, tyle że zamiast Ext2 użyłem Ext3, co okazało się błędem (ale o tym za chwilę). Następnie pobrałem archiwum z systemem:
wget http://people.debian.org/~tbm/sheevaplug/lenny/base.tar.bz2 wget http://people.debian.org/~tbm/sheevaplug/lenny/base.tar.bz2.asc
Zamontowałem kartę i skopiowałem co trzeba
tar -xjvf ~/base.tar.bz2
Ustawiłem środowisko programu ładującego:
setenv mainlineLinux yes setenv arcNumber 2097 saveenv reset
oraz
setenv bootargs_console console=ttyS0,115200 setenv bootargs_root 'root=/dev/mmcblk0p2' setenv bootcmd_mmc 'mmcinit; ext2load mmc 0 0x01100000 /uInitrd; ext2load mmc 0 0x00800000 /uImage' setenv bootcmd 'setenv bootargs $(bootargs_console) $(bootargs_root); run bootcmd_mmc; bootm 0x00800000 0x01100000' saveenv
Teraz run bootcmd
i kicha... System nie może odnaleźć partycji systemowej.
Próbowałem różnych kombinacji, nic...
Wreszcie dla świętego spokoju, sformatowałem
kartę jako Ext2 a nie Ext3, tak jak jest to zalecane. Zadziałało... Morał: nie kombinować....
Teraz zrobiłem to wszystko co jest zalecane na stronie Manually unpacking a tar ball of Debian on SheevaPlug, tj.:
rm /etc/ssh/ssh_host* ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N "" ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N "" ## Synchronizacja czasu ntpdate pool.ntp.org apt-get dist-upgrade ## Ustawienie daty/czasu dpkg-reconfigure tzdata ## wybieram (spacją) pl_PL.utf8 pl_PL.88592, domyślnie pl_PL.utf8 dpkg-reconfigure locales ## zmienić nazwę hosta dodając ją do vi /etc/hostname
A ponadto:
apt-get install ntp apt-get install fuse-utils apt-get install libxml-dom-xpath-perl libxml-dom-perl apt-get install vim apache2 apt-get install php5 php5-cli apt-get install make zip unzip
Na razie wystarczy...
Dopisane 20 maja 2010: Na podstawie zaleceń ze strony Debian Lenny -- installing Apache2 and PHP5 doinstalowuję porządnie PHP.
Dopisane 20 maja 2010:
Formatowanie karty 8Gb za pomocą gparted
.
Partycja #1: 102 Mb (boot),
partycja #2: 7044 Mb (system),
partycja #3: ok. 500 Mb (swap). Za pomocą
fdisk
a dodałem flagę boot do pierwszej partycji:
/sbin/fdisk /dev/sdc a # toggle a bootable flag 1 # pierwsza partycja w # zapisz tabelę partycji
Wczoraj próbowałem kartę SDHC Patriot LX (klasa 10), ale przesadziłem:
SDHC found. Card desciption is: Manufacturer: 0x27, OEM "PH" Product name: "SD08G", revision 3.0 Serial number: 2952790466 Manufacturing date: 4/2010 CRC: 0x00, b0 = 0 ** Unable to read "/uInitrd" from mmc 0:1 ** ** Unable to read "/uImage" from mmc 0:1 ** ## Booting image at 00800000 ... Bad Magic Number
Wygląda że Patriot LX 8Gb (class 10) is one of them, czyli z gatunku tych z którymi U-boat nie działa.
Różne informacje n/t SP: Instalowanie Slackware na SP + zdjęcia, jak toto wygląda od środka. | Instalowanie Debiana (na USB i/lub karcie SD) | Sheevaplug Fedora USB Boot | Booting entirely off an external USB device | SheevaPlug Installer
W tym urządzeniu jest fabrycznie zainstalowana wersja Ubuntu. Po włączeniu wtyczki działa w zasadzie out of the box. Podczas konfiguracji korzystałem z: Getting started with the SheevaPlug. Do połączenia się potrzebny jest kabel z wtyczkami USB/miniUSB. Po podłączeniu końcówek kabla uruchamiam skrypt:
#!/bin/sh if [ -e /dev/ttyUSB1 ] ; then cu -s 115200 -l /dev/ttyUSB1 elif [ -e /dev/ttyUSB2 ] ; then cu -s 115200 -l /dev/ttyUSB2 else echo "No usb tty found - exiting" fi
Loguję się jako root
. Fabryczne hasło to nosoup4u
.
Zmieniam hasło z domyślnego na własne.
Problem z siecią (więcej
tutaj). Dopisuję
do pliku /etc/dhcp3/dhclient.conf
prepend domain-name-servers 192.168.1.1;
Nie działa
apt-get
-- kończy pracę z błędem. Trzeba
wykonać:
mkdir -p /var/cache/apt/archives/partial
Uwaga: ponieważ katalog var/cache/apt
jest umieszczony
w tymczasowym systemie plików (tmpfs
), reboot spowoduje jego usunięcie.
Poradnik
Getting started with the SheevaPlug
jest ,,w tym temacie'' mylący. Jak to poprawić prawidłowo jest wyjaśnione
w New
Plugger How To. Należy zmodyfikować /etc/rc.local
w następujący sposób:
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. chmod 1777 /tmp /var/tmp mkdir -p /var/cache/apt/archives/partial # You might also want to add, after the mkdir, a line "/usr/sbin/ntpdate-debian" # to automatically sync your clock over the network. # ntpdate-debian
Inne polecenia należy usunąć lub ,,zakomentować''. Zamiast ntpdate-debian
,
który synchronizuje czas przy każdym restarcie, zdecydowałem się na uruchomienie
demona ntpd
:
apt-get install ntp
Ustawienie nazwy hosta. Nb. Nazwałem go jupiter.
vi /etc/hostname # dodanie co trzeba do pliku /bin/hostname -F /etc/hostname
Poprawienie czasu:
Fix clock
Ustawienie lokali (więcej na ten temat tutaj). Do pliku:
/var/lib/locales/supported.d/local
Dopisujemy pl_PL ISO-8859-2
(ustawiając kodowanie na
ISO-8859-2). Następnie wykonujemy:
dpkg-reconfigure locales
Zmiana strefy czasowej:
dpkg-reconfigure tzdata
Zamontowanie zewnętrznego dysku USB.
Mój dysk będzie montowany
w katalogu /public
. Zatem mkdir /public
a następnie do pliku /etc/fstab
dopisuję:
## external usb drive: /dev/sda1 /public ext3 auto,user,rw 0 0
teraz:
mount /public
Dopisane 3 lutego 2010: Po podłączeniu dysku przez
USB huba, a nie bezpośrednio, coś się rozjeżdża. Dysk zamiast być
/dev/sda1
pojawia się ni-stąd ni-z owąd jako
urządzenie /dev/sdb1
. Nie ustaliłem nawet przyczyn tego
fenomenu: po prostu dwa razy tak się stało. Dysk był de facto
odłączony a próba wykonania mount /public
, kończyła się
oczywiście niepowodzeniem. Spróbuję zmienić wpis
w /etc/fstab
na następujący:
/dev/disk/by-id/usb-WD_bla-bla-bla-part1 /public ext3 auto,user,rw 0 0
może będzie lepiej...
Instalowanie dodatkowych pakietów:
apt-cache search fuse apt-get install fuse-utils apt-get install libxml-dom-xpath-perl libxml-dom-perl \ libflickr-api-perl libflickr-upload-perl libxml-libxml-perl \ libxml-simple-perl # Nie wiem po co ale zainstalowałem też (100mb) apt-get install mysql-server # instalowanie bittorrent (bittornado jest chyba niepotrzebne) # http://jakilinux.org/aplikacje/p2p/rtorrent-p2p-w-konsoli/ apt-get install bittorrent bittornado rtorrent # instaluje Konfigurowanie esniper (2.19.0-1) ; bieżąca wersja 2.21 # http://buechler.blogspot.com/2006/03/sniping-ebay-auctions-with-esniper-on.html apt-get install esniper # instalacja locate apt-get install mlocate vi /etc/updatedb.conf # PRUNEPATHS to, które _nie będą_ indeksowane, dodaję /public żeby # nie był indeksowany zewnętrzny dysk USB # PRUNEPATHS="/tmp /var/spool /media /public"
Logowanie bez hasła za pomocą ssh
(więcej
tutaj):
ssh-copy-id -i ~/.ssh/id_rsa.pub jupiter
Uruchamianie crontaba przez zwykłego użytkownika (por. tutaj oraz tutaj):
chmod u+s /usr/bin/crontab
teraz działa.
Założenie repozytorium svn
(ustaw uprzednio lokale)
mkdir /public/sheeva/svnrepo svnadmin create /public/sheeva/svnrepo
Teraz do pliku /etc/init.d/svnserve
wpisuję:
#!/bin/sh # # start/stop subversion daemon. EXECUTABLE=/usr/bin/svnserve # Test exist:ence of the executable test -f $EXECUTABLE || exit 0 # Command line options for starting the service # To increase security, you can pass the -r option to svnserve, which restricts it to exporting # only repositories below that path, cf http://www.linxit.de/svnbook/en/1.0/ch06s03.html OPTIONS='-d -r /public/sheeva/svnrepo' case $1 in start) echo -n "Starting subversion daemon: $EXECUTABLE $OPTIONS\n" start-stop-daemon -vo -x $EXECUTABLE -S -- $OPTIONS echo -n "." ;;
wykonuję:
update-rc.d svnserve defaults ## na ekranie pojawiają się komunikaty, ale można je zignorować: update-rc.d: warning: /etc/init.d/svnserve missing LSB information update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
start usługi:
service svnserve start
Konfiguracja:
groupadd svn vi /etc/group ## dodaję to grupy svn użytkowników tomek,eros chgrp -R svn /public/sheeva/svnrepo/ chmod -R 770 /public/sheeva/svnrepo/
Teraz tomek i eros mogą czytać/pisać z repozytorium svn
, np.:
## import projektu svn import svn+ssh://tomek@jupiter/public/sheeva/svnrepo/repo1 -m import ## listowanie zawartości svn list svn+ssh://tomek@jupiter/public/sheeva/svnrepo/repo1
Zob też tutaj
Aktualizacja systemu:
apt-get upgrade
Warto wykonać, m.in. pojawia się vim
w wersji mini. Nie jest
to aż takie ważne, ale ja osobiście jestem przyzwyczajony do vim
a.
ln -s /usr/bin/vim.tiny /usr/local/bin/vim
Gcc i kompilacja (najnowszej wersji programu esniper
):
## por http://computingplugs.com/index.php/Compiling_Mythtv-0.21_on_the_Sheeva_Plug apt-get install gcc make libcurl4-openssl-dev libcurl3 curl libwww-curl-perl gcc
Po doinstalowaniu powyższych pakietów skompilowałem esniper
w najnowszej wersji 0.21.
Po tej operacji nie można się zalogować jako root
.
Problem jest podobno znany.
Reset hasła roota.
Należy wyłączyć komputerek, połączyć się kablem USB/miniUSB i naciskając
dowolny klawisz przerwać normalny proces bootowania.
Gdy na ekranie pojawi się znak zachęty Marvell>
, wpisujemy:
Marvell> printenv bootargs ## wyświetli się coś w stylu bootargs=console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImage),\ 0x1fb00000@0x500000(rootfs) rw root=/dev/mtdblock1\ rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none ## teraz Marvell> setenv bootargs console=ttyS0,115200 mtdparts=nand_mtd:0x400000@0x100000(uImage),\ 0x1fb00000@0x500000(rootfs) rw root=/dev/mtdblock1\ rw ip=10.4.50.4:10.4.50.5:10.4.50.5:255.255.255.0:DB88FXX81:eth0:none init=/bin/bash Marvell> boot
A następnie:
passwd -d root passwd root
Zmieniamy hasło. Restart i powinno już być OK.
Samba. Na razie (mam nadzieję) nie potrafię skonfigurować:-(
Po tych wszystkich ww. zabiegach mam ciągle ok. 260 Mb wolnej pamięci flash.
Inne strony z informacjami n/t SheevaPlug. Instalowanie Debiana na USB/karcie SD: 1 2 3 Instalowanie Fedory: 4 5
Dopisane 17 listopada 2009:
Zamontowałem 16 Gb kartę SD (Patriot 6 Class, 130 PLN)
-- sformatowaną jako ext2 -- dopisując do pliku /etc/fstab
:
/dev/mmcblk0p1 /media/sd ext2 auto,user,rw 0 0
Teraz wiele rzeczy (np. dane z Internetu pobierane via cron albo pliki pobierane przez torrenta) zamiast być zapisywane od razu na dysk USB, będą zapisywane na kartę SD. Dzięki temu dysk będzie rzadziej używany... Mniej zużytego prądu i hałasu...
Dopisane 18 listopada 2009: Programik do pobierania filmów z YT:
apt-get install youtube-dl
Aktualizacja kopii roboczej po zalogowaniu się.
Łączenie
z siecią WiFi trwa około 30 sekund po zalogowaniu się użytkownika,
więc proste wstawienie
odpowiednich poleceń do .bash_profile
nie wystarczy.
Różne rozwiazanie proponowane są w:
How to run a command after connecting to network?
Dopisane 20 listopada 2009:
Nie można się zalogować jako root
do bazy mysql
.
Pomogła procedura opisana tutaj:
how
to install mysql:
## Zatrzymać usługę: service mysql stop ## Uruchomić mysqld w specjalnym trybie: mysqld --skip-grant-tables # Uruchomić klienta mysql: mysql # i wpisać poniższe: FLUSH PRIVILEGES; GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'hasło'\ WITH GRANT OPTION;
Na koniec dwa istotne adresy: PlugComputer Community | forum oraz Plug Wiki.
Dopisane 25 listopada 2009: doinstalowałem
php
(ciągle mam ponad 230Mb wolnego miejsca w głównym
systemie plików).
apt-get install php5 php-pear php5-mysql php5-cli
Mój nowy komputer (już szósty, a w dostawie siódmy) ma wielkość dużej mydelniczki:-) Teraz muszę się dokształcić jak go uruchomić.
A teoretycznie służy toto do (cf. SheevaPlug Development Kit): The SheevaPlug is a development platform, targeted for use as a plug computer, and designed to run network-based software services. It features a Kirkwood Series SoC with an embedded Marvell Sheeva CPU core running at 1.2 GHz. This device connects to the network using GbE, offers desktop class performance, and can be used to replace a PC-based home server for many applications. Peripherals connect using the included USB 2.0 port.