Raspberry SpeedTest Server

Speeeed

Quem quer um acesso à Internet com esta velocidade??? 😀

Bom, voltando ao país real… um destes dias precisei de saber qual a velocidade de um ponto A para um ponto B, via Internet. Tinha várias opções mas tratei logo de dar uso ao meu RaspberryPi e um serviço conhecido por muitos de seu nome SpeedTest. Eles tem uma aplicação “mini” para usarmos o seu serviço directamente no nosso servidor pessoal.

Com uma instalação fresca do Raspbian, adiciona-se o Apache e o PHP:
sudo apt-get install apache2 php
E seguida testa-se a ligação:
http://ip_do_raspberry
Apareceu uma página de teste? Ok, até aqui tudo bem.

Em seguida fazemos download do speedtest mini:
wget http://c.speedtest.net/mini/mini.zip

…e extraímos para a pasta pretendida:
sudo unzip -d /var/www/ mini.zip

…por fim, alteramos o index-php.html para index.html:
sudo mv /var/www/mini/index-php.html /var/www/mini/index.html

…e já está! Podemos testar assim:
http://ip_do_raspberry/mini

Se quiserem testar a partir do exterior, é só reencaminhar a porta 80 do Router para o RaspberryPi 🙂

Raspberry pendrive Server

Já ninguém duvida das fantásticas possibilidades e vantagens que os Raspberry Pi trouxeram ao mundo informático. Com um baixo consumo, tamanho pequeno e uma tremenda simplicidade temos na nossa mão um poderoso “brinquedo” que tem como limite a nossa imaginação.

No entanto, sempre achei que o ponto fraco deste equipamento se encontra no armazenamento por ser um cartão SD. A probabilidade de o cartão se danificar ou ficar com dados corrompidos é elevada se abusar do overclock ou de programas com escrita em disco intensiva (como por exemplo uma base de dados). Como ultrapassar este problema? Simples, usamos um disco externo ou uma pendrive e apontamos para lá o directório que queremos.

pendriveVamos imaginar que queremos um servidor Minecraft a correr no nosso Raspi mas queremos que todo o programa corra dentro de uma Pendrive. O Minecraft vai ser instalado no directório /minecraft. A pendrive usada deverá ser formatada com o sistema EXT3. Porquê? Porque este formato é rápido, nativo de Linux e não tem o journaling do EXT4 (que tornaria o sistema mais lento).

1- Na consola, passamos para su:

sudo su

2- Criamos o directório de instalação do Minecraft:

mkdir /minecraft

3- Já com a pen inserida no Raspi, detectamos qual o caminho para a pen:

fdisk -l

raspiPen1

Como podem ver, o caminho neste caso é /dev/sda1

4- Vamos inseri-lo no ficheiro /etc/fstab:

nano /etc/fstab

RaspiPen2

É só acrescentar a ultima linha

/dev/sda1     /minecraft     /ext3     defaults,noatime,nodiratime     0     0

salvar e sair

5- Reiniciamos a máquina

reboot

6- Se tudo correu bem temos a pen montada no directório pretendido. Entramos na pasta

cd /minecraft

Em seguida basta instalar o Minecraft no directório em questão e já está! Temos a nossa aplicação a correr na pendrive!

Minecraft Server

Minecraft é sem dúvida um jogo com um sucesso incontestável e que dispensa apresentações. É um jogo de “legos” virtuais onde o limite está na imaginação. Com gráficos que lembram os jogos de computador de há 20 anos, ganha a preferência a muitos jogos atuais. Com um preço baixo e uma comunidade imensa que o suporta e alimenta com extras, torna-se uma boa distração durante horas… Chego mesmo a considerar este jogo bastante educativo e um ótimo exercício mental para desenvolver a criatividade.

Jogar localmente não exige muitos conhecimentos, basta aceder à página do jogo, fazer o download, executar e… jogar! É suportado pelas plataformas Linux, Mac e Windows.

