Blog Dicas
Apareceu CTRL-D no linux

O Linux é um sistema muito estável, porem as vezes quedas de energia fazem surgir a seguinte mensagem pressione CTRL-D.

Muitos erros podem gerar isso:

  • Serviço com problemas
  • Disco ruim
  • Scripts de inicialização

De forma geral, um usuário inadvertido pressiona CTRL-D e a maquina reboota mostrando o mesmo erro.

Para corrigir este problema é necessário realizar o seguinte procedimento:

1) Entrar a senha do root.

2) Digitar na console:

fsck /dev/sda1

fsck /dev/sda1 ou o volume que esta mostrando com erros.

Para finalizar o processo digite:

exit

Desta forma, a maquina irá dar reboot.

Outros problemas podem gerar este tipo de ocorrência. Porem o desligamento inapropriado, é o mais comum dos problemas

R
Instalando R no raspberry PI

Ensinarei nesse tutorial o procedimento de instalação do R para Raspberry PI.

O R, é uma linguagem de programação estatística, orientada a objeto. Sendo uma linguagem aberta (Open Source) permite a criação de gráficos e analise de dados.

Estarei apresentando o processo de instalação no Raspberry PI e tambem em outras distribuições linux.

Instalação Tradicional

Para instalar o R é bastante simples:

Entre em uma máquina raspberry pi, usando um terminal.

sudo apt-get install r-base r-base-core r-base-dev

Para mostrar que funciona em outras distros realizei também a instalação no ubuntu 21, conforme segue:

Instalação em ubuntu 21, em uma VM

Agora iremos verificar se o mesmo esta rodando, primeiro buscaremos na lista de nossos aplicativos.

R instalado com sucesso

Pronto, o R esta rodando no terminal conforme apresentado na figura abaixo:

Interface console do R

Instalação dos fontes

A instalação do R baseado nos fonte é necessário primeiramente baixar os mesmos.

GIT

O git do repositório fica neste link.

https://github.com/rstudio/rstudio

Iremos instalar em meu servidor raspberry.

Para tanto irei baixar ele através do comando:

git clone https://github.com/rstudio/rstudio

baixa dos fontes

Entre na pasta do projeto rstudio, que foi criado.

Em seguida crie a pasta build

mkdir build

cd build

Agora será necessário, preparar a compilação

cmake .. -DRSTUDIO_TARGET=Server -DCMAKE_BUILD_TYPE=Release

cmake .. -DRSTUDIO_TARGET=Desktop -DRSTUDIO_PACKAGE_BUILD=1

Depois, basta dar

make install

Neovim

Permite editar o R

apt install neovim

Blog
Repositórios no linux

O Linux possui um processo bem complexo de instalação de pacotes.

Básicamente os repositórios são alocados em web services, e baixados quando necessários.

O endereço destes repositórios fica na pasta:

/etc/apt/sources.list.d

Entendendo o sources.list.d

Ao criar um repositório é comum criarmos um arquivo contendo a seguinte sintaxe:

[tipo] [repositorio] [distribuicao] [[componente1] [componente2] … [componenteN]]

TIPO

A primeira referencia, indica o tipo do arquivo, podendo ser de duas formas.

  • deb – responsável pela instalação de componentes
  • deb-src – Responsável pela instalação de fontes dos pacotes.

Repositório

O repositório é o endereço do url que será indicado, para ser pesquisado pelo instalador. Chamamos isso de espelho de repositório.

Existe uma lista mundial:

https://www.debian.org/mirror/list

Distribuição

A distribuição é uma lista de entrega, que tem um nome, ela pode apresentar em 4 estados, ou condições de uso.

  • oldstable – distribuições antigas e fora de uso.
  • stable – distribuições atualmente em uso
  • testing – distribuições de validação
  • unstable – Betas sem garantias.

Para entender mais sobre esses pacotes, o ideal é ler o wiki que foi baseado este artigo:

https://wiki.debian.org/SourcesList

IA pós graduação
Comandos do Jupyter
AtalhoO que faz?
SHIFT + ENTERFinaliza criando nova célula
%%htmlcria um espaço p execução de html page
%%jscria um espaco java script
%%writefile <nomefile>Cria um arquivo que será salvo
CTRL+ENTERExecuta código
CTRL+DDeleta linha
CTRL + /Comenta linha
# Titulo 1
##Titulo 2
###Titulo 3
####Titulo 4
* item de lista
[texto]: urlhiperlink
![texto]:urlimagem
“`javascript bloco “`bloco de javascript exemplo de código
“`python bloco “` Bloco de python exemplo de código
|Marcação de tabela | elemento | elemento2| etc
>Comentário
<a href=””/></a>inclui html direto no projeto
IA Python Sem categoria
Instalando o jupyter notebook no raspberry pi

Siga os passos abaixo:

sudo su -
apt-get update
apt-get install python3-matplotlib
apt-get install python3-scipy
apt-get install python3-pip3
pip3 install --upgrade pip
reboot
sudo pip3 install jupyter

Outro processo que pode ser feito é a forma direta, através do comando:

sudo su

apt-get install jupyter

