Criando alias no Linux

Alias são “apelidos” que podemos dar a um comando, que geralmente é grande e queremos evitar de digitar toda vez. No meu caso é cd /var/www/html.

Para saber quais alias estão ativos, use o comando: 

alias

Para criar um alias novo:

alias <apelido>=”<comando a ser executado>”

Exemplo usando o meu caso:

alias @=”cd /var/www/html”  OU  alias www=”cd /var/www/html”

Ao digitar @ ou www, e pressionar Enter no terminal, o comando cd /var/www/html será executado.

Para excluir um aliás:

unalias <nome do alias>

Exemplo: 

unalias www

Para deixar persistente o alias no seu usuário do S.O, crie o arquivo /home/seu-user/.bash_aliases e insira no arquivo os alias criados.

Exemplo de arquivo .bash_aliases:

alias @="cd /var/www/html"
alias ..="cd ../"

Referências: 

Docker: Comandos basicos

O processo de instalação no Ubuntu e derivados você pode encontrar aqui e para Windows aqui.

Sintaxe do comando Docker: 

usuario@host# docker [OPTIONS] COMMAND [ARG...]

O docker é uma CLI (comand-line interface).

usuario@host# docker --version
Docker version 19.03.5, build 633a0ea838

O –version é uma opção. Para ver outras opções execute o comando man docker

usuario@host# docker run hello-world

O run é um comando do docker. Ao executar esse comando, caso a imagem hello-world não exista na sua máquina, o docker solicita ao docker hub e baixa a imagem

Listar os containers em execução

docker ps

Listar todos os containers da máquina

docker ps -a

Na saída do comando, cada coluna tem seu significado:
IMAGE -> imagem que esse container utilizou 
COMMAND -> O comando que foi executado
PORTS -> Se o container estiver respondendo em uma porta, aparecerá aqui.
NAMES -> Se não for dado um nome ao container o docker dará um nome a ele.

Listar as imagens da minha máquina

docker images

Na saída do comando, cada coluna tem seu significado:
REPOSITORY -> Nome da imagem
TAG -> versão da imagem

Criar um container com interatividade, terminal e dando um nome

docker run -ti --name [nome] [nome-da-imagem] /bin/bash

Exemplo: docker run -ti –name desenvolvimento ubuntu /bin/bash

O /bin/bash é um comando que eu posso executar ao rodar o container.

O –name [nome] é um nome que você pode dar para o container.

Criar e executar um container em background (demon)

docker run -d [imagem]

Criar um container com limitação de memória

docker run -ti --memory 512m --name teste ubuntu 

Criar um container a partir de uma versão específica de imagem

docker run [nome-da-imagem]:[versao]
Exemplo: docker run centos:7

Finalizar o container por dentro

CTRL+D

Esse atalho finaliza o  processo principal do container e por conseguinte encerra o finaliza.

Sair do container sem finalizar

CTRL+P+Q

Entrar em um container já em execução

docker attach [CONTAINER ID | NOME-CONTAINER]

Dar um STOP no container

docker stop [CONTAINER ID | NOME-CONTAINER]

Dar um START em um container ‘stopado’

docker start [CONTAINER ID | NOME-CONTAINER]

Dar um PAUSE no container

docker pause [CONTAINER ID | NOME-CONTAINER]

Despausar um container

docker unpouse  [CONTAINER ID | NOME-CONTAINER]

Saber o consumo de recursos do container

docker stats  [CONTAINER ID | NOME-CONTAINER]

Saber o consumo dos processos rodando no container

docker top [CONTAINER ID | NOME-CONTAINER]

Listar os logs do container

docker logs [CONTAINER ID | NOME-CONTAINER]

Remover um container

docker rm [CONTAINER ID | NOME-CONTAINER]

Se o container estiver em execução você precisa acrescentar o parametro -f:

docker rm -f [CONTAINER ID | NOME-CONTAINER]

Saber todas as informações sobre um container

docker inspect [CONTAINER ID | NOME-CONTAINER]

Criar um container passando um volume

docker run -ti -v /volume [nome-da-imagem] [comando]

Descobrir onde está o diretório no HOST-DOCKER que foi criado o volume

docker inspect -f {{.Mounts}} [CONTAINER ID | NOME-CONTAINER]

Criar um container mapeando um diretório local para um volume dentro do container

docker run -ti -v /diretorio-no-host-docker:/volume [nome-da-imagem] [comando]

Referências

Descomplicando o docker v1 (Linux Tips)

Docker: O Resumão

O Docker foi desenvolvido para S.Os que usam o kernal Linux. No ambiente Linux é possível usar Docker para Desenvolvimento e Produção. Recentemente foi disponibilizado a versão docker para Windows e esta só pode ser usada para Desenvolvimento.

Container 

É um binário/arquivo/cápsula que encapsula todo o ambiente necessário para sua aplicação funcionar. O ambiente e sua aplicação serão virtualizados na sua máquina física. 

