terça-feira, 15 de novembro de 2022

Virtualizando um Sistema Operacional em linha de comando com o qemu


 
Qemu é um emular de S.O. (Sistema Operacional) de código aberto em modo texto, sendo uma alternativa ao Virtualbox e ao VMware.
 
Instalação no Debian 11
 
$ sudo apt install qemu qemu-utils qemu-system-x86
 
Caso você seja um usuário avançado em emulação de sistema operacionais, mais pacotes opcionais serão necessário para completar todo o qemu,
como pacotes específicos para emular um rede em modo bridge, adicionais de convidado, emular outras arquitetura diferente do x86 e x86_64, e interface gráfica para o qemu.
 
Inicializando uma imagem LIVE sem instalar
 
$ qemu-system-x86_64 -name Slackel -enable-kvm -smp 2 -m 1G -soundhw all -cdrom arquivo.iso
 
Onde:
qemu-system-x86_64 = para sistema instalado de 64 bits, utilize este comando.
-m 1G   = quantidade de RAM que desejamos fornecer para o qemu.
-smp 2  = quantidade de núcleos do processador que a maquina virtual utilizará.
-soundhw all = emula todas as placas de som suportadas (opcional).
-name Slackel = nome da janela do qemu (opcional) e se o nome tiver espaços
em branco coloque entre aspas dupla.
 
Nota:
Se não especificar -soundhw all o sistema operacional não terá nenhum som.
 
Criar um disco virtual para instalar o sistema
 
Para poder instalar o sistema no qemu precisamos antes criar um disco virtual.
Crie um diretório específico para armazenar os arquivos do HD virtual caso você faça muitos testes de vários sistemas operacionais como exemplo ~/qemu-pool.
 
$ qemu-img create -f qcow2 slackel.qcow2 30G
Formatting 'slackel.qcow2', fmt=qcow2 size=32212254720 cluster_size=65536 lazy_refcounts=off refcount_bits=16
 
Onde:
slackel.qcow2 = nome do arquivo do HD virtual
qconw2 = é o formato da imagem, existem outros tipos, mas este é o mais atual
30G = é o tamanho do HD virtual
 
 
Obter informações do HD virtual
 
$ qemu-img info slackel.qcow2
 
$  qemu-img info slackel.qcow2
image: slackel.qcow2
file format: qcow2
virtual size: 30 GiB (32212254720 bytes)
disk size: 196 KiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false
    refcount bits: 16
corrupt: false
 
 
Instalando o S.O. no HD virtual
 
 
$ qemu-system-x86_64 -enable-kvm -smp 2 -m 1G -soundhw all -boot d -hda slackel7.5.qcow2 -cdrom arquivo.iso
 
Notas:
Devemos especificar o nome do arquivo do HD virtual usando a opção -boot d -hda seguido do nome do arquivo do HD virtual.
Exemplo: -boot d -hda slackel.qcow2 e após o -cdrom o arquivo da imagem .iso
 
Quando terminar a instalação feche a janela do qemu, pois ao reiniciar o sistema instalado será utilizada a mesma linha de comando usada para instalar novamente a distro no HD virtual.
 
Utilizando o S.O. que foi instalado no HD virtual
 
Depois de instalada o S.O. no HD virtual, para iniciar o sistema já instalado use somente desta forma para virtualizar o mesmo:
 
$ qemu-system-x86_64 -enable-kvm -smp 2 -m 1G -soundhw all -boot d -hda slackel.qcow2
 
Notas:
Você somente utilizará o arquivo do HD virtual para inicializar o sistema.
A imagem .iso não é mais necessária podendo excluir a mesma para recuperar
espaço em disco.
 
Se você utiliza o sistema virtualizado diariamente coloque a linha de comando dentro de um script salvando o mesmo no path do sistema e inclua o caminho completo do HD Virtual, podendo assim executar o script de qualquer diretório que você estiver.
 
Comando de atalhos de teclado
 
Ctrl + Alt + F - Para alternar entre tela cheia
Ctrl + Alt + G - Para alternar o cursor do mouse entre o host e a máquina física
 
 
Shot da janela do qemu
 

 

sábado, 15 de outubro de 2022

Encontre seus arquivos facilmente com Fsearch

 

Fsearch é um programa feito em GTK3 que encontra seus arquivos facilmente a medida que você vai digitando e você pode fornecer mais de uma palavra na mesma barra de pesquisa para ir diminuindo a quantidade de arquivos coincidentes. Você pode escolher por pesquisar somente por nome de Pastas, Ficheiros ou Tudo.

 