Mas o que este jogo também permite é jogar em rede com os amigos, em casa ou na Internet. Há vários sites que alugam servidores mas quando lá em casa me pediram para alugar um não gostei dos preços, para o efeito que era. Toca a pegar num PC velhinho e fazer um!

Minecraft um jogo que depende de Java e é bastante exigente a nível gráfico e memória RAM. Como o servidor não é para jogar localmente, não é preciso uma boa gráfica mas no mínimo aconselho 2GB de RAM. Vou instalar o Ubuntu Server 12.04 LTS num Pentium4 3.0 com 2GB de RAM e 80GB de disco. Para a localização do Minecraft vou usar o diretório “/minecraft”, criar um utilizador limitado “papimigas” e usar a porta TCP “25565” para ligações em rede (que é a por defeito). Vou instalar a versão do Minecraft 1.7.4 mas os passos seguintes servem para qualquer outra versão (oficial ou menos oficial) e podem adaptá-los às vossas circunstâncias.

1-Instalar o Ubuntu server 12.04 e atualizar: sudo apt-get update && sudo apt-get upgrade

2-Instalar o JAVA-JRE: sudo apt-get install default-jre

3-Criar uma pasta para o Minecraft server: sudo mkdir /minecraft

4-Criar um utilizador para arrancar o Minecraft Server: sudo adduser –system –no-create-home –home /minecraft papimigas

5-Dar as permissões à pasta do utilizador: sudo chown -R papimigas /minecraft

6-Entrar na pasta: cd /minecraft

7-Fazer download do minecraft server: wget -O minecraft_server.jar https://s3.amazonaws.com/Minecraft.Download/versions/1.7.4/minecraft_server.1.7.4.jar

8-Criamos um script para o Minecraft  Server arrancar automaticamente com o pc:

a) sudo nano /etc/init/minecraft-server.conf

b) inserimos a informação seguinte:

# minecraft server
console log
exec start-stop-daemon --start --chdir /minecraft --chuid papimigas \
    --exec /usr/bin/java -- -Xms1536M -Xmx2048M -jar minecraft_server.jar nogui 2>&1
start on runlevel [2345]
stop on runlevel [^2345]
respawn
respawn limit 20 5

c) Guardamos com o comando Ctrl+x , em seguida um y e por fim Enter

9-Ativamos o serviço: sudo start minecraft-server (sempre que necessitarem de o parar podem usar o comando sudo stop minecraft-server). Ao criar este serviço o Minecraft server vai arrancar automaticamente quando arrancamos com o PC. É só ligar e aguardar um pouco!

10-Ainda no diretório do minecraft ( /minecraft),  se executarem ls -l vão encontrar vários ficheiros que entretanto foram criados. O mais importante é o server-properties pois é lá que vamos definir as principais caracteristicas do nosso servidor. Para a editarem usem o nano mais uma vez: sudo nano /minecraft/server-properties . Aconselho que visitem esta página para perceberem o que cada propriedade faz. Não esquecer de parar o serviço com um sudo stop minecraft-server antes de modificar algum dos ficheiros de configuração e no fim das alterações arrancar novamente com um sudo start minecraft-server.

11-Se for para partilhar o acesso para fora da nossa casa teremos que “abrir” a porta TCP do servidor no nosso router e recorrer a um serviço dinâmico de DNS.

12-Para nos ligarmos ao servidor, no nosso pc arrancamos com o Minecraft e clicamos em Multijogador (ou Multiplayer, em inglês). Clicamos no botão “adicionar servidor” e inserimos o IP do servidor (caso seja dentro da mesma rede) ou o nome DNS dinâmico, caso seja fora de casa. Se não usarem a porta padrão (25565) terão que acrescentar. Por exemplo, se escolherem usar a porta 41234 e o ip externo for http://exemplo.pt, no campo endereço do servidor tem de colocar exemplo.pt:41234.

Boas aventuras!

 minecraft