É errado afirmar que um container é uma VM. Uma VM obrigatoriamente terá um S.O(e outros recursos) virtualizados em um software (KMV,VMWare, Virtualbox). Já o container usa os recursos da própria máquina onde está sendo executado. Ele não virtualiza um S.O, ele usa o S.O da máquina hospedeira onde o Docker está instalado  e através de alguns recursos disponibilizados pelo hospedeiro é criado toda a estrutura interna do container.

A diferença entre Imagem e Container é que uma imagem é um container parado. Quando essa imagem é executada ela se transforma em um Container. Análogo a uma imagem ISO de um DVD.

Chinmay Shah – Article Why you should care about Docker?

Storage Drives

São os caras responsáveis por gerenciar leitura/escrita dos dados no container.

AUFS

Esse foi o primeiro SD (Storage Driver) usado pelo Docker. Ele trabalha com o esquema de camadas:

Toda vez que é instalado um novo software ou adicionado arquivos ao container é criado uma nova camada(imagem) como se fosse formando uma pilha de camadas. É nesse momento que entra o conceito de Copy-on-Write.

Todas as camadas subjacentes são read-only, somente a camada superior é read/write, essa camada também é chamada de Camada Container.

Digamos que você vai editar o arquivo /etc/network/interfaces, esse arquivo está na camada image 1.0 (que é read-only). No momento de salvar a edição esse arquivo é copiado para a primeira camada da pilha(que é read/write), onde é salvo uma cópia dele. Na próximas vezes que você for usar a configuração feita nesse arquivo, o docker vai chamar o da primeira camada da pilha. Isso é o Copy-on-write !

Referências:

Configuração de resolução em um segundo monitor

Cenário de aplicação do exemplo

Um notebook com Linux Mint 19, usando um segundo monitor Samsung SyncMaster 933.

Problema

Ao conectar um segundo monitor ao notebook,  a resolução máxima suportada é 1024×768 60.00Hz.

Solução

1- execute o comando xrandr e procure pelo monitor auxiliar. A saída será parecida com essa:

VGA-1 connected 1368x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00  
   800x600       60.32    56.25  
   848x480       60.00  

No meu caso o monitor é o VGA-1.

2- Criando um novo perfil para o segundo monitor:

xrandr --newmode "1366x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync

Eu sei que o meu monitor suporta a resolução de 1366×768 a 60Hz, se você não souber o seu leia esse post na parte que fala de cvt.

3- Atribuindo o novo perfil:

xrandr --addmode VGA-1 1366x768_60.00

4- Ativando

xrandr --output VGA-1 --mode 1366x768_60.00

Nesse ponto você também pode ativar pela interface gráfica do S.O. Se o monitor em questão for um que você frequentemente usa, toda vez que ligar o PC terá que executar os comandos acima. Para automatizar esse processo você pode no final do arquivo /home/SEU-USER/.profile adicionar o scritp abaixo:

###### CONFIGURAÇÃO DE MONITOR AUXILIAR ######

# Se você usa notebook com um segundo monitor, a verificação abaixo junto com o IF do final é necessário para evitar um  erro caso o notebook seja ligado sem o monitor estar conectado.

##verifico se o monitor está conectado
monitor=$(xrandr | grep -o 'VGA-1 connected')

#crio o perfil do monitor
xrandr --newmode "1366x768_60.00"   85.25  1368 1440 1576 1784  768 771 781 798 -hsync +vsync
xrandr --addmode VGA-1 1366x768_60.00

# condição para ativar o perfil, caso o monitor esteja conectado
if [ "$monitor" ]; then
    xrandr --output VGA-1 --mode 1366x768_60.00
fi

Leia o script e substitua as ocorrências ‘VGA-1’ pelo identificador do seu monitor.

Referências:

Como conectar em uma rede wireless pela linha de comando no linux

A ferramenta para conectar varia conforme o tipo de criptografia utilizada no processo de autenticação:

Para somente o tipo WEP use o iw
Para os tipos WEP, WPA and WPA2 use o wpasupplicant

Instalação e configuração utilizando iw

No Ubuntu Server esse aplicativo já vem instalado, basta chamar na CLI por:

iw

Instalação da ferramenta

apt-get install iw 

Exibir placa de rede wireless do computador

iwconfig

Listar as redes wifi captadas pela placa wireless

iwlist scan
ou
iwlist <sua interface wireless> scan

Conectar da rede wi-fi

iwconfig wlan0 essid <NOME-DA-REDE> mode managed

Caso precise obter IP utilize o DHCLIENT

dhclient -v <sua-interface-wi-fi>

Instalação e configuração utilizando wpasupplicant

Instalação da ferramenta

apt-get install wpasupplicant

Arquivo de configuração. Se ele não estiver criado, você deve criar

/etc/wpa_supplicant.conf

Configuração:

network={
    ssid="ssid_name"
    psk="password"
}

Assumindo que a sua interface é wlan0:

wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf -D wext

Caso precise obter IP utilize o DHCLIENT

dhclient -v <sua-interface-wi-fi>

Fontes

  1. https://sempreupdate.com.br/como-conectar-wifi-via-terminal-linux/
  2. https://askubuntu.com/questions/138472/how-do-i-connect-to-a-wpa-wifi-network-using-the-command-line