domingo, 17 de julho de 2016

Receita de bolo para fazer seu pen-drive multiboot

Com muito trabalho e muita pesquisa.


Lembre-se de remarcar a opção boot depois de formatar. Por que a anta aqui esqueceu.
Assista em 480p pelo menos pra ter uma boa leitura do que eu estou fazendo.


Levei muito tempo para conseguir só chegar perto de fazer um pendrive bootável. Mas consegui algo muito melhor: um pendrive multiboot que também carrega isos direto do hd.

Ingredientes:

  • 1 pendrive a gosto
  • 1 computador com ou sem sistema operacional desde que tenha um drive de cd-rom
  • 1 live-cd de qualquer distribuição linux com grub2
  • internet a gosto



Modo de preparo:


  • Baixe a iso, preferencialmente versão desktop;
  • Formate o pendrive
  • No mesmo terminal, abra o gparted digitando sudo gparted /dev/sdx e torne o pendrive bootável. Lembre-se de desmontar, mas não ejetar o dispositivo. O gparted só trabalha com dispositivos desmontados.
  • Rode o live-cd, ou o seu sistema linux que tenha o grub2
  • Com o pendrive montado, descubra a partição dele abrindo o terminal e digitando mount (enter). 
  • Instale o grub2 digitando "sudo grub-install --force  --root-directory=/media/pendrive /dev/sdx" (enter). (dica) sdx é a partição do pendrive. E /media/pendrive é o local onde ele foi montado.
    • Instalar na partição /dev/sdx1 também funciona;
  • Agora digite grub-mkconfig -o /dev/sdx1/grub/grub.cfg 
    • /dev/sdx1 é a partição onde você instalou o grub2
  • Agora, abra o diretório do pendrive na pasta boot/grub/, crie um arquivo de texto chamado grub.cfg (não txt, cfg).
  • Abra o arquivo e copie o seguinte código em vermelho para lá:


#!/bin/sh 
exec tail -n +3 $0 
set timeout=30 
set default=0 

menuentry "0 - HD" {
 set root=(hd1)
 chainloader +1
}

menuentry "1 - Restart" {
 reboot
}

menuentry "3 - Linux Mint 15 Mate ISO no pendrive que estamos usando" { 
set gfxpayload=keep
 loopback loop (hd0,msdos1)/linuxmint-15-cinnamon-dvd-32bit.iso 
 linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper iso-scan/filename=/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash -- 
 initrd (loop)/casper/initrd.lz 
}

menuentry "4 - Linux Mint 15 Mate ISO no hd" { 
set gfxpayload=keep
         #Caso esteja numa pasta próxima da pasta raiz do sistema (mas no hd)
         loopback loop (hd1,msdos3)/Downloads/linuxmint-15-cinnamon-dvd-32bit.iso 
 linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash -- 
 initrd (loop)/casper/initrd.lz 
}

