ChronOS ‐ Wiki - IsraelJorge/chron-os_live-build GitHub Wiki

Disciplina: Sistemas Operacionais

Curso: Bacharelado em Ciência da Computação - 6º Período


ChronOS - Projeto LiveBuild

Introdução

Seja bem vindo(a) a documentação oficial do projeto Live-Build ChronOS. Nessa documentação, você conhecerá todas as principais informações a respeito do nosso projeto. Será contemplado neste documento, os tópicos mais importantes relacionados ao desenvolvimento do trabalho. Dito isso, questões como: objetivo da distro, bases para o desenvolvimento, instalação e customização, serão abordados nos tópicos a seguir. Vamos lá?


1. Surge o ChronOS!

O ChronOS (o nome pode ser pronunciado simplesmente como Chronos), foi desenvolvido pelos alunos citados anteriormente no cabeçalho, no Instituto Federal de Educação, Ciência e Tecnologia - Campus Imperatriz. O trabalho faz parte da avaliação da disciplina de Sistemas Operacionais do curso Bacharelado em Ciência da Computação.

O professor da matéria, Paulo Henrique S. Barbosa, requisitou a criação de uma distribuição baseada em Linux, que tinha como objetivo ser aplicada aos discentes do IFMA, em especial, os alunos que cursam Computação. Esse propósito se dá ao fato de que nem todos os laboratórios do campus estavam devidamente equipados com os aplicativos, programas e ferramentas que eram imprescindíveis para determinadas disciplinas que fazem parte da ementa do curso. Essa falta de compatibilidade entre as máquinas, resulta em situações complicadas aos professores, por terem que correr atrás dessas ferramentas, o que muitas vezes, comprometem a carga horária que era destinada a ministrar aulas.

Tendo essas ideias como ponto de partida, a nossa distro tem como objetivo ser esse Sistema Operacional que estaria dando o suporte necessário para os alunos do Campus. Pois, além de ferramentas de desenvolvimento, a nossa Distro busca também acertar em performances eficientes, recursos importantes pré-instalados e claro, um visual que também chame a atenção dos minimalistas de plantão. A seguir, serão comentados conceitos técnicos que são importantes para a criação da nossa Distro.

2. Base da Distro

A implementação da distribuição ChronOs teve origem a partir de um "fork" da Debian, decisão fundamentada nas diversas vantagens que essa sólida base oferece. Aqui estão os motivos que tornaram a Debian a escolha ideal como ponto de partida para a ChronOs:

  • Arquiteturas Suportadas A Debian destaca-se por oferecer suporte a diversas arquiteturas, abrangendo AMD64, Intel 6, Intel x86, ARM, entre outras. Essa versatilidade permite à ChronOs adaptar-se a uma ampla variedade de dispositivos e sistemas.

  • Comunidade Ativa A Debian abriga uma comunidade ativa e engajada. Isso se traduz em suporte eficiente, fóruns vibrantes e documentação extensiva. A colaboração constante permite que a ChronOs beneficie-se do conhecimento coletivo da comunidade Debian, garantindo uma experiência de usuário aprimorada e soluções rápidas para possíveis desafios.

  • Base para Outras Distribuições A Debian é reconhecida como a base de várias distribuições Linux populares, sendo um testemunho de sua confiabilidade e adaptabilidade. Isso confere à ChronOs a confiança de estar construída sobre uma base sólida, com a possibilidade de aproveitar inovações e boas práticas estabelecidas pela Debian.

  • Estabilidade e Segurança A Debian é reconhecida por sua estabilidade e foco em segurança, sendo concebida para atender uma ampla variedade de dispositivos, desde laptops a servidores. Essa característica é fundamental para garantir uma experiência confiável e protegida aos usuários da ChronOs.

  • Software Livre A Debian adere estritamente aos princípios do software livre, fornecendo um sistema operacional que é não apenas de código aberto, mas também incentiva a liberdade de modificação. Isso possibilita que a ChronOs mantenha o compromisso com a transparência e personalização que caracteriza o universo do software livre.

