Programando às cegas: utilizando Windows e Linux juntos para aumentar sua produtividade parte III

Salve, galera!

Este é o terceiro artigo de nossa série sobre como usar ambientes Windows e Linux juntos para uma maior produtividade em ambientes de desenvolvimento.

  • parte I – Introdução
  • parte II – Instalando a máquina virtual
  • Parte III – Instalando o Arch Linux
  • Parte IV – integrando Linux e Windows

No artigo anterior, configuramos a máquina virtual.

Neste artigo, veremos com detalhes como fazer a instalação do Arch Linux, e começaremos a experimentar as conveniências do uso dois dois sistemas operacionais em conjunto para aumentar nossa produtividade.

Antes de começar

A partir de agora, começaremos a lidar com o NVDA em aplicações console.

É importante que você entenda que estes artigos exigirão um conhecimento mais avançado do leitor de telas, em áreas como:

  • uso do cursor de revisão
  • uso de reconhecimento óptico de telas
  • uso de complementos, tais como o exploração virtual

Além disso, você precisará estar familiarizado com inglês técnico, pois o instalador do Linux, e o próprio sistema em si, estão neste idioma.

Configurações gerais do VirtualBox

Estamos quase lá. Antes de ligar a máquina, precisaremos fazer apenas mais uma configuração: desabilitaremos, no VirtualBox, a captura automática de teclado.

Se habilitada, esta captura fará com que, sempre que foquemos a janela onde a máquina virtual está ligada, o controle passe imediatamente para ela. Entretanto, será comum usarmos o recurso de reconhecimento óptico do NVDA para monitorarmos o que está escrito em sua tela em situações nas quais o leitor de telas da máquina virtual não está funcionando.

Falando nisso, garanta que a cortina de tela no NVDA está desativada, pois esta funcionalidade interfere com o recurso de OCR.

Acesse às preferências do VirtualBox usando CTRL + g. O diálogo que se abre é similar ao de configuração das máquinas virtuais, e as técnicas de navegação descritas se aplicam da mesma forma.

Selecione na lista as opções de entrada, aperte tab algumas vezes até a opção capturar teclado automaticamente e a desabilite. A navegação neste diálogo pode ficar lenta.

Por fim, tab até ok e enter

Ligando a máquina

Selecione a máquina desejada na lista de máquinas virtuais na janela do VirtualBox.

Acesse o menu de contexto e selecione iniciar. Nas opções de início, selecione normal. Ainda falaremos das outras opções,mas não neste momento.

Após este procedimento, a sua máquina será ligada, e exibida em uma janela diferente da janela principal do VirtualBox.

A propósito, a tecla CTRL direita, apenas nessa janela, é usada para alternar o controle entre as suas máquinas física e virtual.

Nesta janela, qualquer comando envolvendo o CTRL direito, mesmo que componha um comando do NVDA, será interpretado como uma troca de máquina.

Esta é uma das razões pelas quais, depois de instalada, raramente utilizaremos a máquina via VirtualBox, preferindo sempre o controle via SSH.

De agora em diante, começa uma luta entre você e o VirtualBox. Isso, porque uma série de diálogos inacessíveis poderão abrir e você precisará se livrar deles. Na luta, vale tudo se você não tiver ajuda de quem enxerga. Enter, esc, qualquer coisa para se livrar destes diálogos.

De todos, o mais incômodo é um que, de primeiro, aparece a cada vez que você pressiona o CTRL direito. Geralmente, me livro dele pressionando shift + tab e apertando a barra de espaço. Com alguma persistência, eles somem.

A boa notícia é que, uma vez que eles sejam fechados, não tornarão a se abrir.

Aguarde alguns segundos e, depois, na janela da máquina virtual, pressione NVDA + r para reconhecer a tela.

Este comando faz com que o NVDA execute um OCR na tela da máquina virtual. Você deverá ler algo como:

arch64 existing memtest hdt reboot poweroff
bOOt:
朝 し
Right Control

Este é o prompt de inicialização do DVD de instalação da máquina. Pressione CTRL direito, enter para dar prosseguimento com a inicialização e, depois, CTRL direito novamente para voltar a controlar a máquina física.

É imprescindível que você não pressione, enquanto estiver lendo a tela, o CTRL direito para calar o NVDA. Se o fizer, você vai voltar a controlar a máquina virtual e a probabilidade de apertar alguma seta é grande. Se isso acontecer, o processo de inicialização vai parar.

Depois de uns quinze segundos, se pressionar NVDA + r novamente, você deverá ler algo como:

[root@arch iso
root (automat ic log in )
朝 し
・ 一 Right Control

Neste momento, se apertar CTRL direito para interagir com a máquina, você deve ouvir o leitor de telas Speakup falando. Se quiser, efetue um comando ls e ouça os arquivos listados, via leitor de telas da máquina virtual!

Guia de sobrevivência do Speakup

Caso você perca alguma informação que o leitor de telas falou, é possível reler as linhas, palavras e letras com os mesmos comandos que o NVDA utiliza em seu cursor de revisão.

  • 7 8 e 9 do teclado numérico leem as linhas anterior, atual e próxima respectivamente.
  • 4 5 e 6 do teclado numérico leem as palavras anterior, atual e próxima respectivamente.
  • 1 2 e 3 do teclado numérico leem os caracteres anterior, atual e próximo respectivamente.

Para ajustar o volume, vamos usar a tecla Speakup. Esta, como no NVDA, pode ser mapeada para o insert ou capslock. Por hora, use o capslock.

  • tecla Speakup + 1 do teclado alfa numérico abaixa o volume
  • tecla Speakup + 2 do teclado alfa numérico aumenta o volume

Para outros comandos, aqui está o manual do leitor de telas, em inglês.

O Speakkup está lento e falhando, Vai ser assim a instalação toda?

O problema não está com o leitor de telas e sim na integração entre o Windows e o VirtualBox.

Por isso, vamos evitar ao máximo usar a máquina diretamente, já que não temos como ser produtivos neste cenário.

Com quanto seja importante ter esta opção, principalmente se a nossa conectividade falhar, vamos sempre tender para o uso do cliente SSH do Windows, tanto na instalação quando no uso do sistema.

Ativando SSH no sistema de instalação

Você deve ter algo claro: o Linux que você está usando não é ainda o sistema instalado. Você está usando, agora, um sistema Linux inicializado a partir de uma imagem iso. Neste sistema, o login é automático e você está logado como usuário root.

Para habilitar conexões SSH neste sistema, precisaremos fazer duas coisas:

  • configurar uma senha para o root
  • Habilitar o serviço SSH

Você vai precisar decorar estes comandos ou apertar CTRL direito, digitar um comando e apertar CTRL direito novamente para voltar a esta janela.

  1. Vá até a máquina. Pressione CTRL direito, digite

    passwd
    

    e depois pressione enter.

    Você ouvirá new password. Digite uma senha fácil de lembrar (esta não será sua senha de root, será a senha de root do sistema de instalação inicializado a partir do DVD) e pressione enter.

    Você então ouvirá retype new password. Escreva a mesma senha e pressione enter.

    Por fim, se fez tudo certo, você ouvirá password updated successfully.

  2. Digite o comando

    systemctl start sshd
    

    O comando systemctl seria uma espécie de ncomando net no Windows, no sentido de que, da mesma forma que posso iniciar um serviço fazendo

    net start [serviço]
    

    no Arch Linux o comando

    systemctl start [serviço]
    

    fará exatamente o mesmo. Assim, o o comando que fizemos acima iniiciará o serviço ssh com as configurações padrão.

conectando no sistema de instalação via SSH

Agora, precisamos descobrir o endereço IP da nossa máquina. Em minha experiência, o VirtualBox sempre atrela IPs para redes host only (a rede que configuramos entre a máquina Windows e a máquina virtual) na família 192.168.56.x, onde x normalmente é um valor a partir de 101. Para descobrir o IP correto, existem algumas alternativas:

Descobrindo o IP via máquina virtual

Na máquina virtual, digite:

IP a | grep 192.168

E ouça cuidadosamente a saída. Esta opção faz, por debaixo dos panos, o seguinte:

  1. Executa o comando IP a que mostra os endereços IP de todas as interfaces de rede.
  2. Pega o resultado deste comando e o encaminha (através da barra vertical |) para o comando grep. O comando grep aplica o filtro que passamos depois dele, ou seja, 192.168 em todas as linhas do resultado, e nos mostra apenas linhas que contém este trecho. Assim, obtemos o endereço IP que queremos.

    Entretanto, por que o teclado ainda está desconfigurado, a | provavelmente não estará configurada para o local correto. Provavelmente, estará nos teclados ABNT 2 onde fica a tecla }.

Além disso, o Speakup se comporta realmente mal neste modo, e por isso eu aconselho a próxima maneira de obter o endereço IP.

Descobrindo o IP através do Windows

Sabemos que os IPs de rede host only começam a partir do 192.168.56.101 em diante. Assim, é só ir executando, no prompt de comandos, o comando

ping 192.168.56.10[x]

onde [x] é um número de 0 a 9. Aquele que obtiver resposta positiva será o IP da máquina virtual.

Em minha máquina, o endereço foi 192.168.56.103, mas na maioria delas será 192.168.56.101.

Conectando

Acesse o prompt de comando da sua máquina Windows. Escreva

ssh root@[IP] 

onde [IP] é o IP que você descobriu, E pressione enter.

Uma mensagem, dizendo algo como “The authenticity of host [xxx] ” vai aparecer. Digite yes e aperte enter.

Em seguida, a senha que você configurou para o usuário root será solicitada e, ao digitá-la, você estará conectado.

A partir de agora, o Speakup só precisará ser usado em caso de emergência, então vamos instalar o sistema.