Para utilizar o fsearch você tem que adicionar um ou mais caminhos de uma pasta para criar a base de dados, onde a mesma é super rápida tanto na criação ou atualização.

 

Você pode adicionar caminhos de um ponto de montagem  (pasta) de um 2º HD/SSD interno do computador ou de um HD/SSD externo conectado na porta usb mas lembrando que o ponto de montagem deve sempre utilizar exatamente o mesmo caminho e nome de pasta.

 

Num HD/SSD utilizado como backup conectado na porta usb a criação ou atualização da base de dados será lenta devido que o barramento usb é muito lento em comparação ao Barramento Sata, onde num HD externo de 1 TB com 380 GB ocupado, num total de pouco mais de 430.000 arquivos levou 8 minutos (tanto para criação/atualização), já este mesmo espaço ocupado e total de arquivos levaria apenas alguns segundos em um HD na porta Sata.

 

Mesmo que o HD externo não esteja conectado na porta usb, você pode atualizar a base de dados do fsearch normalmente, onde neste caso a atualização é feita em poucos segundos, mas se quiser saber se no HD externo tem os arquivos digitados na pesquisa sem ele está conectado na porta usb, após ter feita a atualização da base de dados com ele desconectado é necessário fechar a janela do fsearch atual e executa-lo novamente para que os arquivos que estão no HD externo que atender ao critério seja listado também.

O fsearch é um indexador de arquivos muito leve e rápido quando ativo, salientando que ele não trabalha em 2º plano para atualizar a base de dados onde você deverá atualizar a mesma manualmente na janela do programa quando você criar novos arquivos ou excluir arquivos no local que está adicionado ao fsearch caso você cria ou excluir muitos arquivos diariamente.

 

Característica do fsearch

 

  • Você pode copiar arquivos e pastas da janela do fsearch e colar na janela do seu gerenciador de arquivos (pcmanfm, thunar, nautilus e outros de ambiente desktop)
  • Abrir a pasta no gerenciador de arquivos
  • Copiar caminhos de arquivos e pastas
  • Abrir os arquivos que estão associados a programas do seu sistema
  • Excluir arquivos diretamente da janela do fsearch onde o mesmo é enviado para lixeira do sistema
  • Cortar (Mover) arquivos e na janela do seu gerenciador de arquivos você cola os mesmos na pasta desejada.

 

Nota:

Ao usar a opção de excluir arquivos ou cortar arquivos da janela do fsearch a base de dados deverá ser atualizada manualmente para que os mesmos não apareça mais na listagem caso use os mesmos critérios anteriores.

 

Instalando o fsearch no Debian

Nos repositórios do Debian não existem o pacote do fsearch, mas você pode baixar pacotes .deb feito especificamente para o Ubuntu no site do desenvolvedor, mas dependendo da versão baixada poderá haver dependências na instalação que você devera saber como resolve-las.

 

Para o Debian de versão 10 ou 11 de 64 bits ou Ubuntu 16.04 baixe o pacote abaixo cujo não houve dependência nestas distros executando no terminal:

 

$ wget https://launchpad.net/~christian-boxdoerfer/+archive/ubuntu/fsearch-daily/+files/fsearch-trunk_0.1+362+9~ubuntu18.10.1_amd64.deb

Depois faça:

 

$ sudo dpkg -i fsearch-trunk_0.1+362+9~ubuntu18.10.1_amd64.deb

 

Nota:
A versão 0.1 do fsearch somente trabalha com nomes de arquivos mas para usuários não avançados ela já é suficiente e muito prática, já que o mesmo raramente se lembrará de tamanho de arquivo, data da criação e outras opções utilizando recurso de expressões RegEx devendo saber como escreve-la na barra de pesquisa recurso disponível apenas na versão 0.2 do fsearch que foi lançada em 2022.
 

Instalação da versão mais recente do fsearch no Ubuntu

 

A versão mais recente do fsearch é a 0.2 que conta com muitos novos recursos e melhorias, como o uso de expressões RegEx, suporte a curingas e muito mais, onde para isto você deve utilizar o repositório PPA oficial do criador na sua distro baseada em Debian ou Ubuntu e com isto você receberá novas atualizações do fsearch quando elas estiferem disponíveis.

 

sudo add-apt-repository ppa:christian-boxdoerfer/fsearch-stable
sudo apt update
sudo apt install fsearch

 

