Instalando ArmedSlack no HP Jornada 720
Muito bem. Nesse artigo vou mostrar como ter um Linux rodando bacana num HP Jornada 720. Já vou avisando que eu fiz umas gambiarras, mas o sistema ficou muito bom.
Materiais necessários
HP Jornada 720. Maquininha bacana, 32MB de RAM, processador StrongARM 206MHz (o mesmo clock que o Palm Z22. Interessante, não?).
Cartão Compact Flash. Se você vai comprar, já compre um grandão. Se comprar de 1GBou 512MB, pode até instalar o sistema, mas não vai conseguir botar mais nada nele e irá se arrepender! Se eu fosse você, comprar de 4GB pra cima.
Leitor de cartão. A gente chama de “leitor” mas, na verdade, é gravador, também. Eu comprei um daqueles que se liga na USB. No Linux, ele aparece representado por um monte de dispositivos, tipo sda, sdb, sdc, sdd, pois o leitor é pra um monte de tipos de cartão. O Compact Flash é o segundo, no meu caso, o que, em geral, significa “sdb”.

Uma máquina rodando Slackware. O motivo disso é que usaremos o “installpkg” do seu PC para instalar coisas no cartão.
Internet rápida a ponto de baixar um CD não ser um suplício.
Tudo certo? Já comprou o que não tinha? Beleza. Então, mãos à massa!
Primeiro, vou explicar como é que vai ficar o teu sistema. Nós vamos instalar o ArmedSlack no cartão CF (Compact Flash). Só que o ArmedSlack é uma distro genérica, que não foi desenvolvida para o Jornada, especificamente. Por causa disso, o Xserver dele não presta para nós. Daí, temos duas opções: 1) compilar um X11 para ele; 2) usar outra distro para rodar o Xserver. Eu tentei a primeira opção, mas não sou tão competente nem tão persistente, então fiz o que era mais fácil.
Vamos fazer assim: vamos usar o Xserver que vem com o Familiar Linux. Isso tem seu lado bom: você terá um sisteminha de “backup” caso o principal tenha algum problema.
Baixando o que precisamos
(Caso tenha problemas ou dificuldades, veja, no fim dessa página, uns links que podem te ajudar)
Familiar: http://familiar.handhelds.org/releases/v0.8.2/install/files/gpe-image-jornada720-20050407154438.rootfs.tar.bz2 (essa versão deve ser antiga, mas não faz diferença: só o que importa é ter um Xserver que funcione!)
ArmedSlack: www.armedslack.com (ache o FTP e fique pronto pra baixar um monte de pacotes. Aprenda a usar “wget -rnc”).
Kernel: http://wwwcip.informatik.uni-erlangen.de/~simigern/jornada-7xx/linux-2.4.34-j720-4/vmlinuz-2.4.34-j720-4
Initial RAM-Disk: http://wwwcip.informatik.uni-erlangen.de/~simigern/jornada-7xx/linux-2.4.34-j720-4/initrd-2.4.34.gz
Carregador do kernel: http://radiolivre.org/darksnow/jornada/linexec-j720.exe
Params.txt: http://radiolivre.org/darksnow/jornada/params.txt
Formatando o CF
Eu tenho um CF de 4GB. Deixei 100MB para o Windows usar, mas só porque eu sou generoso. Eu nunca usei nem metade disso, então recomendo que você dê uns 10MB para ele. O Familiar ocupa uns 100MB ou menos (para mim deu 66MB). O resto você deixa para o Slack.
Se quer um bom conselho, não crie partições para o “/boot” ou “/home”. Isso é frescura que se faz quando o HD é bem grande. Nesse caso, é melhor deixar seu home junto com o sistema.
Não sei se faz diferença, mas, para evitar dor de cabeça, deixe que a partição do Windows seja a primeira, ok?
Eu imagino que você saiba fomatar um HD (nesse caso, o cartão). Não sabe? Tá, vou tentar explicar:
1) Antes de ligar o leitor de cartão na USB, espete o CF nele.
2) Como root, dê um “tail -f /var/log/messages” num terminal.
3) Espete o leitor na USB e fique de olho no que vai aparecer no terminal.
4) Deve ter uma entrada assim “sdb: sdb1″, ou algo assim.
5) Se você captou a mensagem do passo 4, feche o tail. Se não, abra outro terminal e digite “cfdisk /dev/sdb”, ou troque “/dev/sdb” pelo arquivo que representa o CF.
6) No cfdisk é assim: seta para cima e para baixo, muda a partição. Setas para os lados, muda a opção. Sacou? Não tem segredo.
7) Se já houver uma ou mais partições, pode excluir tudo. Selecione a partição, selecione “excluir” e pressione Enter.
8) Agora, selecione “espaço livre” e crie uma partição “Nova”.
9) Ah, puxa! Não sou bom em explicar esse tipo de coisa. O cfdisk é muito, muito básico…
10) Feitas as partições do tamanho certo, você seleciona a primeira e vai em “tipo”. A partição do Windows é “W95 FAT32″, ou “0B”. As Linux pode deixar “Linux” ou “83″, mesmo.
11) Se você já lidou com esse tipo de coisa, saiba que não faremos uma partição de swap. A não ser que você queira detonar teu cartão em pouco tempo…
12) Tudo pronto, não saia sem antes “Gravar”.
13) Agora, no shell, digite “mkdosfs -f 32 /dev/sdb1″, para botar uma FAT32 na partição do Windows.
14) “mkfs.ext2 /dev/sdb2″. Dizem que usar o ext2 poupa o cartão. Mas, mesmo que não seja verdade, eu prefiro jogar uma ext2 na partição do Familiar.
15) “mkfs.ext2 /dev/sdb3″. Essa, no meu caso, é a partição do Slackware.
Instalando o Familiar
O Familiar é bem susse. É só descompactar o arquivão dentro da partição e pronto. Tipo:
mount /dev/sdb2 /mnt/usb2
cd /mnt/usb2
tar xzvf ~/arquivão-do-familiar
cd
umount /mnt/usb2
Bem susse.
Botando um kernel para rodar
O kernel e a initrd serão postas na partição do Windows (no meu caso, sdb1), junto com o carregador. É importante salientar que todos esses arquivos devem estar na raiz da partição! Não jogue dentro de pasta alguma, ok?
O initrd é um cara meio chato. Eu nunca me dei bem com ele. Nesse caso, se você instalar seu sistema em outra partição, que não sdb2, terá que montar a initrd (em loopback) e alterar o “linuxrc” dentro dela. Talvez você tenha que criar o device dentro de “dev”, também dentro do initrd.
Testando o Familiar
Antes de instalar o Slack, vamos ver se o Familiar está legal. Primeiro, veja se o “params.txt” está com as entradas corretas. No meu caso, o Windows chama o cartão de “\Storage Card\”. Se pra você isso é diferente, altere esse arquivo.
Antes de botar o cartão no Jornada, você terá que editar o “/etc/fstab” do Familiar. Lembre-se do seguinte: uma vez no Jornada, o Linux vê o CF como “hda”, ok? Agora, coloque na “barra” o sistema de arquivos que você escolheu (provavelmente, ext2), e não aquilo que estiver lá. Se quiser, bote outras entradas que possam facilitar a sua vida.
Tudo ok? Agora, bote o cartão no Jornada (lembre-se de desmontá-lo (com “umount”), antes) e rode o linexec. Se ele te der uma tela “hello world” ou algo assim, é sinal que o params.txt está errado (esqueceram de colocar uma mensagem de erro decente…). Se não, depois duns 5 segundos, o kernel começará a se carregar.
Possíveis problemas
Sei lá. Não lembro mais. Eu imagino que, se você quer se aventurar, ou já é macaco velho como eu, ou é capaz de se virar por conta própria. Acho que, se o teu fstab estiver ok, não tem erro.
Outro cara que pode dar problemas é o initrd. Para montá-lo, faça o seguinte:
cp initrd /tmp
cd /tmp
mkdir mnt
mount -o loop -t auto initrd mnt
cd mnt
Você verá, lá dentro, um “linuxrc”, que é um script, e um diretório “dev”.
Instalando o ArmedSlack
Bom, se tudo correu bem, podemos instalar o Slackware. Bote o cartão, novamente, no leitor, plugue na USB, e monte a partição onde você quer instalar o ArmedSlack. Eu monto em /mnt/usb3. Agora, entre no diretório onde os pacotes do ArmedSlack estão. Como sempre, eles estão em subdiretórios que são as categorias: a, ap, d, e, f, etc…
Beleza. Para instalar tudo, use o seguinte:
for pacote in */*.tgz;do
installpkg -root /mnt/usb3 $pacote
done
É importantíssimo notar que o argumento “-root” deve ser o primeiro a ser dado, exatamente como está ali! Em caso contrário, você vai detonar teu próprio sistema, instalando os pacotes no teu PC.
Se você não quer instalar tudo, tem as seguintes opções:
1) Instala tudo e depois vai desinstalando o que não quer (isso demora bastante).
2) Exclui os pacotes que não quer antes de rodar aquelas linhas que eu te passei.
3) Usa o seguinte:
for pacote in */*.tgz;do
cat $(echo $pacote | sed “s:.tgz:.txt:g”)
echo “Quer instalar $pacote?”
read x
if [[ $x == “s” || $x == “y” ]];then
installpkg -root $pacote
fi
done
(Ou algo assim. Fiz de cabeça, pode estar errado!)
Eu recomendo a segunda opção. Você move tudo que não quer para outro diretório, daí manda instalar tudo o que sobrar. Por quê? Porque a instalação de tudo vai demorar umas três ou quatro horas!!!
Configurando o Slackware
Eu já fiz isso milhões de vezes, daí já vou direto ao ponto.
/etc/fstab. Você terá que escrever um “do zero”.
/etc/rc.d. Tire a permissão de execução do que você não quer usar (como o sshd, por exemplo).
/etc/login.defs. Descomente o “GETPASS_ASTERISK” se você também gosta das estrelinhas no prompt de login.
/etc/inittab. Tire uns getties pra poupar memória.
Usando o XServer do Familiar
Para fazer isso de forma descomplicada, eu criei um script chamada “gotofamiliar”. Ele dá um chroot e executa um comando. Olha só:
#!/bin/bash if [[ $1 == "" ]];then comando="/bin/zsh" else comando=$1 fi mount | grep -q /mnt/hda2 || mount /dev/hda2 /mnt/hda2 mount | grep -q /mnt/hda2/dev || mount -o bind /dev /mnt/hda2/dev mount | grep -q /mnt/hda2/proc || mount -t proc none /mnt/hda2/proc mount | grep -q /mnt/hda2/mnt/hda3 || mount /dev/hda3 /mnt/hda2/mnt/hda3 export HOME=/mnt/hda3/home/root chroot /mnt/hda2 $comando
Daí, quando eu quero chamar o X, eu faço o seguinte:
# gotofamiliar Xfbdev &
(espero o X subir, dou CTRL+ALT+F1)
# disown %1
# exec fluxbox
(espero uns 5 segundos e dou CTRL+ALT+F5 (é que eu tirei uns getties))
Leia o script com atenção e veja que eu fiz umas coisas espertas ali, para, quando eu quiser usar o Familiar, ele pareça “nativo”, mesmo sendo chrooteado.
Páginas legais
http://www.lowlevel.cz/log/pivot/entry.php?id=41
http://radiolivre.org/darksnow/jornada/
http://pirke.net/linj720.html - pequena, sem links, mas vai direto ao assunto, principalmente os “mknod” da vida.
27 Responses to “Instalando ArmedSlack no HP Jornada 720”
Leave a Reply