Logo, a Debian serve como uma base sólida e versátil para a ChronOs, oferecendo suporte a uma ampla gama de hardware, colaboração ativa da comunidade, confiabilidade, segurança e a adesão aos princípios do software livre. Esses elementos combinados contribuem significativamente para a qualidade e adaptabilidade da nossa distribuição.

3. ChronOs: Uma Distribuição para Acadêmicos de Ciência da Computação

A ChronOs foi desenvolvida especificamente para atender às necessidades dos acadêmicos de Ciência da Computação, fornecendo um ambiente completo e otimizado para suas atividades de estudo e desenvolvimento. Os softwares essenciais incluídos na distribuição são:

  • Visual Studio Code (VSCode): Um editor de código simplificado com suporte completo para operações de desenvolvimento, como depuração, execução de tarefas e controle de versão.

  • Packet Tracer: Uma ferramenta gratuita desenvolvida pela Cisco, dedicada ao estudo de equipamentos de redes e seus protocolos.

  • Wireshark: Um analisador de protocolo de rede que permite uma visão detalhada das atividades na rede em um nível microscópico.

  • Net-Tools: Um conjunto de ferramentas básicas de rede essenciais para diagnósticos e configurações de rede.

  • Star UML: Um modelador de software ágil e conciso, auxiliando os acadêmicos na criação de diagramas e representações visuais de seus projetos.

  • GIMP: Editor de imagens multiplataforma, disponível para GNU/Linux, macOS, Windows e outros sistemas operacionais. O GIMP é software livre, permitindo modificações e distribuição do código fonte.

  • Firefox: Um navegador respaldado por uma organização sem fins lucrativos, destacando-se por não vender dados pessoais para anunciantes e por seu compromisso com a proteção da privacidade dos usuários.

4. Instalação e Utilização

Antes de tudo, vamos esclarecer algumas coisas. Nesse tutorial, será utilizado o aplicativo VMware Workstation Player, um software de virtualização de código aberto que permite criar máquinas virtuais em um sistema hospedeiro. Porém, a utilização da máquina virtual pode ser feita através de outros softwares, como o mais famoso Oracle VM VirtualBox. A escolha do aplicativo foi feita simplesmente por motivos de funcionamento, pois obtivemos melhores resultados usando a primeira opção. Para não estender demais o tutorial de utilização, será colocado o link de download das VMs, tanto a usada neste tutorial quanto da Oracle. Basta Seguir os Passos de instalação de acordo com o sistema operacional da sua máquina. Como os dois softwares têm a mesma proposta, os passos a serem seguidos serão bem similares entre um aplicativo e outro.

Com o download da VM, agora começaremos de fato do tutorial do ChronOS.


4.1 Download da ISO

Primeiramente, será necessário baixar a última versão do ChronOS. Acesse o link abaixo.

Ele irá abrir uma página do Google Drive, em que você deverá clicar no botão azul escrito Download.

Ele abrirá uma página falando que não foi possível fazer a verificação de vírus do arquivo, mas é só clicar no opção Fazer download mesmo assim. Imediatamente ele começará a instalação.

4.2 Live Build

O Live Build é a ferramenta essencial por trás da criação da distribuição Chron-OS. Ele oferece um método simplificado para construir imagens do sistema operacional ao vivo, permitindo uma personalização extensiva de pacotes, configurações e aparência.

Como configurar o Live Build

  1. Pré-requisitos: Certifique-se de ter instalado o Live Build em seu sistema. Caso contrário, você pode instalá-lo executando:
    sudo apt install live-build schroot -y
    
  2. Configuração: Para Configurar o Live Build execute o script:
    chmod +x lb_config.sh
    ./lb_config
    

Personalize as configurações:

Explore o diretório config para ajustar as configurações da distribuição de acordo com suas preferências. Isso inclui a seleção de pacotes, configurações de sistema e personalizações visuais.

Principais Pastas do Projeto Chron-OS

