Redox é um sistema operacional de microkernel semelhante ao Unix escrito na linguagem de programação Rust , que tem um forte foco em segurança, estabilidade e alto desempenho.
Redox é inspirado em kernels e sistemas operacionais anteriores, como SeL4 , MINIX , Plan 9 e BSD . É semelhante ao GNU e BSD, mas é escrito em Rust. É um software gratuito e de código aberto distribuído sob uma licença MIT .
Redox foi criado por Jeremy Soller e foi publicado pela primeira vez em 20 de abril de 2015 no GitHub .
Redox depende de um ecossistema de software escrito em Rust por membros do projeto.
Redox oferece suporte a programas de interface gráfica do usuário (GUI), incluindo:
Há 2 formas de instalar o Redox OS:
Em ambos os casos você poderá testar o Redox OS:
Em uma máquina física Apesar de poder funcionar, os próprios desenvolvedores ainda não recomendam, pois o Redox ainda não está tão pronto para isso
Ou numa máquina virtual, nesse caso, o QEMU, que é justamente o que iremos fazer aqui.
Antes de qualquer coisa recomendo vocês lerem esse artigo no blog Terminal Root sobre QEMU/KVM para saber como instalar e utilizar.
Primeiramente vamos fazer o download do arquivo compactado em que há o binário para executarmos em nossa máquina, há 4 opçoes para download, entre elas:
redox_0.6.0_harddrive-efi.bin.gz
- Como o próprio nome pressupõe, possui suporte a EFI e não é um LiveDiskredox_0.6.0_harddrive.bin.gz
- Não é LiveDisk e não possui suporte a EFIredox_0.6.0_livedisk-efi.iso.gz
- É um LiveDisk com suporte a EFIredox_0.6.0_livedisk.iso.gz
- Um LiveDisk sem suporte à EFI.
Escolha o que achar mais conveniente para seu caso, para esse vídeo eu escolhi a segunda opção:
redox_0.6.0_harddrive.bin.gz
- Não é LiveDisk e não possui suporte a EFIPor se tratar da melhor forma de testar, acredito eu. Você pode fazer o download direto pelo navegador através desse link ou rodar esse comando:
wget https://gitlab.redox-os.org/redox-os/redox/-/jobs/31100/artifacts/raw/build/img/redox_0.6.0_livedisk-efi.iso.gz
Após isso é só extrair o .gz
:
A opção
-k
é para manter o arquivo original
gunzip -k redox_0.6.0_harddrive.bin.gz
Agora vamos renomear para usarmos um comando pronto oferecido pela documentação do Redox OS:
mv redox_0.6.0_harddrive.bin harddrive.bin
Tudo pronto, agora vamos rodar o Redox OS!
Com o QEMU devidamente instalado e com os passos acima realizados, estando no diretório que você descompactou e renomeou, basta rodar esse comando disponibilizado pela própria documentação do Redox OS .
qemu-system-x86_64 -serial mon:stdio -d cpu_reset -d guest_errors -smp 4 -m 1024 -s -machine q35 -device ich9-intel-hda -device hda-duplex -net nic,model=e1000 -net user -device nec-usb-xhci,id=xhci -device usb-tablet,bus=xhci.0 -enable-kvm -cpu host -drive file=harddrive.bin,format=raw
Durante o boot do sistema, aparecerá essa pergunta:
Is this OK?
Basta teclar y
de yes para continuar.
O navegador padrão é o Netsuff - Como o teste foi em VM a largura da janela expandiu o tamanho da tela. Ele abre na página inicial do Redox OS: https://www.redox-os.org/ . A renderização do site: https://terminalroot.com.br/ não carregou como deveria, isso provavelmente por conta do Javascript do navegador.
O emulador de terminal é o Orbterm e o Shell padrão é o Ion você pode customizar o mesmo para melhorar sua utilização, veja abaixo informações que eu testei:
echo $SHELL
env
reset
O histórico do
root
por padrão só fica salvo enquanto a janela Obterm estiver aberta, após fechar, perde-se o histórico . Você pode configurar oinitrc
, exemplo:
editor .config/ion/initrc
echo "Fala, $USER! Bem-vindo ao Ion do RedoxOS - Rust"
Assim que fechar e abrir o terminal, a mensagem será automaticamente exibida.
Testando um script.sh
com Ion: editor script.sh
#!/bin/ion
echo "Testando um script"
chmod +x script.sh
&&./script.sh
Ao abrir o gerenciador de arquivos do Orbital(Ambiente Desktop do Rust) , basta um único clique para entrar em um diretório ou para sair ..
Os arquivos de configuração são no formato .toml
que é uma alternativas ao: JSON
, YAML
e INI
, o diferencial desse formato é que é flexível e simples, foi criado por Tom Prester-Werner, por isso o acrônimo: Tom’s Obvious, Minimal Language ou em português: Linguagem Mínima e óbvia de Tom . Ele também permite comentários estilo Shell(#
) como os demais, como excessão do formato JSON que não permite nenhum tipo de comentário. Saiba mais.
Testando
# Save as: algo.txt
close
cat algo.txt
O gerenciador de caixotes(baseado em crates) é o pkgutils com o comando pkg
. Para saber todos os parâmetros de utilização, rode:
pkg --help
Nesse exemplo vamos instalar o mini clone do Vim : o Sodium . Basta rodar o comando:
pkg install sodium
Redimensione a janela para conseguir ver a barra inferior . Alguns comandos são similares ao Vim , mas como ainda está em desenvolvimento, ele não reconheceu os comandos:
w
(escrever as mudanças) eq
(para sair), tive que fechar a janela e as mudanças no arquivoalgo.txt
comsodium algo.txt
não foram efetivadas.
Para atualizar os caixotes use o comando: pkg upgrade
Para sair do Redox OS, basta abrir o terminal e digitar:
shutdown
Bom, eu gostei muito do Redox OS, achei uma ideia inovadora e apoio totalmente o projeto, também pelo fato que sou fã de Rust . Mas como há na própria documentação do Redox:
"Atualmente, o Redox não vai substituir o seu sistema operacional existente, mas é uma coisa divertida de tentar..."
Redox OS