naum consigo baixar esses arquivos:
”
Carregador do kernel: http://radiolivre.org/darksnow/jornada/linexec-j720.exe
Params.txt: http://radiolivre.org/darksnow/jornada/params.txt
”
e outra coisa, ao formatar meu cf de 4gb eu fiz assim
uso o ubuntu no pc e usei o gparted
criei uma partição fat32 de 50Mb, uma linu-swap de 128. e o resto ext2
mas a partição ext2 não permite que eu copie nada lah, diz que não tenho autorização.
poderia me ajudar?
Olha, “Messias”, esse é o típico caso “quem sou eu/de quem você é”. Dá um “ls -lh” na raiz da partição e vê quem é o dono dos arquivos. Mas isso só por propósitos didáticos, porque o dono tem de ser o root (usuário 0, grupo 0). Você deve ter privilégios de root para escrever na partição.
Gostaria de saber se com o LINUX instalado no HP Jornada é possível agora assistir vídeos do real player (*.rm; *.rmvb). No Windows CE 3.0 não vi nada que possibilitasse assitir videos do real player. No Linux é possível instalar o real player? Você pode fazer um teste para mim e dizer se rodou?
Sim, Harim, é possível exibir esses vídeos, usando-se o mplayer - contanto que os plugins certos estejam instalados. Não posso dizer com certeza se roda, mas digo que a possibilidade ainda é *muito* maior no Linux que nesse Windão do aparelho.
Vou testar isso e, em breve, te digo.
Legal! espero que funcione bem o real player
Eu gostaria de saber se é possível colocar o linux no HP Jornada sem ser preciso passar por toda essa instalação? Vixe!!!! É muito complicado para quem está só acostumado com Windows fazer essa instalação. Bem, meu objetivo com o Linux é instalar o real player para assistir vídeos tais no Jornada. Gostaria de saber se a pessoa pode copiar de um maneira super completa, com arquivos ocultos e tais, de maneira sem modificar as pastas, copiar tudo mesmo (de um COMPACT FLASH q tenha instalado o Linux) para algum lugar donde eu possar retirar as pastas tudo na mesma posição, e então ser disponibilizado na internet para eu copiar e por no meu COMPACT FLASH e dar boot e pronto? É tipo uma cópia idêntica dum cartão de memória para outro cartão de memória!!
Bom, é o seguinte, não consigo baixar,
“Carregador do kernel”
“Params.txt”
Aguado a resposta do Real Player também!
xD
Outra duvida, usando o linux, dá pra rodar todos os softwares desenvolvidos para linux certo? (de acordo com o processador claro!)
Usando Linux você pode rodar numa boa programas que usem as bibliotecas compartilhadas adequadas que estejam instaladas no sistema. A mais crítica é a biblioteca de C. Se a libc ou a glibc para a qual o programa foi compilado não for a mesma que está no seu sistema, você não conseguirá rodá-lo.
Quanto ao real player, eu usei o mplayer pra tocar arquivos .rm e foi numa boa, mas eu fiz isso no PC de casa. Não acho que será diferente para o Jornada.
Carregador do kernel:
http://www.4shared.com/file/36391709/f30e6937/jlinexec.html?showComments=true
http://wwwcip.informatik.uni-erlangen.de/%7Esimigern/jornada-7xx/linexec/
params.txt:
Um exemplo: http://www.lowlevel.cz/log/pivot/entry.php?id=41 (tá no meião do artigo)
Desculpem a ignorancia mas seria possivel espetar um cf como hd em um pc ( com um adaptador cf-IDE) e instalar uma distribuição do linux e depois transferir esse cf para o jornada 720? Abraço
Não há uma forma mais simples de instalar linux no jornada????
Bom, em primeiro lugar, esse artigo não diz como instalar o Linux no Jornada. Ele diz como instalar o ARMED SLACK no Jornada. Isso é para caras como eu que não querem usar outra distribuição que não seja o Slackware Linux. Se você é do tipo que não se importa com isso ou nem sabe direito do que se trata, dè uma olhada nesse link, que tem uma versão do Familiar Linux bem legalzinha pronta para instalar:
http://freeshells.ch/%7Ewicked74/j720/linux/
Quanto ao esquema do adaptador: não faz a menor diferença usar um adaptador CF/IDE ou CF/USB. Se tua esperança era pegar um CDzinho de Linux qualquer e instalar o dito cujo, esqueça, porque:
1) O processador do Jornada é ARM. Distribuições compiladas para x86 ou qualquer outro processador que não ARM jamais funcionarão.
2) O boot do Jornada não é como um PC comum. Não dá para botar um boot loader no primeiro setor da memória secundária porque aquilo nem é considerado um MBR, ou seja: o negócio é usar um carregador pelo próprio Windows que vem instalado (loadlin.exe, por exemplo).
Veja o link que eu passei que você já consegue ser bem feliz com teu Linux no Jornada. Eu testei e gostei muito, pois as aplicações são bem rápidas.
olá novamente cara, gostaria de saber se você conhece ( se é que existe… ) algum programa tipo o EBooster para o HP Jornada 720, para converter parte da memória do meu compact flash e aumentar a velocidade do meu Jornada pois como você sabe ele só tem 32MB de RAM.
Valeu!!!
Não, cara, eu não conheço nada desse tipo. Foi mal.
ok obrigado cara…últimas perguntas ( sem querer abusar é claro… )
1. Se eu colocar o Linux no meu palm isso vai deixá-lo mais rápido?
2. eu baixei um programa que serve para fazer o overclock do meu jornada. Será que ele vai ajudar na velocidade ou pode prejudicar o meu palm?
Aguardo contato… valeu cara.
Ah, não esquente. Eu até gosto de perguntas.
1-Talvez sim, talvez não. O Windows é rápido, mas é simplão, né? Se você instalar um daqueles Linux “prontos” para o Jornada, a velocidade é muito boa. “Muito boa” significa “abrir o Firefox sem sufoco”.
2-O desempenho vai aumentar, mas não em todos os casos. O chato é que o overclock vai consumir a bateria mais rápido. Eu não faria overclock…
E mais uma coisa: “Palm” é uma empresa. Você possui um handheld =).
ok cara brigadão.
Mas no caso o overclock vai acabar com a vida útil da bateria ou ela só vai descarregar mais rápido? por que se for pra acabar com a vida útil da bateria eu apago ele agora mesmo…
Você não conhece nenhum programa para o jornada pra ajudar a aumentar a velocidade?
valeu de novo!
A bateria é de íons de lítio, então a vida útil baseia-se mais em tempo do que em quantidade de descarga-recarga. Mas, mesmo assim, sei lá, eu não abusaria…
E não conheço nenhum programa pra deixar o Jornada mais rápido…
Olá amigo, me interessei demais por esses handelds, inclusive estou em dúvinda entre comprar um Jornada 720 ou um Nec PRO 900. Eu estou quase comprando o NEC, principalmente por ele ter entradas USB. Mas bate aquela dúvida:
- Eu pretendo colocar LINUX nele concerteza, mas pelo processador dele ser um Xscale de 400Mhz, será que o kernel compilado para ARM funcionará ?, eu sei que programas ARM funcionam no Xscale, mas será que o linux funciona ?.
- O link que ensina a instalar o linux no NEC é esse, http://www.belxs.com/michel/mp900/LinuxonMobilepro900.htm . No geral bem parecido com o que voce postou.
- Uma dúvida crucial, como na faculdade as vezes preciso programar em C e em C++, é possivel fazer isso nessas distro linux ?.
- Onde voce baixa os programas, tanto para linux quanto para windows para ele ?.
Um abração kara.
E parabéns pelos tutoriais.
Olá, Eduardo. Cara, não tenha mais dúvidas: NEC900 na cabeça! Certeza! Nada substitui aquela maravilhosa porta USB. Só lembre que a USB é só uma, e não duas. Na verdade, é uma em que a máquina é o host (ou seja, onde você pluga pendrive e coisas assim) e outra em que a máquina fala com um host (ou seja, aquela que você usa para plugar o próprio NEC num PC desktop, por exemplo).
Esse tutorial que você passou é para instalar o DSLinux. Eu sei de uma coisa: o JLime tem uma versão feita especialmente para o NEC. E, pelo que eu já vi, é mais fácil de instalar que esse tutorial com DawmSmallLinux.
Quanto ao kernel compilado para ARM, só tem um jeito de saber se funciona, hehe! Mas meu chute é que nem vale a pena tentar. É melhor pegar um kernel “for NEC900″.
Cara, eu acho que o JLime não tem, por padrão, ferramentas de desenvolvimento. Mas é possível que haja um pacote à parte.
O lugar onde eu baixo os programas é: lugar nenhum. Eu uso o que vem no ArmedSlack, e o que eu não tenho eu baixo o código-fonte e compilo.
Link pra facilitar tua vida:
http://www.jlime.com/forum/wiki.php?mode=search&t=Download_mobilepro900c_eng
É isso aí! Falow!
Olá Cleber,
Muito Obrigado pelas respostas!, foram de grande auxílio, inclusiva já efetuei a compra do NEC900 no ML(já com um cartão de 256MB incluso) por R$ 200,00 já com o frete incluso, eu particularmente achei um preço excelente!, ele provavelmente deve chegar dia 30/01.
Cara, uma dúvida que me bateu agora, será que por meio desta porta USB dele, eu consigo espetar um Adaptador Wireless USB e fazer funcionar WIFI nele ?. Já que é quase que impossível encontrar PCMCIA de 16bits para tal funcionalidade.
Tipo, os links que vejo na internet geralmente são para o NEC900c, mas pelo que vejo, a diferenca entre o NEC Mobile PRO 900 e o 900c é ínfima, então eu torço para que o linux funcione no 900 também.
Agora uma pergunta mais pessoal, fica legal utilizar o Linux no Jornada 720 ?, pergunto isso principalmente pelo fato da tela ter uma baixa resolução e o teclado ser “pequeno”.
Um abraço.
até mais ver.
200 pila? CARA! Como tá barato! Eu paguei 350 pila no meu Jornada, quando comprei…
Acredito que na USB dele você consiga usar qualquer tipo de dispositivo USB sem nenhum problema.
Quanto ao Jornada, é verdade, o teclado é pequeno, e no começo é bem difícil de digitar (você digita 3 caracteres e apaga 1), mas depois é susse. Eu já digito tudo rapidinho nele sem dificuldade. Tudo é questão de costume (a não ser que seus dedos sejam bem gordos. Aí tudo se complica).
A tela também é pequena, mas eu leio meus PDFs e textos nele muito bem. Tudo depende do que você pretende fazer com o dito cujo. Se você quer usar o GIMP, esqueça. Se quer escrever e ler, beleza. Quanto ao navegador, half VGA ainda é melhor que um PDA, né?
Depois de se acostumar com o NEC, uma avaliação dele será muito bem-vinda por aqui =).
Olá Cleber,
Acho que to chegando meio tarde aqui nesse assunto, hehe.
Mas se pder me esclarecer, ficarei muito grato.
Seguinte, gostaria de saber se este linux funciona em algum desses modelos: Jornada 680, ou Nec MobilePro 900.
É que tenho essas duas máquinas, e ainda falta chegar o meu 720 e o meu 728, então enquanto isso se desse pra testar em uma das minhas duas, seria bacana!
Deu pra perceber que eu sou meio fanatico por handhelds né. hehe
Se puder me esclarecer, ficarei muito grato!
Um abraço!
Olá, Eduardo. Bem, o ArmedSlack, como foi dito, é para caras que sabem exatamente o que querem, e querem usar Slackware. A distro é compilada, a princípio, para qualquer ARM*, o que significa que a única diferença no processo de instalação é você pegar um kernel específico para sua arquitetura. Nessa página: http://www.jlime.com/forum/wiki.php?mode=search&t=Download_eng você encontrará kernels e bootloaders para cada uma dessas máquinas que você citou.
Sinceramente, eu recomendo que você baixe a distro do próprio JLime ou o Familiar Linux, ou dê uma olhada aqui: http://freeshells.ch/~wicked74/j720/linux/. Essa página tem umas distros beeem legais, e o processo de instalação é bem tranqüilo.
* ARM: arquitetura do processador. Nem tudo no universo é x86. Ainda bem! Jornadas, NECs, alguns Palms e outros handhelds/PDAs usam processadores ARM. Se não me engano, o Nintendo DS usa um ARM, também.
não estou conseguindo instala uma placa de rede no meu jornada.. alguem pode me ajudar? onde acho drivers pra ela.. como faço pra instalar?
ola, querai saber se eh possivel usar um hub para aumentar as portas usb’s no NEC 900? se da para usar i wifi via usb e nao exatamente pelo cartão wifi? se da para usar um adapatador de rede via usb? e programar em C, C++? obrigado.
Se dá pra usar um pendrive USB, dá pra usar um hub USB, uma torradeira USB, um ventilador USB. Hub é hub. É igual qualquer outro dispositivo.
Porque não daria pra usar wifi via um dongle USB? Cara, teu NEC não é mágico. USB é USB, tanto no NEC quanto em qualquer coisa. O mesmo pro adaptador de rede.
E porque é que vc não poderia programar em C/C++ num NEC? Pô, cara, tem gente que programa em C num Treo! Você tem em mãos um computador, oras! Uma máquina que executa instruções como qualquer outro computador nesse mundo.
Vai fundo, bicho!