Ao explorar o repositório do Chron-OS, você encontrará várias pastas que desempenham papéis cruciais no processo de construção da distribuição. Abaixo, destacamos as principais pastas e seus propósitos dentro do projeto:

  • bootloaders:
    • A pasta bootloaders contém configurações e arquivos relacionados ao carregamento do sistema operacional.
  • includes.chroot_after_packages:
    • Na pasta includes.chroot_after_packages, você encontrará arquivos que são copiados para o sistema após a instalação dos pacotes.
  • includes.installer:
    • A pasta includes.installer contém arquivos que são incorporados ao instalador da distribuição.
  • package-lists:
    • A pasta package-lists contém listas de pacotes que serão incluídos na distribuição Chron-OS.
  • packages.chroot:
    • A pasta packages.chroot contém scripts e arquivos que são copiados para o sistema durante a fase de construção da distribuição, antes da instalação dos pacotes.

4.3 Instalação e Configração da Distro na VM

Após a instalação da máquina virtual, abra o aplicativo e aparecerá a seguinte tela abaixo. Nela, você deve clicar na opção "Create a New Virtual Machine”.


Após escolher essa opção, o programa vai gerar uma tela com 3 opções a serem escolhidas. A primeira permite o programa carregar uma ISO vinda de um dispositivo de armazenamento externo, como um pendrive. A segunda opção vai carregar uma ISO que foi salva diretamente no armazenamento da sua máquina. E a terceira permite carregar a ISO posteriormente.

No meu caso, eu baixei a ISO diretamente no meu computador, então vou com a segunda opção (Se você baixou a ISO em um pendrive, selecione a primeira opção que o resto das configurações serão as mesma que eu farei). Selecione Next.


Após ter selecionado, o programa vai pedir que voce informe qual sistema operacional está sendo instalado. Como o caso é um sistema com um kernel Linux, selecione a 2ª opção. Em seguida, coloque qual versão do sistema. Como o ChronOS foi construído em cima de um distribuição Debian, selecione a opção mais recente da mesma, o Debian 12 versão 64 bits. Selecione Next.


Seguindo, ele vai pedir que você nomeie o nome da Máquina Virtual, eu coloquei ChronOS pra ficar de acordo com o projeto, mas fique a vontade pra colocar qualquer nome. Selecione Next.


Nessa janela, você poderá customizar a quantidade de memória reservada para o sistema. Aqui vai da preferência de cada usuário, mas para melhores performances, recomendo sempre colocar uma quantidade maior ou igual sugerida pelo aplicativo. Selecione Next.


Aqui um sistema de mostra um simples relatório de como ficaram as configurações que voce escolheu, voce pode voltar caso queira mudar alguma coisa. Selecione Finish.


Aqui é só uma janela com informações sobre o aplicativo. Selecione Close.


Após isso, imediatamente a máquina Virtual começa a instalação do ChronOS. Aqui é uma tela de Boot, ela te mostra opções de instalação do sistema. Selecione a primeira opção.


Após isso, imediatamente começa a instalação de todas as dependências da Distro, aqui é só aguardar a instalação terminar.


E finalmente, terminando a instalação, você já é colocado imediatamente na tela de início da Distro. Bem vindo ao ChronOS!


Conclusão

O projeto ChronOS mudou bastante desde sua concepção no início do nosso período. Nos deparamos com alguns impasses que impediram a instalação de certos programas que buscávamos encontrar na distro no começo, como por exemplo o Cisco Packet Tracer. Porém, conseguimos algo bastante consistente com aquilo que nos foi proposto.

Como estudantes do Curso de Ciência da Computação, a realização desse trabalho foi com certeza um dos pontos a serem destacados na nossa grade curricular, pois muita das vezes temos o comportamento de ver a área de tecnologia só pelos famosos setores de desenvolvimento de softwares para web, e ter a possibilidade de fazer trabalhos assim nos tira um pouco dessa "bolha" em que estamos contidos.

O projeto do ChronOS ainda tem muito a evoluir, mas com certeza teve muito a agregar em valor a nós estudantes.

⚠️ **GitHub.com Fallback** ⚠️