menuentry '5 - Ubuntu ubuntu-10.04.3-desktop-i386 no hd' {
         insmod part_msdos
         insmod ext2
set gfxpayload=keep
         echo   'Loading Loopback Image...'
         #Caso esteja numa "Downloads" próxima da pasta raiz do sistema (mas no hd)
         loopback loop (hd1,msdos3)/Downloads/ubuntu-10.04.3-desktop-i386.iso
         echo   'Loading Kernel Image...'
         linux   (loop)/casper/vmlinuz file=/cdrom/ubuntu.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/ubuntu-10.04.3-desktop-i386.iso noeject noprompt quiet splash --
         echo   'Loading Initrd Image...'
         initrd   (loop)/casper/initrd.lz



menuentry '5 - lUbuntu lubuntu-13.10-desktop-i386 no hd' {
         insmod part_msdos
         insmod ext2
set gfxpayload=keep
         echo   'Loading Loopback Image...'
         #Caso esteja numa pasta próxima da pasta raiz do sistema (mas no hd)
         loopback loop (hd1,msdos3)/Downloads/lubuntu-13.10-desktop-i386.iso
         echo   'Loading Kernel Image...'
         linux   (loop)/casper/vmlinuz file=/cdrom/lubuntu.seed boot=casper initrd/casper/initrd.lz iso-scan/filename=/Users/Marinaldo/Desktop/iso/lubuntu-13.10-desktop-i386.iso noeject noprompt quiet splash --
         echo   'Loading Initrd Image...'
         initrd   (loop)/casper/initrd.lz
}

  • Faça as devidas correções. Salve e... Está feito o seu pendrive bootável.

--------------------------------------------------------------------------------------
Segredinhos da receita

1 - > Você vai precisar configurar seu computador para iniciar pelo pendrive. Basta apertar a tecla de acesso a configuração de boot do sistema (no meu computador (acer) foi f2), prioridade de boot e por o pendrive em primeiro.

2 - > (hd1, msdos3) tem a ver com hd, partição. Nas pesquisas que fiz hd0 é o primeiro hd, ou seja, o pendrive em uso. Já a partição começa no 1 e segue, ou seja msdos3 é a 3ª partição do 1º hd.

3 - > A internet é só pra pesquisar e, caso necessidade, baixar os isos. O tamanho do pendrive é só para o caso de você querer muito espaço para as isos. No caso, a depender das isos que você deseja carregar, vai ser muito necessário.

4 - > Se você carregar as isos do hd é bem mais rápido do que do live-pendrive ou do live-cd. E caso o faça, poderá desmontar o pendrive e usar o computador como se houvesse instalado o sistema do pendrive. Ou seja, todas as portas usbs livres.

5 - > se for colocar um caminho extenso para a iso evite espaços. O erro gerado será "out of range" => fora de alcance. Prefira caminhos curtos como os que pus (/Users/Marinaldo/Desktop/iso/lubuntu-13.10-desktop-i386.iso). Evite o caracter espaço (" "). Evite os espaços. Organização é bom, sim. Mas evite os espaços.

6 -> Os isos serão sempre carregados na língua original: inglês. Não sei como mudar isso.

Boa sorte e que deus lhe ajude nessa empreitada e... Mãos a obra!!!

/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-/*-

Algumas explicações a mais:

menuentry "3 - Linux Mint 15 Mate ISO no pendrive" {
Ítem do menu "nome do ítem"
 set gfxpayload=keep
 loopback loop (hd0,msdos1)/linuxmint-15-cinnamon-dvd-32bit.iso
A linha acima é uma variável que carrega o arquivo pra memória. Mude esse caminho pra acessar a sua iso.
 linux (loop)/casper/vmlinuz file=/cdrom/preseed/mint.seed boot=casper iso-scan/filename=/linuxmint-15-cinnamon-dvd-32bit.iso noeject noprompt quiet splash --
Esta linha inteira carrega o sistema incluindo o kernel
 initrd (loop)/casper/initrd.lz
Aqui é o faz o sistema trabalhar
}

Bibliografia:


terça-feira, 5 de abril de 2016

Programa em java para ajudar estudantes com listas de disciplinas

Descrição:

Programa simples e leve em java com algumas funcionalidades úteis à estudantes que, como eu, precisam ou gostariam de saber o que podem fazer no semestre seguinte com base em sua lista de disciplinas as quais há a obrigatoriedade de cumprir até o final do curso.

Objetivo do programa:

Ajudar o estudante a se organizar e se planejar para o próximo semestre.

Funcionalidades:

  • Listagem a partir de status (Abertas, Fechadas e Terminadas);
  • Listagem por tipo (Opcionais e Obrigatórias);
  • Edição de disciplinas;
  • Sistema simples de busca de disciplina;
  • A mais importante de todas: percurso de disciplina;

Observação:

A funcionalidade percurso de disciplina é uma opção para que o usuário possa saber quais os pré-requisitos ele deve cumprir para fazer uma matéria ou disciplina.

Execução:

Para abrir basta ter o JAVA instalado no seu computador e abrir o arquivo CalcPreReqs-final-v1.3.jar como se fosse um programa executável qualquer (como os .exe do windows). Depois é só desbravar.

link para download:

http://sourceforge.net/projects/calculadordegrade/files/?source=navbar

Manual de instruções ilustrado:

 clique para  ver maior

 Clique para ver maior

 clique para ver melhor
========================================================================

Atenção:

O programa em si é o CalcPreReqs-final-v1.3.jar;
Os .blistas são arquivos de configuração e de informação;

Observação:

O pregui_a.jar é apenas para sistemas como o da UFBA;
Pra este programa funcionar corretamente a tabela de disciplinas deve ser da forma
SemestreCódigoDisciplinaNatureza
1FIS121FISICA GERAL E EXPERIMENTAL I-EOB
Senão você vai ter que editar 1 a 1 manualmente.

p.s.: No linux ambos os programas jogam os arquivos para a pasta /home/user/;
No windows joga para a mesma pasta. Fique atento a localidade do arquivo, pois você vai ter que selecionar o arquivo com o nome que você pôs assim que rodar o calculador de pré-requisitos.

Obrigado pela atenção, e aproveite bastante.