Mostrando postagens com marcador debian. Mostrar todas as postagens
Mostrando postagens com marcador debian. Mostrar todas as postagens

sexta-feira, 11 de agosto de 2023

Criando um .deb

 

Meu primeiro .deb



Nessa matéria irei mostrar como criar um .deb básico, a intenção é apenas de mostrar como é feito.

Vamos criar um diretório para o nosso projeto, para isso de o comando abaixo no terminal.

mkdir ~/meu_projeto

Agora iremos criar o diretório replicando o do sistema onde o programa sera instalado, no caso iremos instalar na pasta /opt, de o comando abaixo para criar o diretório.

mkdir ~/meu_projeto/opt

Precisamos criar o diretório DEBIAN para o arquivo de configurações do nosso .deb, ele leva o nome de control, de o comando abaixo para criar o diretório.

mkdir ~/meu_projeto/DEBIAN

Ai estão os diretórios necessários a esse projeto.





Entre no diretório no seu projeto de instalação do deu .deb com o comando abaixo.

cd ~/meu_projeto/opt

Você precisa de um programa que não tenha um .deb, no exemplo iremos usar o Firefox.
Faça o download com o comando abaixo no terminal.

wget https://download-installer.cdn.mozilla.net/pub/firefox/releases/62.0.2/linux-x86_64/pt-BR/firefox-62.0.2.tar.bz2

Descompacte o arquivo com o comando abaixo.

tar -xvjf firefox-62.0.2.tar.bz2

Remova o arquivo que fizemos o download com o comando.

rm -fr firefox-62.0.2.tar.bz2

Note que temos agora o diretório do programa.





Já temos o programa e agora precisamos criar um lançador para ele, note que o programa sera instalado em /opt/firefox, o atalho deve ser criado em /usr/share/applications, portanto devemos criar o diretório do nançador em nosso projeto, para isso de o comando abaixo no terminal.

mkdir -p ~/meu_projeto/usr/share/applications

Para criar o lançador de o comando abaixo no terminal.

nano ~/meu_projeto/usr/share/applications/Meu-Firefox.desktop

Cole as linhas abaixo no nano aberto em seu terminal.


[Desktop Entry]
Name=Meu-Firefox
Comment=Browse the World Wide Web
GenericName=Web Browser
X-GNOME-FullName=Firefox Web Browser
Exec=/opt/firefox/firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/opt/firefox/browser/chrome/icons/default/default128.png
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
StartupNotify=true


OBS: Note em Exec e icon que apontamos para o diretório em que o programa sera instalado, no caso é /opt/firefox/


Salve teclando Ctrl + x tecle s e tecle Enter para fechar o nano.

Ai está o nosso lançador.




Está quase pronto, vamos agora finalizar criando o arquivo /DEBIAN/control, de o comando abaixo no terminal.

nano ~/meu_projeto/DEBIAN/control

Cole as linhas abaixo no nano aberto em seu terminal.

Package: meu-firefox
Source: meu-firefox
Version: 1.0
Architecture: amd64
Maintainer: LOBO
Depends: libc6
Section: contrib/web
Priority: optional
Homepage: https://www.mozilla.org
Description: web browser


OBS: Esse pacote não tem dependências especiais, mas a titulo de vc visualizar o control mais completo adicionei a dependência libc6 que é dependência para todos os pacotes.

Salve teclando Ctrl + x tecle s e tecle Enter para fechar o nano.

Ai está o nosso control.





Para finalizar altere o proprietário do projeto para o root com o comando abaixo.

sudo chown -R root:root ~/meu_projeto


Altere as permissões do projeto com o comando.

sudo chmod 755 -Rf ~/meu_projeto

Finalmente crie o seu primeiro .deb com o comando abaixo.

dpkg-deb -b ~/meu_projeto ~/

O .deb sera criado na sua home.

Ai está o seu .deb.




Testando o seu primeiro .deb, de o comando abaixo no terminal para instalar o seu .deb.

sudo dpkg -i ~/meu-firefox_1.0_amd64.deb

Olha ele ai no seu menu ;)




Ele rodando.




Aqui mostrei o básico do básico da criação de um .deb, agora é com você buscar mais conhecimento na documentação do Debian sobre empacotamento.


OBS: Note que o .deb aceita de tudo dentro dele, nomes é você quem dá, deu pra sacar o perigo de usar .deb de quem você não conhece ? Cuidado.

fonte: https://linuxdicasesuporte.blogspot.com/2018/10/criar-pacote-deb-para-debian-ubuntu-e_2.html

quinta-feira, 20 de julho de 2023

Como instalar mockoon no ubuntu

Passo a passo:

1 - Habilite  o Snapd Storie

sudo apt update

sudo apt install snapd

sudo snap install core


2 - Instale o Mockoon.

sudo snap install mockoon

quinta-feira, 13 de setembro de 2012

Shell Script parte 3: Funçoes

Introdução

O principal objetivo deste post é explicar de maneira simples e rapida como se faz utilização de funções em shell script.(Receomendo a leitura de parte I, parte II)
Funções

Assim como em qualquer "linguagem de programação" o shell script proporciona a utilização de funções.

Sintaxe:


nome_funcao ()
{
funcao_2;;
}

nome_funcao_2 ()
{
acao
}

nome_funcao


Onde:

  • nome_funcao – Funcão criada.
  • acao – Ação a ser tomada.
  • nome_funcao_2;; - Chamada da função nome_funcao_2.
  • nome_funcao – Função que dará inico ao shell script.


Será criado um shell script para no qual é possível escolher se será feito uma tabuada do 2 ou do 3 sendo que cada uma é feita por uma função.


#!/bin/bash

principal()

{

escolha=-1

while [ $escolha -ne 0 ];

do

echo "Escolha uma opção"

echo "1- Fazer tabuada do 2";

echo "2- Fazer tabuada do 3";

echo "0- Sair";

echo -n ":";

read escolha;

if [ "$escolha" -eq "1" ];

then

gerarTabuada2

elif [ "$escolha" -eq "2" ];

then

gerarTabuada3

fi

done

}

gerarTabuada3()

{

for i in {1..10}; do

echo "$i*3="$i*3

done

}

gerarTabuada2()

{

for i in {1..10}; do

echo "$i*2="$i*2

done

}

principal


Abaixo é possível ver a execução do shell script acima.




Passando parametros para um função

Uma ótima ideia é passar paramtros para uma função isso faz com que a mesma não se torne estatica.

Sintaxe:

nome_funcao ()
{
funcao_2 pametro1 parametro2 parametroN;;
}

nome_funcao_2 ()
{
 $1  #Utilização do parametro1
 $2  #Utilização do parametro2
 $N #Utilização do parametroN
acao
}

nome_funcao


Onde:

  • nome_funcao – Funcão criada.

    acao – Ação a ser tomada
  • parametro1/2/N - Parametros a serem passados para função. 
  • nome_funcao_2;; - Chamada da função nome_funcao_2.
  • nome_funcao – Função que dará inico ao shell script.


Será criado um shell script para no qual é possível escolher com qual número será feito uma tabuada.

Exemplo:

#!/bin/bash

principal()

{

escolha=-1

while [ $escolha -ne 0 ];

do

echo "Escolha uma opção"

echo "Informer um valor para fazer um tabuada(0=sair): ";


echo -n ":";

read escolha;

gerarTabuada $escolha;

done

}

gerarTabuada()

{

for i in {1..10}; do

echo "$i*$1="$i*$1

done

}

principal












Abaixo é possível ver a execução do shell acima.




Retornando valores de uma função

Sintaxe:

nome_funcao ()
{
retorno =$(funcao_2 pametro1 parametro2 parametroN)
}

nome_funcao_2 ()
{
 $1  #Utilização do parametro1
 $2  #Utilização do parametro2
 $N #Utilização do parametroN
acao

echo $retorno
}

nome_funcao


Onde:

  • nome_funcao – Funcão criada.

    acao – Ação a ser tomada.

    $retorno - Retorno da função
  • parametro1/2/N - Parametros a serem passados para função. 
  • nome_funcao_2;; - Chamada da função nome_funcao_2.
  • nome_funcao – Função que dará inico ao shell script.


Será criado um shell script para no qual é passado um nome para função e será retonado uma frase com o mesmo.

Exemplo:


#!/bin/bash

principal()

{
 echo "Qual seu nome ? ";
 read nome;

 frase=$(darBomdia $nome)

 echo $frase;
}

darBomdia()
{
 bomdia="Bom dia $1".
 echo $bomdia;

}

principal

exit

Abaixo é possível ver o funcionamento do shell script abaixo:


Shell script Parte 2: Laços e tomada de decisões

 
Introdução

 O objetivo deste artigo é explicar como se faz utilização das estruturas de tomada de decisão e laços condionais em shell script.(Para entender melhor o conteúdo deste post recomendo ler o post parte I)


Comando if

O comando if é um comando para tomada de decisão. O mesmo realiza um determinada ação quando um requisito é atendido.

Sintaxe:

if [ condição ]; then

acao

fi


Onde:

  • condicao - Condição para continuar no laço
  • acao - Comandos ou comportamento que será executado dentro do laço.


Será criado um exemplo no qual o usuario digitará um valor na tela e só sera exibida uma mensagem na tela caso esse valor seja igual ao numero 3.

#!/bin/bash

echo -n "Digite um algo: "

read valor_digitado


if [ "$valor_digitado" -eq "3" ];
then

echo Você digitou o numero 3

fi

exit

Abaixo é possível ver o resultado da execução do shell script.





Comando if/else

O comando if/else é um comando para tomada de decisão. O if será executando se uma determinada ação quando um requisito é atendido caso contratrio será utilizado o o qu estiver no bloco do comando else.

Sintaxe:

if [ condição ]; then

acao

fi


Onde:

  • condicao - Condição para continuar no laço
  • acao - Comandos ou comportamento que será executado dentro do laço.

Será criado um exemplo no qual o usuario digitará um valor na tela e só sera exibida uma mensagem na tela caso esse valor seja igual ao numero 3.


#!/bin/bash

echo -n "Digite um algo: "

read valor_digitado

if [ “$valor_digitado” -eq “3” ];

then

echo “Você digitou o numero 3”

else

echo "Você digitou o caracter $valor_digitado";

fi

exit

Abaixo é possível ver o resultado da execução do shell script.




Comando elif

O comando elif é um comando para tomada de decisão. O comando elfi depende do camando if o mesmo funcinona de maneira similar ao else/if porém o elfi também tem uma condição, que será executada caso um condição seja tendida.

Sintaxe

if [ condição ]; then

acao

elif [ condicao ]; then

acao

elif [ condicao ]; then

acao

fi


Onde:

  • condicao - Condição para continuar no laço
  • acao - Comandos ou comportamento que será executado dentro do laço.

Será criado um exemplo no qual o usuario digitará um valor na tela e só sera exibida uma mensagem na tela caso esse valor seja igual ao numero 3,4 ou 5.

#!/bin/bash

echo -n "Digite um algo: "

read valor_digitado

if [ “$valor_digitado” -eq “3” ];

then
echo "Você digitou o numero 3"

elif [ “$valor_digitado” -eq “4” ]; then
echo "Você digitou o numero 4"

elif [ “$valor_digitado” -eq “5” ]; then
echo "Você digitou o numero 5"

else
echo “Você não digitou nenhum número aceito”

fi


Abaixo é possível ver o resultado da execução do shell script.



Comando case

O camando case como o if é um comando para tomada de decisão.

Sintaxe:

case variavel in

opcao1)
acao1
;;
opcao2)
acao2
;;
opacaoN)
acaoN
;;

esac

Onde:

  • variavel – Variável que será verificada.
  • opcao1/2/N – Possíveis estados da variavel.
  • acao1/2/N – Ação a ser tomada quando a opção do mesmo for escolhida.


Será criado um script utilizando case que exibi uma mensagem quando é digitado a teclada 2 e outra quando é apertada a tecla 3.


#!/bin/bash

echo "Digite 1 ou 2"

read opcao;

case "$opcao" in

"1")

echo "Você digitou 1";

;;

"2")

echo "Você digitou 2";

esac

exit




Laços condicionais

Laço for

O laço for é uma ação repetitivamente até que uma condição seja atendida.

Sintaxe:

for contador in limite_contador;

do

acao

done

Onde:

  • contador - Variavel que será utilizada no laço for.
  • limite_contador - Limite que o contador poderá atingir. Quando o limite for atingido o laço terminará.
  • ação - Comandos ou comportamento que será executado dentro do laço.


Para exempli o laço será criado um shellscript simples que exibi na tela uma messagem 4 vezes.

#!/bin/bash

limite_contador=4

for contador in {1..4};

do

echo "Messagem exibida $contador vez".

sleep 1;

done

Abaixo é possível ver o resultado da execução do shell script.




Laço while

O while é um tipo de laço que existe em varias linguagens de programação. O mesmo executa uma ação enquanto um requisito não é atendido.

Sintaxe:

while [ condicao ]

do
  acao

done


Onde:

  • condicao - Condição para continuar no laço
  • ação - Comandos ou comportamento que será executado dentro do laço.


Agora será criado um shellscript simples que exibi na tela uma messagem 4 vezes.


#!/bin/bash

contador=1

while [ $contador -ne 4 ];

do

echo "Messagem exibida $contador vez".

sleep 1;

((contador=$contador+1))

done


Abaixo é possível ver o resultado da execução do shell script.





segunda-feira, 23 de julho de 2012

Converter arquivos .rpm para .deb




Um maneira simples de instalar arquivo .rpm em alguma distribuição baseada no debian é convertendo o arquivo .rpm para o tipo .deb.
Para converter o arquivo .rpm para um .deb o processo é bem simples, basta seguir alguns passos.

1º Instale o programa alien – O programa alien converte o arquivo .rpm para o tipo .deb

Abra o terminal e execute o seguinte comando:

    sudo apt-get install alien

Abaixo é possível visualizar o processo de instalação:



Abaixo é possível o terminal após a instalação do alien:


Agora iremos até o diretório onde está localizado o arquivo .rpm, neste exemplo o arquivo usaremos o arquivo perl-Alien-wxWidgets-0.37-1.el3.rf.x86_64.rpm.

Abaixo é possível visualizar o arquivo no diretório.



Para iniciar a conversão do arquivo e necessário seguir a seguinte sintaxe:

  sudo alien
 
Onde:

  • - Arquivo a ser convertido.
  • - Tipo de arquivo que se deve converter o arquivo_ser_convertido as opções são:
    • --to-deb - Para converter o arquivo_ser_convertido para .deb
    • --to-rpm - Para converter o arquivo_ser_convertido para .rpm
    • --to-tgz - Para converter o arquivo_ser_convertido para .tgz

Exemplo:

  sudo alien --to-deb perl-Alien-wxWidgets-0.37-1.el3.rf.x86_64.rpm
 

Abaixo é possível visualizar o processo de conversão.


Abaixo é possível visualizar o arquivo .deb gerado.


Após a conversão a instalação do arquivo .deb é bem simples, basta seguir a sintaxe:


  sudo dpkg --install

Onde:

  - Arquivo a ser instalado.

Exemplo:
  
  sudo dpkg --install perl-alien-wxwidgets_0.37-2_amd64.deb


domingo, 26 de fevereiro de 2012

Shell Script - Para iniciantes

Introdução

Uma maneira de facilitar os serviços repetitivos que é feito sempre por determinados períodos de tempo no Linux é criar Shell Scripts.

De grosso modo Shell Script nada mais é que uma sequência de comandos do próprio Linux que são executados.

1. Criando um shell script

Para criar um shell script é necessário seguir alguns passos:


1.1. Crie um arquivo

No terminal ou modo gráfico crie um arquivo que possa ser editado para que se torne o primeiro shell script a ser criado.

Exemplo:

touch shel1.sh


Onde:

touch - Comando utilizado para criar um arquivo vazio.


1.2. Dê direito de execução para o arquivo criado


Para que seja possível executar o um shell script é necessário atribuir ao mesmo direito de execução, para isso é necessário usar o comando chmod.

Exemplo:

chmod a+x shel1.sh


Neste exemplo nosso arquivo poderá ser executado por qualquer usuário do sistema. Antes de atribuir o direito de execução o arquivo era visto pelo terminal da cor padrão (neste caso preto), com o direito de execução agora passou a ser verde.


Abaixo é possivel ver a imagem após execução do chmod.


1.3. Abra o arquivo recém criado para edita-lo


Neste exemplo será utilizado o editor de teXto vi que pode ser utilizado no terminal, mas também pode ser utilizado qualquer editor grafico como gedit para altera o arquivo recém criado.



Exemplo:

vi shel1.sh





Na primeira linha de um shell scrit é necessário colocar uma linha de código que diz qual shell será utilizado (ksh, sh, bash), a linha pode ser vista abaixo:


#!/bin/bash



Código visto no vi.



img31.png



Código visto no gedit





Esta linha especifica qual shell será responsável por executar o shell scritp que será criado, neste exemplo o shell responsavel será o bash que está localizado na pasta /bin.



Apos a linha que contém o código acima é possível inserir os comandos desejados.

Neste exemplo vamos fazer um shell que abre a baia do leitor de cd e após 3 segundos a mesma será fechada. O código pode ser visto abaixo:


#!/bin/bash

echo "Abrindo gaveta..."

eject

sleep 2

echo "A gaveta será fechada..."

sleep 1

eject -t


 

Onde:

echo - Comando responsável por exibir uma mensagem na tela.

eject - Comando responsável por fazer a baia do leitor de cd ejectar.

eject -t - Comando reponsável por fazer a baia do leito de cd voltar para seu estado inicial.

sleep - Comando que pausa um o terminal por um tempo em segundos pré determinado.

1.3.1 Inserão de comentários



Para inserir um comentário em códigos de shell script basta inserir o #(cerquilha ou jogo da velha) na frente da linha que você deseja comentar, por exemplo:



#!/bin/bash

#Eu sou um comentário.

echo “Existe um comentário neste shell script”



1.4. Executando o arquivo.



Para executar o shell script recém criado basta seguir os seguintes exemplos:


Caso você esteja no mesmo diretório do arquivo basta executa-lo da seguinte maneira:

./shel1.sh



Caso o mesmo esteja em diretório diferente do que você se localiza, execute da seguinte maneira:

Sintaxe:

/.../diretorio/shel1.sh

Onde :

/.../diretorio - diretório no qual o shell está localizado.


Exemplo:

/tmp/maguscode/shel1.sh



 

2. Utilizando Váriaveis

Criar uma variavel em shell script é bem simples basta seguir a sintaxe abaixo:


Sintaxe:

nome_variável=VALOR


Onde:

nome_variavel – Nome da variável.

VALOR – Valor atribuido a variável criada.

Exemplos:

cor_casa=verde

numero=32


Neste exemplo serão criadas as variáveis “cor_casa” que tem como atributo o valor “verde”, também é criada a variável “numero” que tem como atributo o valor 32.

Para se utilizar a variável basta utilizar o $ (Sifrão) na frente do nome da variável, como pode ser visto no código do shell script baixo.

Exemplo:

#!/bin/bash
cor_casa=VERDE
echo “A cor da casa é $cor_casa”

A saída será:

A cor da casa é VERDE


2.1 Utilizando saída de comando como valor de variável

Caso se deseje manipular a saída de um determinado comando como valor para uma variável basta escolher uma das seguintes sintaxes:

Sintaxe:

nome_variavel=$(comando)

ou

nome_variavel=`comando`

Onde:

nome_variavel – Nome da variavel que receberá a saída do comando.

comando – Comando a ser executado.


Exemplo:

#!/bin/bash
total_linhas=$(ls | wc -l)


echo “Existe $total_linhas neste diretório.”

Esse script shell exibi na tela a quantidade de arquivos existe em um determinado diretório.


Saída do script executado.