Como rodar o FreeBSD em uma máquina virtual QEMU.

Se você já teve o desejo de conhecer o FreeBSD e aprender um pouco sobre o ele, mas ainda não tem um PC ou laptop disponível para instalar e testar o sistema, sugiro começar a experimentá-lo em uma máquina virtual.
Pôr no ar uma máquina virtual QEMU, rodando uma imagem atual do FreeBSD é bastante fácil e, dependendo da sua conexão á Internet, pode ser bastante rápido também.
freebsd logo full
Isto se deve ao fato de que você pode baixar várias imagens do site oficial (veja links ao final) prontas para uso — voltadas para mais de uma arquitetura de hardware.

Requisitos de hardware para rodar o FreeBSD

As versões mais atuais do FreeBSD não são “famintas” por recursos. O sistema é bastante enxuto e pode ser executado em condições bastante modestas:

  • Memória — Os requisitos mínimos de memória começam em 64 MiB. Um sistema especializado, deve começar em 128 MiB. Se você estiver pensando em uma instalação desktop completa, 4 GiB garantirão mais conforto para trabalhar.
  • Armazenamento em disco — O mínimo aceitável é 1,5 GiB, para ter um sistema funcional, mas com pouquíssimo espaço livre para trabalhar.
  • Arquitetura e processador — O FreeBSD pode ser executado sob várias arquiteturas. O suporte a PCs 64-bit começa em AMD Athlon™64, AMD Opteron™, Intel® Xeon™ multi-core e Intel® Core™ 2.
    No que tange a arquitetura 32-bit, qualquer 486 ou superior faz o serviço.

Instale o QEMU

No Debian, Ubuntu e derivados, use o apt para instalar o qemu:

sudo apt install qemu

Usuários do Opensuse, podem usar o Zypper:

sudo zypper install qemu

Baixe a imagem do FreeBSD

Há vários lugares de onde você pode baixar imagens do FreeBSD. O site oficial é um deles.
Você pode usar o utilitário wget para fazer o download rapidamente:

wget ftp://ftp.freebsd.org/pub/FreeBSD/releases/VM-IMAGES/10.3-RELEASE/amd64/Latest/FreeBSD-10.3-RELEASE-amd64.qcow2.xz

Veja, ao final do texto, link para o site de download, onde você poderá encontrar outras versões, que podem ser mais adequadas.
A seguir descompacte o arquivo:

unxz FreeBSD-10.3-RELEASE-amd64.qcow2.xz

Como rodar a imagem do FreeBSD

Não há nada errado em usar o VirtualBox, se você o preferir. A imagem baixada provavelmente rodará bem nele.
Neste texto, contudo, o nosso foco será o QEMU.
Para rodar a imagem em uma máquina virtual com 256 MiB, use a seguinte linha de comando:

qemu-system-x86_64 -hda FreeBSD-10.3-RELEASE-amd64.qcow2 -m 256M -cpu qemu64 -name 'FreeBSD 10.3 64 bit'

freebsd 10.3 screenshot boot


O que o comando acima faz?
Vamos responder por partes, a partir do comando ‘qemu-system-x86_64’, as opções usadas são as seguintes:

  • -hda FreeBSD-10.3-RELEASE-amd64.qcow2 — roda a imagem baixada em um disco virtual (hda).
  • -m 256M — determina a quantidade de memória da máquina virtual.
    Você pode experimentar usar outros valores.
  • -cpu qemu64 — faz uso da cpu padrão, de 64 bit, do qemu.
  • -name 'FreeBSD 10.3 64 bit' — coloca um nome bonito no título da janela do emulador.
    Escreva o que quiser entre as aspas.

Se você acha o comando para executar a sua imagem muito grande, experimente criar um mini-script para ele, assim:

echo "qemu-system-x86_64 -hda FreeBSD-10.3-RELEASE-amd64.qcow2 -m 256M -cpu qemu64 -name 'FreeBSD 10.3 64 bit'" > freebsd.sh
chmod +x freebsd.sh
# para executar, rode o script assim:
./freebsd.sh

Fácil, não é?
Se você tem interesse em copiar e colar entre a janela da máquina virtual do FreeBSD e as outras do seu sistema hospedeiro, inclua a opção ‘-display curses’:

qemu-system-x86_64 -display curses -hda FreeBSD-10.3-RELEASE-amd64.qcow2 -m 256M -cpu qemu64

Neste modo, a opção ‘-name’ não tem efeito. Mas ele permite, por exemplo, que você copie comandos de tutoriais e os cole direto na janela do FreeBSD.

Como logar e criar um novo usuário no FreeBSD?