Porem recomendo a primeira maneira, por ser na minha opinião a mais correta.

Referência:
https://www.instructables.com/Jupyter-Notebook-on-Raspberry-Pi/

Instalando o NBCONVERT

Para instalar os módulos de documentação, será necessario rodar os seguintes programas:

pip install nbconvert

Outra maneira de realizar esse procedimento é:

conda install nbconvert

Segue o exemplo do programa sendo rodado:

instalando o nbconvert

Referencias deste artigo:

https://nbconvert.readthedocs.io/en/4.2.0/install.html

Instalando o PANDOC

O pandoc é necessário para converter markdown para formatos como html, o nbconvert usa o pandoc.

Para sua instalação:

apt-get install pandoc

Exemplo de instalação realizada:

Sem categoria
Pós graduação

Hoje comecei, minha pós graduação na uninove, no curso de Aprendizado de Máquina.

Minha primeira disciplina será python. Tivemos uma introdução sobre o curso.

Foi muito frutífera, gostei muito da aula do professor Dr. Jose Eduardo Storopoli.

Tenho muitas expectativas quanto ao curso.

Com quase 50 anos, eu estou voltando a estudar, quero aprender mais, e acredito ser uma ótima oportunidade de reciclar conceitos.

Acredito que aprendizado de máquina seja realmente o futuro, e que estamos ainda engatinhando nesse novo mundo de possibilidades.

Que venha o futuro.

Sem categoria
Criando VM com VirtualBox

VM é uma sigla para virtualbox, ou máquina virtual, em português.

Uma vm nada mais é que a emulação de uma maquina (computador).

Com a VM podemos instalar maquinas de teste, para simular situações ou ambientes que queremos testar.

Baixar o Virtualbox

O virtualbox pode ser baixado, através do seguinte site:

https://www.virtualbox.org/wiki/Downloads

No site é possível escolher a plataforma que deseja utilizar para rodar a vm, no meu caso, estarei instalando em uma maquina windows.

Porem a VM uma vez criada pode ser utilizada em qualquer plataforma, pois os arquivos da VM, independe do sistema operacional que a sustenta.

Instalar uma nova VM

Após instalado o virtualbox é necessário montar a máquina virtual, para tanto, criaremos uma máquina Linux.

Para isso, siga os passos a seguir:

Vamos criar uma nova VM, clicando no botão novo, conforme demonstrado acima.

Ao clicar, no botão, surge uma janela, conforme descrito abaixo:

Preencha um nome que diz respeito ao uso desta vm, no campo nome.

No campo pasta, indique a pasta que será incluída as informações da VM, lembrando que o HD da vm pode ser incluída em pasta separada.

No campo Tipo, contem a informação do sistema operacional que voce irá armazenar, preocupe-se com o seu tipo e na versão e revisão e principalmente arquitetura (32/64bits) deste.

Por fim, click no botão Próximo.

Agora iremos indicar o tamanho da memória RAM, para tanto:

Arraste a barra, até o tamanho da memória que deseja, ou digite a mesma, na caixa ao lado.

Por fim, click no botão Proximo.

Criação de Disco virtual

Iremos criar agora o disco virtual, que irá armazenar as informações da VM.

Selecione a opção Criar um novo disco rígido virtual agora, conforme figura abaixo:

Em seguida, click no botão criar.

Agora iremos selecionar o tipo do disco rígido, na imagem abaixo, vemos 3 tipos possíveis.

No nosso caso, selecionamento VDI, e clicamos no botão Próximo.

Agora, iremos alocar o espaço da VM, conforme figura abaixo:

Selecionamos o item dinamicamente alocado, pois queremos que o tamanho possa ser alocado a medida da necessidade e não fixo como na modalidade seguinte.

Selecionamos o botão Próximo.

Agora iremos, indicar o local do armazenamento do disco rígido.

Na caixa de texto digitaremos seu local+nome, também alocando seu tamanho, rolando até o valor desejado. No nosso caso colocaremos 65Gb.

Por fim, clicamos em Criar, para gravar as alterações.

Por conclusão será criada uma VM na aba lateral com o nome apresentado durante o treinamento.

Instalando o Sistema Operacional

Para instalação do sistema operacional, é necessário baixar uma imagem do linux, no nosso caso usaremos a ubuntu 20.04, conforme apontado na imagem:

Em seguida, na vm, click na vm que deseja configurar, e em seguida no botão configurações.

Conforme figura acima.

Agora, iremos indicar a imagem, para isso, selecione o grupo Armazenamento.

Em seguida selecione Em controladora IDE, na imagem do CD (Vazio).

Agora por fim, em atributos, click no botão do cd, e indique a imagem, anteriormente indicada.

Finalizando por Abrir.

Pronto sua VM esta pronta para ser instalada.

Rodando a VM

Agora para concluir, basta iniciar a mesma, para tanto, selecione a vm desejada, e click no botão Iniciar

Conforme figura acima.

Blog
Copiando arquivos via SSH

Estarei explicando como copiar arquivo via SSH.

FILEZILLA

O filezilla é um software de transferência de arquivos, voce pode baixar o cliente em:

https://filezilla-project.org/download.php?platform=win64

Para acessar via ssh, use as seguintes configurações:

Click em Arquivo > Gerenciador de sites, conforme figura abaixo:

Parametros de configuração no Filezilla

Selecione o protocolo SFTP.

Digite o Host desejado

Digite o usuário desejado.

Digite a senha.

Click em Conectar.

Bitvise

O bitvise é outro cliente de ssh, nele é possível baixar ou trocar dados, mas tambem interagir com o terminal.

O processo é o mesmo do Filezilla, ele pode ser baixado em:

https://www.bitvise.com/

Para conectar digite os dados conforme a imagem abaixo:

Em host selecione o seu host

Depois escolha o usuário, e a senha

Click em Log in, para conectar.

Sem categoria
Treinamento na Faixa

É isso mesmo, estou montando um treinamento na faixa para desenvolvedores Delphi.

O treinamento é voltado a programadores Delphi que tenham interesse em aprender as novidades sobre o uso de lazarus.

Assuntos abordados neste treinamento:

  • Instalação do Lazarus no Linux
  • Instalação Lazarus para compilação cruzada
  • Instalação no Windows
  • Laboratório técnico sobre instalação
  • Criando um programa de Exemplo
  • Criando Instalador no Linux
  • Conectando em Banco de Dados no Linux
  • Trabalhando ACBR no Linux
  • Trabalhando com Serial
  • Trabalhando com Socket
  • Integração Lazarus/C
  • Integração Lazarus/Python
  • Integração Lazarus/Raspberry PI
  • Integração Lazarus/Arduino

Não estarei abordando aspectos da base de programação, pois o intuito deste curso é aprimoramento apenas.

O Curso será apresentado em treinamentos semanais, onde a cada nova semana, entregarei uma nova aula.

Para participar deste treinamento, é necessário enviar um email para marcelomaurinmartins@gmail.com com o título do email: treinamento lazarus.

Serão aceitos apenas emails até o dia 20/09/2021.

O treinamento será ministrado em plataforma digital, da maurinsoft.com para EAD.

Blog C/C++
Trabalhando com arquivos em Linux com C

Neste artigo, irei descrever como trabalhar com arquivos em C no linux.

Segue o exemplo do Makefile do projeto:


all: compile

compile:
        gcc files.c -o files

Excluindo arquivos

Em programação, é comum manipularmos arquivos de diversas formas. Uma boa prática é sempre a limpeza da máquina, para evitar estouro de memoria de disco.

Para isso usaremos o comando abaixo:

int unlink(const char *pathname);

Para demonstrar isso, iremos apresentar e comentar um programa (files.c).

#include <unistd.h>
#include <stdio.h>



int ApagaArquivo(char *arquivo){
        return unlink(arquivo);
}

void main(void){
        char arquivo[50];
        sprintf(arquivo,"./teste.txt");
        if (ApagaArquivo(arquivo)==0){
                printf("Arquivo apagado\n");
        }
}

Inicialmente iremos utilizar a lib unistd.h do linux, conforme apresentado a cima.

A função ApagaArquivo, possui um unico comando, que é o unlink, que possui a seguinte sintaxe:

int unlink(const char *pathname);

O parâmetro pathname, é o nome do arquivo com seu respectivo caminho.

Link de arquivo

O Comando link cria uma referencia de um arquivo, com outro nome ou em outro local.

Para realizar isso usa-se o comando link.

int link( const char *oldpath, const char *newpath);

No exemplo abaixo, podemos ver a modificação do nosso exemplo files.c:

#include <unistd.h>
#include <stdio.h>



int ApagaArquivo(char *arquivo){
        return unlink(arquivo);
}

int Linkando(char *origem, char *arquivo){
        return link(origem,arquivo);
}

void main(void){
        char arquivo[50];
        sprintf(arquivo,"./teste.txt");
        if(ApagaArquivo(arquivo)==0){
                printf("Arquivo apagado\n");
        }
        char origem[50];
        sprintf(origem,"./teste.old");
        if(Linkando(origem,arquivo)==0){
                printf("Arquivo linkado!\n");
        }
}

A função Linkando, retrata a funcionalidade em si, nela temos dois parametros:

  • origem
  • arquivo

No origem, temos o arquivo que gerará um link (referência). Percebemos que indicamos o arquivo teste.old. Em seguida temos o arquivo, que é de fato o que será criado.

Podemos ver aqui, como foi montado nosso projeto.

Agora ao rodar nosso programa temos a seguinte diferença:

Percebam que o arquivo teste.old e teste.txt tem o mesmo tamanho, para ter certeza que é apenas um link, vamos mudar o tamanho do teste.old, e verificar se o teste.txt tambem modifica.

Apos a mudança de tamanho do arquivo original, verificamos que o seu link também modifica.

Em breve publicarei outros comandos relacionados a manipulação de arquivos no linux, para que eu possa continuar tralhando, envie-nos seus feedbacks sobre os artigos.

Mande-nos um email para marcelomaurinmartins@gmail.com passando o que deseja que eu escreva.

Vida longa e prospera a todos!

pt_BRPortuguese