Janela inicial do fsearch

 



 

 

 

 

 

 

 

 

segunda-feira, 12 de setembro de 2022

Gráfico dinâmico com validação de dados no LibreOffice Calc

No vídeo abaixo mostrarei como criar um gráfico dinâmico de barras no LibreOffice Calc fazendo uso das funções ÍNDICE e LINHA e da Validação de dados.

 



 

Clique aqui para baixar documento utilizado no vídeo video-Gráfico dinâmico com validação de dados no LibreOffice.ods

quinta-feira, 18 de agosto de 2022

Como fazer para que o player qmmp reproduza som midi ?

O player de áudio qmmp reproduziu nativamente os formatos de  arquivos .mp3 .wma .wav .m4a e .ogg mas para que o qmmp reproduza arquivos .mid instale o pacote wildmidi, onde o mesmo agora estará listado em Plugins nas Configurações do qmmp.

Para instalar no Debian e derivados:

$  sudo apt install wildmidi
Onde também serão instalado automaticamente junto as dependências abaixo caso elas não estejam instaladas ainda que são os pacotes freepats e libwildmidi-config.






segunda-feira, 4 de julho de 2022

Tire shots com scrot facilmente com Zscrot

 Zscrot é um script feito em zenity para tirar screenshot, que faz uso do comando de terminal scrot, sem precisar usar janela de terminal ou configurar teclas de atalho de teclado, podendo tirar shot da tela inteira, da janela ativa, copiar para o clipboard e capturar área com o mouse. Basta acessar o atalho do Zscrot no grupo Acessórios do seu menu de programas.

Para instalar no terminal faça: sudo tar -xvf zscrot.tgz -C /

Download do script Zscrot



sexta-feira, 18 de março de 2022

Conky exibindo até 2,5x mais RAM usada em algumas distros

Devido algumas mudanças interna do conky ele pode exibi até 2,5x mais RAM usada do que o valor real usado pelo sistema, em algumas distros conforme a versão do conky.

Por exemplo no Conky em RAM usada no monitor é exibido 750 Mib enquanto que com o comando free -h a RAM usada é de 300 Mib.

Como corrigi esta diferença de RAM usada ?

A solução para que o conky exiba a mesma quantidade RAM usada do sistema obtida com o comando free -h é não adicionar ou eliminar a linha ${color white}RAM Uso:$color $mem/$memmax - $memperc% e no lugar dela usar estas outras abaixo que exibirá o resultado do comando externo

 free -h

${color white}RAM total:${alignr 110}${exec free -h | grep Mem | cut -c 15-20} 
${color white}RAM usada:${alignr 100}${exec free -h | grep Mem | cut -c 25-35}


Agora você tem o valor correto da memória usada pelo sistema no conky.
Procedimento realizado no conky versão 1.11.6 no Debian 11.


Screenshot de comparação da RAM usada


A janela do conky com fundo preto utiliza a linha interna do conky para monitoramento da memória que é a linha ${color white}RAM Uso:$color $mem/$memmax - $memperc%

Já a janela do conky de fundo azul utiliza o comando externo free -h 

sexta-feira, 4 de fevereiro de 2022

Servidor samba versão recente e protocolo LANMAN1

Numa rede pequena com 4 pcs, todos com Linux (2 desktop, 2 notebook) e 3 celulares com Android, quando eu instalei o Debian 11 no meu desktop pessoal e fui fazer a transferência de arquivos do celular via wifi para o servidor samba do Debian 11 o App Arquivos do Android que utilizo sempre para esta finalidade onde já utilizei o mesmo com diferentes distros e versões que sempre funcionava, agora não conseguia achar o servidor Debian 11 que usa o samba 4.13.13.

Como o celular com Android não conseguia localizar o servidor samba do Debian 11 comecei a fazer uns testes entre
os dispositivos da rede para achar o problema.

Desktop cliente com Lubuntu Xenial com samba 4.3.11 não consegue conectar ao servidor Debian 11, mas conecta no Debian 10.

Notebook cliente com Debian 10 com samba 4.9.5 consegue conectar ao servidor Debian 11, Debian 10 e Lubuntu Xenial.


Notas:
Todos os outros dispositivos da rede também rodam um servidor samba, pois eles tem pastas compartilhadas (exceto celulares).

O servidor Debian 11 acessa os compartilhamentos remotos dos outros pcs normalmente.

Somente o desktop Lubuntu Xenial com samba 4.3.11 e o celular não consegue acessar o servidor samba do Debian 11.


        A solução do problema

No servidor Debian 11 edite o arquivo /etc/samba/smb.conf e na seção global coloque esta linha "server min protocol = LANMAN1" sem as aspas, salve o arquivo é reinicie o serviço do samba.

Pronto agora Lubuntu Xenial e celulares com Android conseguem conectar ao servidor samba do Debian 11.


Notas:
Algumas versões não muito antigas do samba consegue conectar a um servidor samba com versão 4.13.13 sem precisar colocar a linha "server min protocol = LANMAN1" no arquivo /etc/samba/smb.conf do servidor que é o caso do samba versão 4.9.5 usado no notebook com Debian 10.

Procurando saber mais sobre os protocolos, descobrir que no Debian 11 o protocolo LANMAN1 vem desabilitado por padrão na versão do samba 4.13.13 enquanto nas versões antigas do samba que eu utilizo nos outros pcs este protocolo vem habilitado por padrão.

No Ubuntu 20.04 que usa o samba 4.13.14 também vem desabilitado o protocolo LANMAN1 que pelo jeito o padrão agora nas versões recentes do samba e vir desabilitado. 

Para descobrir se o protocolo LANMAN1 está habilitado por padrão basta usar o comando testparm -v | grep proto e caso ele não seja listado, ele está desabilitado por padrão nas configurações do seu samba.

Exemplos:

No micro com Lubuntu Xenial e Notebook com Debian 10, o protocolo LANMAN1 vem habilitado por padrão

$ testparm -v | grep proto

Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[printers]"
Processing section "[partilha]"
Processing section "[Privativo]"
Processing section "[Libre]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

 server max protocol = SMB3
 max protocol = SMB3
 protocol = SMB3
 
 min protocol = LANMAN1 (habilitado por padrão)
 client max protocol = default
 client min protocol = CORE
 client ipc max protocol = default
 client ipc min protocol = default


No micro com Debian 11 o protocolo LANMAN1 vem desabilitado por padrão.

A listagem abaixo é antes de acrescentar a opção "server min protocol = LANMAN1" no arquivo /etc/samba/smb.conf

$ testparm -v | grep proto

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

 client ipc max protocol = default
 client ipc min protocol = default
 client max protocol = default
 client min protocol = SMB2_02
 server max protocol = SMB3
 server min protocol = SMB2_02


Após acrescentar a linha  "server min protocol = LANMAN1" no arquivo /etc/samba/smb.conf

$ testparm -v | grep proto

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Weak crypto is allowed
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

 client ipc max protocol = default
 client ipc min protocol = default
 client max protocol = default
 client min protocol = SMB2_02
 server max protocol = SMB3
 server min protocol = LANMAN1 (este aqui não era listado antes de fazer a alteração do smb.conf,)

 

sexta-feira, 21 de janeiro de 2022

Configurando o user-agent no navegador Epiphany ou Gnome Web

Para criar ou alterar o user-agent para o navegador Epiphany ou Gnome Web, em uma janela de terminal faça os procedimentos abaixos:

$ gsettings set org.gnome.Epiphany.web:/org/gnome/epiphany/web/ user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/88.0"

Notas:
Como alguns sites de bancos eles não aceita navegadores diferentes do Firefox/Google Chrome/Opera/Safari como alternativa ao navegador Edge ou Internet Explorer, é necessário alterar o nome de navegador e a versão para que você possa acessar o conteúdo destes sites.

O final Firefox/88.0 é a versão do Firefox 88.0 que você deseja que o seu navegador seja reconhecido como Firefox de versão 88.0 pelo site.

Este procedimento não funciona em versões mais antigas  Epiphany ou Gnome Web, cujo teste deste procedimento foi feito com o navegador Gnome Web  versão 3.32.1.1 no Debian 10.


Conferindo pelo gsettings 

$ gsettings get org.gnome.Epiphany.web:/org/gnome/epiphany/web/ user-agent
'Mozilla/5.0 (X11; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/88.0

Ok, funcionou, agora vamos testar como ele será reconhecido por um site que detecta o nome do navegador e a versão do mesmo.

Acesse: https://site112.com/qual-o-meu-user-agent

DETALHES DO SEU USER AGENT
Sua "User-Agent" string é:
Mozilla/5.0 (X11; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/88.0

Plataforma: Linux
Browser: Firefox
Versão: 88.0

Seu IP: xxx.xxx.xxx.94

Janela do navegador Gnome Web