Instalando o Linux

Antes, porém, vamos começar a usufruir imediatamente dos benefícios de usar leitor de telas Windows e SSH para operar o Linux.

A partir de agora, será possível usar a área de transferência, com um pequeno detalhe: para colar algo na janela de SSH, você não vai usar CTRL + v. Em vez disso:

  1. Faça tecla NVDA + / do teclado numérico para garantir que o ponteiro do mouse esteja na janela onde a sessão SSH está aberta.
  2. Pressione * do teclado numérico.

Simples assim.

checando acesso a internet

A rede deve estar corretamente configurada, mas antes de começar é sempre bom ter a certeza de que está tudo certo.

Digite o comando

ping archlinux.org

Antes de pressionar enter, entretanto, saiba o seguinte: ao contrário do Windows, onde o ping tenta enviar quatro pacotes e reporta, no Linux ele ficará enviando pacotes indefinidamente até que você pressione CTRL + c. Assim, depois de fazer o comando, aguarde uns cinco segundos e pressione CTRL + c.

Se ao menos um pacote for recebido, sua máquina Linux está acessando a internet.

Selecionando layout de teclado

Enquanto você estiver usando SSH, seu layout vai funcionar a contento. Mesmo assim, é bom deixar o teclado padrão utilizado já correto, para que você não tenha dor de cabeça se precisar entrar via VirtualBox. Digite

cd /usr/share/kbd/keymaps/

Uma vez na pasta, digite:

ls **/* | grep br (para teclados brasileiros) ou pt (para teclados portugueses)

O resultado será uma lista de arquivos. Você deve escolher o equivalente ao seu teclado e usá-lo com o comando loadkeys. No meu caso, ficou

loadkeys br-abnt2

Habilitando NTP

Para atrelar a máquina a um serviço de NTP remoto, execute o seguinte comando:

timedatectl set-ntp true

Configurando sua HD

Descobrindo onde a HD está mapeada

Para descobrir onde sua HD está mapeada, execute o comando

fdisk -l

Em minha máquina, a primeira linha da saída é esta:

Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors

Parece bom. Sabemos que nosso disco de 20 GB está mapeado em /dev/sda

Particionando a HD

  1. Digite fdisk [mapeamento da sua HD]. Aqui, seria fdisk /dev/sda
  2. Se digitar p, vai perceber que não há qualquer partição.
  3. Vamos criar a partição primária. Para tanto:

    • 3.1. Digite n para criar uma nova partição.

    • 3.2. O tipo padrão está como P, que é o que queremos. Pressionamos enter.

    • 3.3. O número da partição está configurado como 1, que é o que queremos. Pressionamos enter.

    • 3.4. O primeiro setor já está preenchido, pressionamos enter.

    • 3.5. Para o último setor, precisamos colocar o tamanho.

      Minha definição para a criação desta partição é a seguinte: tamanho da sua HD – metade da sua memória RAM. Aqui, seriam 20 GB menos a metade dos meus 4 GB de memória RAM, ou seja, 18 GB.

      Assim, vou digitar +18G

    • 3.6. Ao apertar enter, você vai ouvir que uma partição foi criada com o tamanho especificado.

  4. Vamos criar a partição SWAP. Para tanto:

    • 4.1. Digite N outra vez, para criar uma segunda Partição. Aceite todos os valores padrão.

    • 4.2. Se pressionar p, você verá que temos duas partições do tipo Linux.

      A primeira está ok, mas a segunda precisa ser do tipo SWAP. Precisamos mudar seu tipo.

    • 4.3. Use a opção t. Selecione a opção 2 e, no tipo, digite 82 (de nada, eu pesquisei para você o código). Pressione enter.

  5. pressione p novamente para confirmar que o tipo da primeira partição é Linux e o da segunda é Swap. Estando tudo certo, use o comando w para escrever a partição no disco.

Formatando as partições

Para formatar a partição primária, use o comando

mkfs.ext4 /dev/sda1

Para formatar a partição swap, use o comando

mkswap /dev/sda2

Montando a HD

Neste momento, a HD está particionada e formatada, mas não é possível, ainda, acessá-la a partir do sistema de instalação.

Para que possamos copiar os arquivos para o sistema a ser instalado, precisamos fazer com que o sistema de instalação consiga acessar a HD. No Linux, chamamos a esta operação de montagem de volume. Use o comando

mount /dev/sda1 /mnt

Para mapear a partição Linux da HD para a pasta /mnt no sistema de instalação.

instalação

Ao contrário do Windows, que tem um processo de instalação automatizado, uma instalação Linux nada mais é do que a cópia de arquivos para determinadas pastas.

Esses arquivos são frequentemente agrupados por aplicação ou conjunto de aplicações e cada grupo é chamado de pacote.

No Arch Linux, temos dois comandos para ligar com gerenciamento de pacotes:

  • pacstrap – gerencia pacotes na fase de instalação de um sistema, ou seja, instala pacotes não no sistema atual e sim em um sistema sendo instalado.
  • pacman – gerenciador de pacotes para um sistema em execução

Nossa instalação básica do Arch Linux terá os seguintes pacotes:

  • base – pacote de utilitários básicos
  • base-devel – ferramentas básicas de desenvolvimento, afinal estamos montando esta máquina porque somos programadores
  • espeakup – nosso leitor de telas. Lembre-se de que o fato de ele vir disponível no sistema de instalação não garante que ele esteja no sistema instalado, isso é nossa responsabilidade
  • linux – o kernel do Linux
  • linux-firmware – drivers para o Linux
  • alsa-utils – o pacote gerenciador de som, que precisa ser instalado agora para garantir que o Espeakup consiga falar quando a máquina ligar
  • nano – um editor de arquivos que usaremos para configurações depois da instalação
  • dhcpcd – um cliente DHCP, que atribuirá endereços IP para as placas de rede
  • openssh – pacote Open SSH, que nos permitirá a conexão na máquina via SSH

Lembre-se de que o fato desses pacotes estarem disponíveis no sistema instalador que você está usando não garante que eles estejam no sistema instalado, a não ser que você os instale.

Boa parte desses pacotes serão baixados da internet. Assim, antes de baixá-los, precisamos dizer para o sistema de instalação de qual origem, ou link, eles devem ser baixados.

A escolha dos links (ou mirrors) é de extrema importância, pois quanto mais perto e mais rápidos forem os mirrors mais rápida nossa instalação será.

Escolhendo mirrors

A maneira de escolhermos os mirrors para a instalação é alterando o arquivo

/etc/pacman.d/mirrorlist

Precisamos colocar os mirrors mais próximos e mais rápidos nas primeiras linhas deste arquivo, para que eles sejam usados.

  1. Digite

    vi /etc/pacman.d/mirrorlist
    
  2. Procure por um mirror do seu país ou de uma região próxima. No meu caso, preciso procurar um mirror do brasil.

    Para tanto, digitarei /Brazil (note o b maiúsculo e o z no nome do país).

    Quem numca usou o VI pode ter a impressão de que estamos escrevemdo no meio do texto, mas o VI não funciona como a maioria dos editores.

    Nele, até que você especifique o contrário, cada tecla pressionada é um comando. O comando / faz com que uma busca seja feita pelo que foi digitado depois dela.

  3. Ao pressionar enter, você cairá em uma linha com o nome do seu país comentado (comentários começam com #)

  4. Pressione a seta para baixo. Você cairá em uma linha com um endereço de servidor. Precisará copiá-la, e para isso pressione a tecla y duas vezes.

  5. Para ir ao início do arquivo, pressione 1G (note o g maiúsculo). Não precisará apertar enter.
  6. Desça até uma linha vazia com as setas.
  7. Pressione p, comando que faz a opção colar. Você ouvirá a linha colada.
  8. posicione o cursor no # (sinal de comentário) antes da palavra server da linha que você acabou de colar e pressione x, comando que deleta o caracter onde o cursor está.

    Você ouvirá que, agora, a linha não começa mais com o #, o que significa que ela não está comentada.

  9. Pressione :w para salvar e enter para confirmar o nome do arquivo que está preenchido por default.

  10. Pressione :q e enter para sair do VI.

corrigindo bugs

O mantenedor do Tarch decidiu configurar um repositório de pacotes pessoal que está fora do ar.

Assim, precisamos retirá-lo do sistema. Para tanto:

  1. Digite

    nano /etc/pacman.conf
    
  2. Agora, vamos usar o nano. Este é um editor clássico, no sentido em que andamos com as setas e os caracteres digitados são inseridos no texto.

  3. digite CTRL + w e depois world e pressione enter.
  4. Você vai chegar em uma linha iniciada em server.
  5. Vá até o início da linha e insira um # para comentá-la.
  6. Faça o mesmo com as duas linhas acima.
  7. Pressione CTRL + x para sair, y para confirmar que quer salvar o arquivo e enter.
Atualizando o instalador

Aqui, precisaremos novamente explicar o que está acontecendo.

  1. O projeto Talking Arch talkingarch.tk foi descontinuado.
  2. Em seu lugar, surgiu o projeto Tarch tarch.org.
  3. Este projeto oferece DVDs com o instalador do Arch Linux pré configurado com leitor de telas.

    Entretanto, sua última versão está listada como experimental e há nela bugs, algo que não queremos.

  4. Por isso, temos que lidar com uma versão mais antiga, que tem tudo o que precisamos sem bugs conhecidos.

  5. Porém, o fato de esta versão ser antiga nos exigirá alguns procedimentos extras para conseguirmos instalar o sistema.

  6. O projeto Talking Arch retornou, agora no site talkingarch.info.

    Entretanto, o DVD distribuído nesta versão não contém os drivers de som compatíveis com o VirtualBox, de maneira que não conseguimos usar o espeakup para fazer a instalação.

Assim, nossa melhor opção ainda é a imagem antiga do Tarch, mesmo com alguns procedimentos a mais que teremos que fazer.

  1. Forçar desnecessariamente a atualização do pacman (vai dar erro, tudo bem).

    pacman -S pacman
    
  2. Atualizar as chaves assinadas

    pacman-key --refresh-keys --keyserver=keyserver.ubuntu.com
    

    Se o sistema disse que alguma chave local não pode ser assinada, ignore.

    Estamos usando o server do ubuntu pois o default para esta imagem costuma não responder.

  3. Atualizar o keiring no sistema instalador, para garantir a autenticidade dos pacotes:

    pacman -Sy archlinux-keyring
    

    Confirme a instalação com y quando solicitado.

    Confirme a importação de chaves com y quando e se solicitado.

  4. Agora sim, atualizar o pacman do próprio instalador:

    pacman -S pacman
    

    Confirme a instalação com y quando solicitado.

Como você notou, usamos o pacman, pois estamos atualizando nosso próprio sistema instalador (atualmente em execução), nem começamos a instalar de fato o sistema.

A propósito, começaremos a fazer isso na sequência.

Instalando os pacotes

Com o mirror selecionado, usamos o comando pacstrap para instalar, na HD da máquina, os pacotes que escolhemos

pacstrap /mnt base base-devel espeakup alsa-utils linux linux-firmware nano dhcpcd openssh

Vai demorar um bom tempo, talvez uns cinco minutos, até que todos os pacotes sejam baixados e instalados. Faça uma pausa até que o processo termine.

configuração do sistema instalado

Agora, o sistema está instalado. Precisaremos fazer as configurações iniciais antes de utilizá-lo.

fstab

Este é um arquivo que vai dizer, para o sistema instalado, quais dispositivos devem ser montados. O instalador nos oferece um comando conveniente para gerar este arquivo automaticamente.

genfstab -L /mnt >> /mnt/etc/fstab

chroot

Este é um dos comandos que mais podem confundir quem está instalando o Arch pela primeira vez. A partir dele, você deixará de navegar na estrutura de pastas do sistema de instalação e começará a navegar na estrutura de pastas do sistema instalado, mesmo que o sistema em execução ainda seja o instalador.

Fazendo chroot podemos mais facilmente editar alguns arquivos, criar usuários e etc, já em relação ao sistema instalado. Assim, poderemos criar a senha do root, entre outras coisas, antes de inicializar de fato o sistema instalado.

Para entrar em modo chroot execute o comando

arch-chroot /mnt

Deste momento em diante, você estará ainda executando o sistema instalador, mas qualquer comando que fizer afetará o sistema instalado, que ainda não está rodando.

Seria como se você estivesse operando remotamente outro sistema, no sentido em que, embora você esteja dando comandos e obtendo as respostas através do sistema instalador, quem está sendo de fato afetado é o sistema instalado.

especificando o fuso horário

Links simbólicos

Antes de o fazermos, porém, precisamos falar rapidamente sobre o conceito de links simbólicos.

Em uma máquina Linux, é possível criar arquivos em qualquer pasta que, na verdade, são apenas referências para outros arquivos.

Assim, eu posso ter muitas cópias de um mesmo arquivo que, na verdade, não são cópias mas, sim, se referem ao mesmo arquivo que estará apenas em um lugar.

Para as aplicações (editores de texto, scripts, entre outros), não há diferença: elas “pensam” que o arquivo está realmente em um determinado lugar mas, sendo um link, na verdade estão lendo, gravando, etc, um arquivo em um local completamente diferente.

em Linux, configurações de sistema ficam em arquivos. Não existe um registro do sistema, um banco de dados, são apenas arquivos de configuração onde praticamente todos os aspectos do sistema são configurados.

A pasta base das configurações sistêmicas é normalmente /etc.

configurando o fuso horário

O fato de links simbólicos estarem tão intrinsicamente presentes no sistema oferece, aqui, uma vantagem: é possível distribuir uma série de configurações já pré fabricadas e deixar o usuário escolher, em vez de fazê-lo ler toda a documentação e digitar arquivo por arquivo. Isso é exatamente o que o Arch Linux fez com a questão do fuso horário. O sistema espera encontrar, no arquivo

/etc/localtime

as informações do fuso horário a ser usada. Entretanto, em vez de nos fazer decorar toda a sintaxe desta configuração, a distribuição nos oferece uma série de arquivos já prontos, um para cada fuso horário existente (creio que se não para todos, para quase a totalidade deles).

Assim, o que precisamos fazer é apenas criar um link simbólico em /etc/localtime para o arquivo que queremos, de forma que o sistema “pensará” que existe este arquivo, mas ele é na verdade apenas um link para outro arquivo já pré configurado com nosso fuso horário.

Uma excelente forma de descobrir os nomes corretos dos arquivos de fuso horário é usar o tab completiom. Funciona da seguinte maneira: digite

ln -sf /usr/share/zoneinfo/ e pressione tab duas vezes.

Você vai ouvir uma lista de opções, e pode ler com o cursor de exploração do NVDA. Quando encontrar a região ou país, digite o nome, uma / e torne a pressionar dois tabs.

No meu caso, digitei Brazil/ e pressionei dois tabs.

A lista então mostrou Acre, deNoronha, West, East.

Como estou na parte leste, digitei East/ e pressionei dois tabs. Nada aconteceu, então sei que cheguei ao arquivo correto.

Então, apaguei a última / pressionei espaço e digitei o destino do link /etc/localtime e, finalmente, enter. Para mim, o comando ficou desta forma:

ln -sf /usr/share/zoneinfo/Brazil/East /etc/localtime

Para atualizar o relógio com o fuso Horário recém modificado, digite o comando

hwclock --systohc

locale

Embora, possivelmente, o Arch Linux esteja traduzido para português, desaconselhamos fortemente seu uso neste idioma. Isso por duas razões:

  • como programador, você precisa se forçar a praticar Inglês.
  • Se você estiver usando o sistema em outro idioma, qualquer erro ou outra saída que você queira usar para fazer pesquisas na internet não encontrará resultado, uma vez que praticamente todas as pessoas o utilizam em Inglês.

Assim, faça o seguinte para gerar as strings de idioma:

  1. digite

    nano /etc/locale.gen
    
  2. Apague o # da frente das linhas en_US, tanto para a iso 8859-1 quanto para a utf-8.

  3. CTRL + x, y para confirmar que quer salvar e enter.

  4. Faça o comando

    locale-gen
    
  5. Com as strings geradas, precisamos agora indicar ao sistema o locale a ser usado. Para isso, digite

    nano /etc/locale.conf
    
  6. Escreva

    LANG=en_US.UTF-8
    
  7. CTRL + x, y para confirmar que quer salvar e enter.

layout de teclado

Agora, é hora de fazer com que as informações de layout de teclado sejam persistidas no sistema instalado.

  1. Digite

    nano /etc/vconsole.conf
    
  2. Escreva KEYMAP=[o mesmo teclado que você configurou no instalador]. Para mim, ficou assim:

    KEYMAP=br-abnt2
    
  3. CTRL + x, y para confirmar que quer salvar e enter.

Configurações de rede

redirecionamento (pipe)

Aqui, precisamos explicar outro conceito.

Quando um comando é escrito no shell (como chamamos o prompt de comandos), o sistema operacional escreve sua saída na tela.

Para o shell (prompt de comando), a tela é nada mais do que um arquivo onde ele escreve a saída. Este arquivo tem um nome e um identificador. O nome é stdout e o identificador é 1.

Quem desenvolve para Linux sabe que qualquer outro arquivo aberto no sistema também tem um nome e um identificador.

O sistema operacional sabe que o arquivo com identificador 1 e nome stdout não se refere a um arquivo no disco. Em vez disso, ele se refere a tela e uma operação de escrita neste arquivo faz com que o sistema escreva na tela o conteúdo.

Entretanto, podemos redirecionar a saída de um comando para outro arquivo qualquer, que não seja o stdout. Para o comando, nenhuma novidade, ele apenas vai escrever sua saída em um arquivo, como sempre ocorreu.

Porém, o arquivo será outro: em vez de o sistema escrever em tela, vai escrever onde quer que o arquivo especificado esteja de fato presente, inclusive no disco.

Para fazermos o redirecionamento, usamos um > (maior) logo após o comando e, logo depois, colocamos o identificador ou o nome do arquivo para onde a saída do comando será direcionada.

Nome da máquina

Usaremos o redirecionamento (pipe) para configurarmos o nome da nossa máquina virtual.

O Arch Linux espera ler o nome da máquina do arquivo

/etc/hostname

Este arquivo deve conter somente o nome do computador.

Uma solução seria:

  1. digitar

    nano /etc/hostname
    
  2. Digitar o nome do computador.

  3. CTRL + x, y para confirmar que quer salvar e enter.

Porém, como o texto do arquivo precisa ter apenas uma linha e porque não queremos editar e sim escrever um arquivo novo, podemos usar um caminho mais rápido, através do comando

echo

Este comando apenas ecoa de volta na tela o que escrevemos como parâmetro.

Mas, lembre-se, podemos redirecionar sua saída para outro arquivo, por exemplo um arquivo em disco! Portanto, faça o seguinte comando:

echo [nome-da-máquina] > /etc/hostname 

onde [nome-da-máquina] é o nome da sua máquina virtual.

Ele irá repetir o nome da sua máquina, mas não para a tela. Em vez disso, vai escrever no arquivo

/etc/hostname

e isso é exatamente o que precisamos.

Configuração do arquivo hosts

Este arquivo especifica traduções de nomes para endereços IP que deverão ser resolvidos no computador em vez de em um servidor de resolução de nomes.

Para configurá-lo:

  1. Escreva

    nano /etc/hosts
    
  2. no arquivo que se abre, adicione as seguintes linhas:

    127.0.0.1 localhost
    ::1 localhost
    127.0.1.1 [mome-da-máquina] onde [nome-da-máquina] é o nome da sua máquina virtual
    
  3. CTRL + x, y para confirmar que quer salvar e enter.

senha do root

Faça o comando

passwd 

Ao pressionar enter, você será solicitado a escrever a senha do usuário root. Desta vez sim será a senha do root do sistema instalado, então pense bem no que vai escrever.

O sistema solicitará que você repita a senha. Correndo tudo a contento, a configuração de senha estará feita.

atualizando chaves de assinatura

Esta é mais uma das tarefas que precisaremos fazer por termos uma instalação mais antiga.

digite o comando

pacman-key --populate archlinux

Note que agora, como estamos em modo chroot, o pacman já altera o sistema instalado, não mais o sistema instalador.

configurando um inicializador

Apesar de a máquina virtual estar instalada, ou seja, com todos os arquivos nas respectivas pastas, um inicializador ainda não foi instalado.

Um inicializador é o que aponta para a Bios por onde começar a carregar o sistema operacional. No nosso caso, instalaremos o grub

instalar o grub

Para baixar o grub, digite o comando

pacman -S grub

Confirme a instalação com y quando solicitado.

Ao contrário de boa parte dos pacotes, este não tem um script de instalação que o pacman consiga executar automaticamente, pois seus senários de instalação são muito variados. Por isso, precisaremos instalá-lo e configurá-lo nós próprios.

Instalando e configurando o Grub

Digite os seguintes comandos

grub-install /dev/sda

grub-mkconfig -o /boot/grub/grub.cfg

Habilitando serviços

Nossa instalação está quase pronta. Precisamos, apenas, habilitar alguns serviços que, quando a máquina subir, precisarão iniciar automaticamente

São eles:

  • dhcpcd – pra que a máquina se conecte e obtenha um IP na rede quando iniciar
  • espeakup – nosso leitor de telas, caso precisemos operar a máquina via VirtualBox

Para tanto, precisaremos digitar o comando systemctl enable passando o nome de cada um deles, para garantir que sejam iniciados quando a máquina for ligada.

systemctl enable dhcpcd
systemctl enable espeakup

Habilitando SSH

Da mesma forma que habilitamos o SSH no sistema instalador, precisaremos habilitar também no sistema instalado.

Isso é necessário para permitir que nos conectemos diretamente via SSH no sistema instalado, sem sequer precisar abrir uma janela de controle no VirtualBox.

Esta máquina é parte de um ambiente de desenvolvimento completamente integrado ao Windows, planejada para trabalhar da forma mais otimizada possível.

Isto significa que haverá apenas um usuário, e ele é o root, afim de que tenhamos acesso total, a todo tempo, em todos os recursos que precisamos, o mais rápida e diretamente que nos seja possível.

Por isso, descumpriremos outra melhor prática agora: habilitaremos o acesso root via SSH. Nunca é demais lembrar que esta máquina só deverá ser acessada através da rede host only estabelecida entre a máquina Windows e ela, de maneiras que não me responsabilizo por eventuais problemas de segurança que possam surgir de um uso indevido desta configuração.

Isto dito:

  1. Faça o comando

    nano /etc/ssh/sshd_config
    
  2. Digite CTRL+w e insira permitRootLogin e pressione enter.

  3. Descomente a linha (remova o #) de seu início.

  4. Troque a palavra prohibit-password por yes. Deverá ficar assim

    PermitRootLogin yes
    
  5. Pressione CTRL + x para sair, confirme com y e pressione enter.

  6. Faça o comando

    systemctl enable sshd
    

    para iniciar o serviço de ssh quando a mmáquina for iniciada.

Salvando configurações da placa de som

Faça o comando

alsactl store

para salvar as configurações atuais da placa de som, afim de que, se for necessário iniciar a máquina via VirtualBox, o espeakup consiga subir falando.

Sair do sistema instalado

Agora, você precisa sair do modo chroot. Para tanto, digite

exit

Finalizando a instalação

Nada mais resta a fazer se não desligar a máquina.

Isso se faz necessário para que você possa desconectar o drive de DVD e reabilitar a HD na sequência de inicialização, para que a máquina depois carregue o sistema instalado.

Faça o comando

shutdown -h now

para desligar a máquina. Você vai notar que a conexão SSH será terminada.

Removendo o drive de DVD e habilitando a HD na sequência de inicialização

  1. Selecione sua máquina na lista de máquinas na janela principal do VirtualBox.
  2. Verifique se, por qualquer razão, ela ainda está ligada, acionando o menu de contexto e procurando pela opção fechar.

    • 2.1. Se a opção estiver disponível, selecione o submenu desligar e confirme a operação.
  3. Pressione CTRL + s para abrir as configurações.

  4. Selecione a segunda opção de cima para baixo na lista.

  5. Desmarque o disco óptico da sequência de inicialização e marque o disco rígido.
  6. Selecione, na lista de configurações, as opções de armazenamento.
  7. Tab até a lista das controladoras, que será bem verbosa com o NVDA.
  8. Seta para baixo para selecionar a controladora ide que está com a iso do Tarch associada.
  9. Tab até a opção drive óptico (você passará pelo ok e cancelar, como da outra vez).
  10. Pressione a barra de espaços e setas para baixo até remover disco do drive virtual. Pressione enter.
  11. Tab até a caixa de verificação live CD / DVD. Pressione a barra de espaços para desmarcar.
  12. Tab até ok e enter.

Ligando a máquina

Selecione a máquina desejada na lista de máquinas virtuais na janela principal do VirtualBox.

Acesse o menu de contexto e selecione iniciar. Nas opções de início, selecione normal. Ainda falaremos das outras opções,mas não neste momento.

Após este procedimento, a sua máquina será ligada, e exibida em uma janela diferente da janela principal do VirtualBox.

Pode haver um diálogo inacessível. Sendo este o caso, pressione esc para cancelar.

A propósito, a tecla CTRL direita, apenas nessa janela, é usada para alternar o controle entre as suas máquinas física e virtual.

Nesta janela, qualquer comando envolvendo o CTRL direito, mesmo que componha um comando do NVDA, será interpretado como uma troca de máquina.

Você precisará esperar cerca de 20 segundos. Depois disso, pressione NVDA + r para reconhecer a tela. Você deverá ler algo como:

[nome da máquina]  log in :
朝
い こ -
・ 一 Right Control

A partir daí, pressione CTRL direito e comece a interagir com a máquina. O espeakup já irá falar!

Digite root (o nome do usuário) e aperte enter.

Digite a senha e aperte enter.

Tudo correndo a contento, você estará no pronpt de comando.

Testando a conectividade

Aqui, vai haver a mesma dinâmica que fizemos no sistema instalador para descobrir o endereço IP.

Atenção que o IP pode mudar em relação ao atribuído para o sistema de instalação.

conectando via SSH

Faça, no prompt de comandos do Windows, o comando

ssh root@[IP-da-máquina]

onde [IP-da-máquina] é o IP que você descobriu. ]

Responda yes ao aviso de autenticidade e, quando solicitado, digite a senha do root que você configurou.

Conclusão

Esperamos que, durante este processo, você tenha aprendido bastante sobre a instalação e configuração inicial de uma instalação do Arch Linux.

Você pode pensar que o processo finalmente terminou. Saiba que, muito pelo contrário, ele apenas começou.

No próximo artigo, instalaremos as ferramentas que tornarão nossa máquina tão integrada quanto possível com o Windows, mostrando todo o potencial desta solução.

Artigos da série

  • parte I – Introdução
  • parte II – Instalando a máquina virtual
  • Parte III – Instalando o Arch Linux
  • Parte IV – integrando Linux e Windows
© Copyright BlindTec 2020, todos os direitos reservados.
Para mais detalhes, consulte a página de direitos autorais do portal.
Gostou do post? Compartilhe!Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Email this to someone
email
Share on LinkedIn
Linkedin

4 comentários

  • Pingback: PROGRAMANDO ÀS CEGAS: UTILIZANDO WINDOWS E LINUX JUNTOS PARA AUMENTAR SUA PRODUTIVIDADE PARTE II - BlindTec

  • alexandre toco

    super interessante! mas, trabalho árduo! kkk O windows realmente nos deixa bem acostumados.

    • Alexandre, obrigado pelo comentário.

      Classifico o trabalho em dois grupos neste caso:

      1- O trabalho que um deficiente visual precisaria ter ao instalar uma máquina usando um leitor de telas que não conhece e em uma situação onde a máquina a ser instalada não poderia ser usada para pesquisar por solução de problemas ou esclarecimento de dúvidas.

      2- O trabalho de conhecer mais sobre Linux, que independe da deficiência visual e deveria ser presente em todos os profissionais da área de desenvolvimento de sistemas.

      A solução aqui proposta trata do primeiro problema, ao dar ao deficiente visual condições de aprendizado que o deixam em situação de isonomia com quem enxerga, posto que ele ou ela podem usar seu leitor de telas de costume e, por causa da máquina voirtual, utilizar a máquina física ´para pesquisa.

      Quanto ao segundo ponto você notará que este texto foi bem didático, dando ao novo usuário base para que tenha seu desenvolvimento mais guiado e facilitado a partir do que foi explicado.

      Diria que a maior parte do trabalho foi tida por nós para que os leitores não precisassem tê-lo, então agora é só aproveitar e investir no seu desenvolvimento pessoal e profissional.

  • Pingback: Programando às cegas: utilizando Windows e Linux juntos para aumentar sua produtividade parte I - BlindTec

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *