Instalando e Configurando MySQL no Ubuntu Server

O MySQL é um sistema de gerenciamento de banco de dados open-source bastante utilizado. Ele é um banco de dados relacional e usa SQL (Structured Query Language) para gerenciar seus dados.

Neste post vamos instala-lo em um servidor Ubuntu Server. Primeiramente vamos atualizar o repositório e depois instalar o MySQL.

$ sudo apt-get update
$ sudo apt-get install  mysql_server

No procedimento acima será pedido uma senha do usuário mysql root. Defina uma, repita a senha e prossiga.

O próximo passo é utilizar um comando onde realiza alguns procedimentos de segurança:

$ mysql_secure_installation

Algumas perguntas serão feitas. A primeira é se queremos alterar a senha do usuário root do mysql, depois vem algumas perguntas sobre remover usuário Anônimo e se deseja remover os privilégios de acesso remoto do usuário root. Escolha entre Y ou N e aperte enter.

Pronto nosso  MySQL está instalado, agora precisamos configurar. Vamos começar acessando o MySQL e criando um usuário para acesso remoto:

$ mysql -u root -p

Aperte enter e sera pedido a senha do usuário root do MySQL. Dentro dele vamos digitar os seguintes comandos:

mysql>  CREATE USER 'remoto'@'%'  IDENTIFIED BY 'senhaUsuarioRemoto';
mysql>  GRANT ALL ON * . * TO 'remoto'@'%'  IDENTIFIED BY 'senhaUsuarioRemoto';
mysql> FLUSH PRIVILEGES;
mysql> \q

Pronto usuário criado e privilegios concedidos.  Agora precisamos entrar no arquivo de configuração do MySQL e comentar duas linhas.

$ sudo vi /etc/mysql/my.cnf

Comente as linhas

#bind-address = 127.0.0.1
#skip-external-locking

Salve e feche o arquivo  ( :wq ). Reinicie o serviço mysql

$ sudo service mysql restart

Por último altere as regras o firewall. O servido utilizado para este post possui o ufw, e foram necessários os seguintes comandos:

$ sudo ufw allow 3306/udp
$ sudo ufw allow 3306/tcp
$ sudo ufw reload

Pronto nosso MySQL já está funcionando e preparado para receber conexão remota.

Instalar PHPStorm no linux manualmente

O PHPStorm é uma IDE comercial, multi plataforma, para PHP construído na plataforma JetBrains’ IntelliJ IDEA. Neste post vamos instalar o mesmo manualmente em nossa distribuição Linux.

Primeiro passo, vamos remover qualquer vestígio do PHPStorm de nossa maquina, com os seguintes comandos:

 

$ sudo rm -Rf /opt/phpstorm*
$ sudo rm -Rf /usr/bin/phpstorm
$ sudo rm -Rf /usr/share/applications/phpstorm.desktop

Pronto agora podemos baixar-lo e instala-lo com os seguintes comandos:

$ wget https://download.jetbrains.com/webide/PhpStorm-2017.3.tar.gz \ 
-O phpstorm.tar.gz

Descompactando em pasta /opt/:

$ sudo tar vzxf phpstorm.tar.gz

Alterando o nome da pasta:

$ sudo mv /opt/PHPStorm*/  /opt/phpstorm

Criando Link simbólico para pasta /usr/bin:

$ sudo ln -sf /opt/phpstorm/bin/phpstorm.sh /usr/bin/phpstorm

Criar lançador para o programa:

$ echo -e '[Desktop Entry]\n Version=1.0\n Name=phpstorm\n \ 
Exec=/opt/phpstorm/bin/phpstorm.sh\n Icon=/opt/phpstorm/bin/phpstorm.png\n \
 Type=Application\n Categories=Application' \ 
| sudo tee /usr/share/applications/phpstorm.desktop

Concedendo permissão para executar o lançador:

$ sudo chmod +x /usr/share/applications/phpstorm.desktop

Pronto agora você já pode utilizar o programa (caso tenha a licença).

Compactando e Descompactando com tar no Linux

O comando tar é uma ferramenta utilizada para compactar e descompactar arquivos, diretórios, discos inteiros, etc. Ele consegue aguentar trabalho pesado, ou seja, compactar arquivos e volumes grandes com responsabilidade. Vamos ver neste post alguns comandos que podemos usar para criar arquivos compactados e descompactar arquivos de diversos formatos.

Primeiro vamos ver algumas opções importantes que o comando possui.

  • -c: (create) cria um novo arquivo tar;
  • -v: (verbose) detalha o procedimento que está acontecendo;
  • -f: define o nome do arquivo;
  • -j ou –bzip2: compacta/descompacta os arquivos usando o bzip2;
  • -J ou –xz: descompacta os arquivos .xz e .Izma;
  • -x: extrai o conteúdo do arquivo;
  • -z ou –gzip ou –gunzip: compacta/descompacta os arquivos usando o compress;
  • -C: diretório onde será descompactado o arquivo.

 

Compactando arquivo

No código abaixo vamos realizar a compactação .tar a parti do diretório arquivos/

$ tar -cvf arquivos.tar arquivos/

 

Descompactando Arquivo

No código abaixo vamos descompactar um arquivo .tar especificando o diretório que o mesmo irá ficar.

$ tar -xvf arquivos.tar -C /opt/

 

Formatando e criando pendrive bootável pelo terminal Linux

Uma das formas que mais gosto de fazer a formatação e a criação de pendrive bootável é utilizando o terminal no linux. Em poucos comandos e minutos consigo criar um pendrive com os dados necessários para instalar um sistema operacional (neste caso o linux).

Primeiro vamos listar os discos que estão na nossa máquina, com o comando:

$ sudo fdisk -l

Identificado o nosso pendrive de 8GB (7,6GB), que no caso é o /dev/sdb. O próximo passo é desmontá-lo. Neste caso temos o /dev/sdb1 e /dev/sdb2 então vamos desmontar os dois com os seguintes comandos:

$ sudo umount /dev/sdb1
$ sudo umount /dev/sdb2

Com o pendrive desmontado vamos agora formatar (só faça este procedimento caso tenha plena certeza do que está fazendo) o mesmo, com o seguinte comando:

$ sudo mkfs.vfat -I /dev/sdb

Com o pendrive formatado vamos agora colocar nossa imagem do sistema no pendrive.

$ sudo dd if=CentOS-6.5-x86_64-bin-DVD1.iso of=/dev/sdb && sync

Espere ate o terminal sinalizar que terminou e pronto, já pode ser usado.

Configurando Rede no Debian

Para realizar a configuração de rede no Debian pelo terminal precisamos acessar o arquivo /etc/network/interfaces. Neste arquivo colocamos as informações de IP, Mascara, Gateway, entre outras.

Vamos emular a configuração da placa de rede eth0 com as seguintes características:

IP: 10.10.10.122
Máscara: 255.255.255.0
Gateway: 10.10.10.1
Network: 10.10.10.0
Broadcast: 10.10.10.255

Acesse o terminal com usuário root e utilize o seguinte comando:

Adicione estes linha no seu arquivo:

Salve (ctrl o) e saia (ctrl x) do arquivo. Pronto agora precisamos somente reiniciar a placa de rede com o comando:

 

Fazendo deploy com Deployer

deployer

 

Deployer é um pacote em PHP que tem como características realizar o deploy de aplicações e como principal vantagem a economia de tempo, melhor desempenho e desenvolvimento.

Neste post vamos desde do primeiro passo a instalação ate a execução do deploy em um servidor, tudo em um ambiente linux, no meu caso a distribuição Debian. Primeiramente precisamos baixar o arquivo .phar disponível no site do projeto.

Download do deployer.phar

Depois de realizado o download vamos move-lo e para a pasta /usr/local/bin e conceder permissão de execução com o seguinte comando:

$ mv deployer.phar /usr/local/bin/dep
$ chmod +x /usr/local/bin/dep

Depois deste passo teste o comando dep no terminal e veja se aparece mais ou menos como a tela abaixo.

Comando dep

O próximo passo é a criação do arquivo deploy.php onde setaremos algumas configurações para que possamos executar nosso delpoy da melhor maneira. No nosso casso vamos realizar o acesso via identityFile a um servidor e passar os arquivos de uma branch especifica de um repositório git.

<?php require 'recipe/symfony.php'; 
server('prod', '10.10.10.213')->user('byteslv')
->identityFile('/home/btllv/.ssh/id_rsa.pub', '/home/btllv/.ssh/id_rsa')
->env('deploy_path', '/var/www/html')
->stage('production');
 
set('repository', 'git@github.com:usuario/tests.git');
env('branch', 'master');
 
task('deploy:vendors', function () {
});
 
task('deploy:assetic:dump', function () {
});
 
task('deploy:cache:warmup', function () {
});

Pronto agora podemos executar nosso comando pra realizar o deploy na nossa maquina de production. Para rodar basta utilizar o seguinte comando:

$ dep deploy production

O processo começara, e tudo dando certo aparecerá  uma tela mais ou menos como esta abaixo.

dep

Processo realizado com sucesso!

É possível ir bem alem do que mostrei aqui. Entre no site do projeto e veja sua documentação e veja como o que mais pode se fazer com o Deployer.

http://deployer.org/

 

Sudo e Debian 8

O Debian 8 não vem com sudo instalado para o uso no terminal de padrão, mais caso queira usar o processo de instalação é muito simples e se resume em três passos.

Primeiro é necessário instalar o sudo utilizando o apt-get:

# apt-get install sudo

Depois de instalado o segundo passo é utilizar o usermod para modificar a conta do seu usuário:

# usermod -a -G sudo seu_usuario_aqui

O terceiro e ultimo passo é reiniciar ou realizar logoff para que possa usufruir deste comando.

Instalando Virtual Box no Debian 8

Virtualizador Virtual Box
Virtualizador Virtual Box

Neste post vamos instalar o Virtual Box no Debian 8 pelo repositório. Primeiro vamos adicionar um repositório separado para o virtual box.

Criando o repositório virtualbox.list:

# vim /etc/apt/sources.list.d/virtualbox.list

Adicione a seguinte linha:

deb http://download.virtualbox.org/virtualbox/debian wheezy contrib

Agora precisamos executar o comando para baixar a chave do repositório e instalar:

# wget -v http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | apt-key add -

Agora vamos atualizar:

# apt-get update

Agora vamos de fato instalar o Virtual Box, utilizando o seguinte comando:

# apt-get install virtualbox-4.3

Nesse post, foi escolhido a versão 4.3 como exemplo.

O próximo passo é adicionar o seu usuario para o grupo do Virtual Box:

Utilizando os seguintes comandos:

# gpasswd -a usuário vboxusers
# usermod -a -G vboxusers usuário

Com estes passos já concluídos com sucesso, o Virtual Box estará instalado. Podemos utilizar mais um comando para baixar a extensão de suporte USB para o Virtual Box. Basta utilizar o seguinte comando:

# wget http://download.virtualbox.org/virtualbox/4.3.26/Oracle_VM_VirtualBox_Extension_Pack-4.3.26-98988.vbox-extpack

Depois de ter realizado o download com sucesso execute o seguinte comando para instalar a extensão.

# VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.3.0-89960.vbox-extpack

Se nenhum erro ocorrer no processo ja estará em seus aplicativos o ícone do Virtual Box. Faça bom proveito 🙂

Removendo Varios Arquivos Linux (ARGUMENT LIST TOO LONG)

Quando se tem varios arquivos indesejáveis ou que so estão tomando espaço em alguma pasta do seu Linux e se decide apaga-los não adianta usar o comando rm ja conhecido, pois ele apresentara um erro mais ou menos mostrando isso: ARGUMENT LIST TOO LONG.

Como remover então estes arquivos? eis o X da questão. Precisamos utilizar alternativas para este comando. No caso aqui utilizaremos o comando for, um comando de repetição. Sua clausula consiste em:

for "iteração" in "lista"; do 
  bloco de código/ comando...
done

Vamos utilizar uma forma mais enxuta junto com o nosso comando rm. Ficando desta maneira:

$ for g in *.log; do rm $g; done

No caso deste código acima excluímos todos arquivos que termina com a extensão  .log. Lembre de ter permissão para excluir estes arquivos.

No código acima ele vai te perguntar se deseja excluir de arquivo em arquivo, mais podemos adicionar uma opção interessante neste comando, o -f.

$ for g in *.log; do rm  -f $g; done

Neste caso ele apaga sem pedir confirmação.