Assim que chegar à tela de login, autentique-se como root (a senha estará em branco, por enquanto).
Após a autenticação, crie uma nova senha para o usuário root e um novo usuário com privilégios normais:

passwd
adduser

Depois de criar o novo usuário saia do root:

exit

… e autentique-se com novo o nome de usuário criado.
E, que comece a brincadeira! 😉

Referências e downloads

Download da versão 10.3: ftp://ftp.freebsd.org/pub/FreeBSD/releases/VM-IMAGES/10.3-RELEASE/amd64/Latest/.
Página oficial de downloads: https://www.freebsd.org/where.html.

Instale o Telegram Messenger CLI no Linux

Vou ser bem objetivo neste post, por imaginar que você já sabe exatamente o que quer ao ler este texto — além disto, quero ensinar os bizus para mais de uma distribuição do Linux, incluindo o OSX, lá no final.
Não vou te incomodar com papo-furado e vamos ao que interessa: baixar, instalar e pôr pra funcionar a versão de linha de comando do Telegram.
Usuários do Ubuntu 16.04 LTS “Xenial Xerus”, ou superior, podem usar o SNAP como metodologia de instalação. Leia mais aqui.

Instalar Telegram no Linux e no MacOSX
Clique para ampliar

Como baixar e instalar o Telegram no Linux

Há basicamente 2 formas de baixar o código do aplicativo: via GitHub ou trazendo o pacote .zip, com wget.
Para clonar o repositório GitHub, proceda assim:

git clone https://github.com/vysheng/tg.git && cd tg

O output do comando git deve ser algo parecido com este:

Cloning into 'tg'...
remote: Reusing existing pack: 1608, done.
remote: Total 1608 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1608/1608), 1.35 MiB | 358.00 KiB/s, done.
Resolving deltas: 100% (1061/1061), done.
Checking connectivity... done

ou faça o download, via wget, do pacote .zip e faça a sua extração:


wget https://github.com/vysheng/tg/archive/master.zip -O tg-master.zip

unzip tg-master.zip && cd tg-master

Agora, siga instalando as bibliotecas (veja as instruções específicas pra sua distro) — e, se algo não funcionar direito, deixe-me saber, nos comentários.
No Ubuntu, Debian etc. use o apt-get:


sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev

Ou faça a instalação com o snap, no Ubuntu.

No Fedora, OpenSuSE, Red Hat, CentOS etc. use o yum:


sudo yum install lua-devel openssl-devel libconfig-devel readline-devel

No Gentoo, use o emerge:


sudo emerge -av sys-libs/readline dev-libs/libconfig dev-libs/openssl dev-lang/lua

No FreeBSD:


pkg install libconfig libexecinfo lua52

… e no OpenBSD:


pkg_add libconfig libexecinfo lua

O procedimento, a seguir vale para todas as distribuições Linux e BSD.


./configure
make

Pronto. Você já pode fazer uso do aplicativo com o comando:


./telegram -k servidor_de_chave_publica

A sua chave pública deve estar armazenada na mesma pasta em que você se encontra, chamada tg-server.pub ou em /etc/telegram/server.pub.
Se não for este o caso, você sempre poderá especificar o local onde encontrar a chave pública:


./telegram -k tg-server.pub

Ao entrar no sistema, faça as configuração básicas iniciais. Basta fornecer o número do seu dispositivo móvel e aguardar o código aparecer na tela do celular. Forneça o código ao programa, no seu computador.
Se tudo der certo, você receberá uma notificação na tela do celular, tal como a da figura abaixo:

Instalar telegram no ubuntu linux - tela de notificação no celular Android
Clique para ampliar

Como instalar o Telegram no Apple Mac OS X

O cliente precisa das bibliotecas readline e libconfig, que não são incluídas no OS X. Você as terá que instalar manualmente. Pode fazer isto com Homebrew.


brew install libconfig

brew install readline

brew install lua

export CFLAGS="-I/usr/local/include -I/usr/local/Cellar/readline/6.2.4/include"

export LDFLAGS="-L/usr/local/lib -L/usr/local/Cellar/readline/6.2.4/lib"

./configure && make

A seguir instale os seguintes ports:

  • devel/libconfig
  • devel/libexecinfo
  • lang/lua52

A seguir, prossiga com esta sequencia de comandos:


env CC=clang CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib LUA=/usr/local/bin/lua52 LUA_INCLUDE=-I/usr/local/include/lua52 LUA_LIB=-llua-5.2

./configure

make

Leia mais

Você pode obter mais informações sobre a instalação e modo de usar no site: https://github.com/vysheng/tg/blob/master/README.md#messaging.