terça-feira, 3 de outubro de 2017

PEN DRIVE E ATUALIZAÇÕES

Acesse um terminal como usuário root e crie um diretório em /media com o nome que você preferir. Este diretório será usado para montar o pen drive.

mkdir /media/pendrive

Conecte o dispositivo na posta USB

Agora é preciso descobrir o nome do dispositivo no Linux. Para isso, digite no terminal:
dmesg |grep removable

Exemplo
[13696.443430] sd 5:0:0:0: [sdb] Attached SCSI removable disk

O primeiro elemento (dentro de colchetes) é o tempo desde a inicialização do sistema (em segundos). O outro elemento dentro de colchetes, de três letras, revela que o dispositivo foi nomeado como "sdb".

O comando "dmesg" imprime o buffer de mensagens do núcleo/kernel, ou seja, quando o sistema reconhece o pendrive como um dispositivo e dá um nome para ele, aparece nesse log. A saída desse comando é redirecionada para outro comando, o "grep", que busca strings no texto informado e imprime a linha que o contém; nesse caso, o texto a ser encontrado é "removable", que sempre aparece na linha sobre a inclusão de um novo dispositivo USB.

dmesg |grep sdb

Após a execução do comando, verifica-se que existe apenas uma partição e ela chama-se "sdb1".

Após saber o nome do dispositivo, basta montá-lo por meio do comando:

mount /dev/sdb1 /media/pendrive

Para saber as partições do disco, basta digital fdisk –l
df – h  lista os discos montados

Após a utilização, desmonte o pendrive usando o seguinte comando (ainda como root):
umount /media/pendrive

ATUALIZANDO O UBUNTU MANUALMENTE

O comportamento padrão do sistema operacional detectar a necessidade de ser atualizado automaticamente.
Contudo, suas configurações permitem mudar a constância ou a periodicidade da busca por atualizações no seu sistema.
Se, por algum motivo qualquer, você precisa verificar se há necessidade de atualizar o seu sistema, usar a linha de comando é a forma mais eficiente de realizar este procedimento.

O QUE É UM REPOSITÓRIO?

Repositório, no Ubuntu, é um servidor, dedicado a uma determinada distribuição que contém pacotes (programas ou bibliotecas) para fazer download. Através dos repositórios é possível fazer instalações de programas de uma forma muito simples e segura. Muitos repositórios, como os oficiais do Ubuntu, têm uma chave que é única para o computador do utilizador e permite ter um nível de segurança elevadíssimo nos downloads dos ficheiros.


SINCRONIZANDO O SISTEMA COM O REPOSITÓRIO

O primeiro passo, é sincronizar o seu sistema com os repositórios (definidos dentro do arquivo /etc/apt/sources.list

Isto é feito com o seguinte comando:

sudo apt update


Concluído o processo anterior, já se pode atualizar o sistema:

sudo apt full-upgrade




Ao contrário do que o nome pode sugerir, este comando não faz um upgrade da distro atual para outra mais nova. Ele apenas instala as atualizações disponíveis pros pacotes de software, já presentes, na sua atual versão do Ubuntu.
Só para citar um exemplo, caso você tenha o Ubuntu 14.04 instalado, o parâmetro upgrade não vai instalar a versão 14.10 no seu computador — mas apenas as atualizações disponíveis para a versão que você está usando.



COMANDOS DO TERMINAL LINUX

Olááááá, caros leitores ^.^

Hoje, iremos introduzir o Terminal e alguns comandos super importantes !

Os nomes comuns encontrado para o acesso do terminal são, SHELL, CONSOLA ou CONSOLE, TERMINAL DE COMANDO, ou simplesmente TERMINAL.. Até pouco tempo, esta era a maneira que o usuário interagia com o computador; entretanto, os usuários de Linux viram que o uso do shell pode ser mais rápido do que um método gráfico e que ainda merece algum mérito hoje. Os comandos no terminal ajudam muito os usuário a resolver problemas e otimizar tarefas.

O uso original do terminal era e ainda é como um navegador de arquivos.

Digitar nas linhas de comandos não é tão difícil assim, não precisa ser profissional  porque é um programa como qualquer outro.

A maioria das coisas em Linux podem ser feitas usando a linha de comando. Embora haja ferramentas gráficas para a maioria dos programas, às vezes eles não são suficientes. É aí que a linha de comando fica útil.

Para começar, entre no seu GNU/Linux, seja como máquina




No GNU/Linux, digite ctrl+alt+t para abrir o terminal ou pesquise por ele.





A seguinte sequência de comandos auxilia no entender, pesquisar e treinar utilizando o terminal. A maioria dos comandos podem ser utilizados em qualquer distribuição Linux:

Comando ls - Listando conteúdo de um diretório
O comando ls permite visualizar o conteúdo de um diretório e informações sobre arquivos, trazendo dados como nomes de arquivos, permissões, proprietários e datas de criação, além de possui inúmeras opções que permitem exibir as informações de diversas formas.

Sintaxe
ls [opções] [arquivo]

Opções mais comuns -a, --all
Não ignorar as entradas que se iniciam com um ponto (.); equivale a exibir arquivos ocultos.

-A, --almost-all
Idem -a, porém não lista as entradas implícitas . e .. (diretório atual e diretório pai)



Detalhe:
Na tela de comandos, está: teste@larissa-VirtualBox:~$ 

Onde teste é o nome do usuário do Sistema Operacional, o simbolo de @ é um separador para destinar o nome da máquina que no caso aqui é “larissa-VirtualBox” O sinal de “~” é um apelido para a pasta do usuário, que no caso também é fulano que por padrão fica no diretório home.

Outras opções
Como outras opções, temos:
-c  
quando usada com as opções -lt, ordena e mostra os arquivos de acordo com o ctime (hora da última modificação de informações de status do arquivo); sozinho, ordena por ctime, com o mais recente primeiro (sem mostrar a hora).

*com a opção -l: mostra o ctime e ordena por nome de arquivo;

-g  
Equivalente ao -l, mas sem listar os proprietários dos arquivos




--group-directories-first 
Agrupa os diretórios antes dos arquivos



-l     
usar formato de listagem longa, que traz detalhes dos arquivos como datas de criação, permissões, nome de proprietário e grupo, e tamanho. É uma das opções mais usadas do comando.

-R, --recursive
listar os subdiretórios recursivamente



-S    
Ordenar por tamanho de arquivo, sendo o maior primeiro.

-r, --reverse
Ordem reversa quando classificar



--sort=opção
Classifica pela "opção", em vez de por nome.
As opções disponíveis são: none (nenhuma), size (tamanho), time (hora), version (versão) e  extension (extensão)


ls -l *.extensão
Permite filtrar e listar somente determinados tipos de arquivo. Por exemplo, ls -l *.php exibirá somente os arquivos. php contidos na pasta, e assim por diante.

ls -1
Com ls -1, podemos fazer com que os arquivos do diretório sejam listados por linha, um em cada linha.


ls -d $PWD/*
O comando acima lista pastas e arquivos incluindo o caminho completo para eles:

ls –t
Com ls -t podemos listar os arquivos por ordem de data de modificação. Arquivos que foram modificados por último, mais recentemente, são exibidos em primeiro lugar.




COMANDO "FIND"

Com ele podemos não somente realizar buscas por arquivos e diretórios, mas também, através da utilização de diversos parâmetros adicionais, realizar outras operações, em conjunto. Ao mesmo tempo em que o comando pode ser usado para encontrar arquivos e/ou pastas utilizando uma ampla gama de critérios, por exemplo, com ele também podemos apagar arquivos, alterar permissões, etc. Ele também pode, por exemplo, localizar arquivos que foram alterados dentro de um intervalo de dias que o usuário irá especificar (digamos que você deseja saber quais arquivos no servidor foram alterados, por exemplo, nos últimos 30 dias).

É também possível utilizar o comando “find” para encontrar arquivos com base em seu tamanho. É até mesmo possível especificar uma “faixa”: por exemplo, localizar arquivos que possuam entre 10 e 20MB. Encontrar e deletar tais arquivos também é possível.

Então vamos lá!

Abaixo seguem alguns exemplos de utilização do “find” na linha de comando:

find -name exemplo.php

O comando acima encontrará todos os arquivos chamados “exemplo.php” que se encontram no diretório atual.

Já o comando abaixo encontrará todos os arquivos chamados  “exemplo.txt” que estejam dentro do diretório “/home/usertest”. Repare que aqui não precisa estar dentro do diretório, ao contrário do exemplo acima.

find /home/usertest -name exemplo.txt




ESPECIFICAR UM LIMITE DE SUBDIRETÓRIOS A SEREM EXIBIDOS
Imaginemos uma situação em que o primeiro exemplo tenha sido aplicado e haja dezenas de subdiretórios que sendo exibidos na lista. No caso, você não precisa receber tantas informações, e então deseja que somente os primeiros subdiretórios sejam exibidos.
Para isso, estabeleça uma condição que defina o nível de “profundidade” na navegação dos subdiretórios por meio do maxdepth:

find -maxdepth 1 -name *.html



COMBINAR MÚLTIPLOS CRITÉRIOS DE BUSCA
Se o usuário quiser localizar arquivos levando em conta os formatos “txt” e “php”, basta incluir o caractere “o” (significa OR) na linha de comando.

find -name '*.php' -o -name '*.txt' 




LOCALIZAR SOMENTE ARQUIVOS OU SOMENTE DIRETÓRIOS
Nos exemplos anteriores, percebe-se que arquivos e diretórios são listados juntos em cada busca. Porém, é possível buscar somente por uma das duas coisas:

SOMENTE ARQUIVOS          find -type f -name "p*" 

SOMENTE DIRETÓRIOS       find -type d -name "p*"



LOCALIZAR ARQUIVOS E DIRETÓRIOS OCULTOS

Basta especificar que está buscando apenas arquivos (-type f) e usar um ponto final (.) no lugar do nome.

$ find ~ -type f -name ".*"


E, para diretórios:

$ find ~ -type d -name ".*"

Podemos também utilizar o comando “find” juntamente com o parâmetro “-iname”, ao invés de “-name”. Desta forma, a busca trará todos os arquivos, tenham eles letras minúsculas ou maiúsculas na composição de seus nomes.

find -iname exemplo.txt

Ou:
find /home/usertest -iname exemplo.txt










PARA REMOVER
Que tal agora utilizarmos o comando “find” para encontrar e remover diversos arquivos, ao mesmo tempo? Todos os arquivos que obedeçam a um critério, por exemplo, e que estejam dentro de um diretório específico?
Basta digitar o comando abaixo, realizando, claro, as alterações necessárias conforme suas necessidades:

find  -name *.php -exec rm {} \;

Através do exemplo acima, serão localizados todos os arquivos com extensão. php, dentro do diretório que você está. Eles também serão apagados, devido à combinação do “find” com o parâmetro “-exec”, o qual então executará o comando “rm” (remove) logo em seguida, para a devida remoção dos arquivos.

Da mesma forma, podemos fazer com que o comando localize e apague todos os arquivos independentemente de os mesmos conterem letras maiúsculas ou minúsculas na composição de seus nomes, através do já mencionado parâmetro “-iname”, ao invés de “-name”.

find –type f -iname *.php -exec rm  -f {} \;

Podemos, obviamente, alterar “*.php” por qualquer outra extensão de arquivo, como por exemplo “*.txt”, “*.exe”, “*.html”, “*.jpg” e assim por diante.


ATENÇÃO: Nenhuma mensagem será mostrada!!!

PARA ENCONTRAR MODIFICADOS OU ENTRE DETERMINADO TAMANHO (EM MB)
E para encontrar arquivos que foram modificados nos últimos 30 dias, digamos?  Digite o seguinte:
find / -mtime 30

Modificados nas últimas 6 horas
find . -type f -mtime -0.25



Lembre-se de que você pode alterar o valor “30” pelo que desejar.

Deseja encontrar arquivos dentro de um mesmo diretório que possuam tamanhos a partir de 10MB e com menos de 30MB?
find ~ -size 10M -size -30M

ALGUMAS CONDIÇÕES PARA O FIND

Procura arquivos ACESSADOS (atime) nas últimas 24 horas (para mais de 3 dias, use +3)
find -type f -atime -1 -exec ls -l {} \;

Procura arquivos ACESSADOS (amin) nos últimos 5 minutos
find -type f -amin -5





Procura arquivos CRIADOS (ctime) nas últimas 12 horas


find . -type f -ctime -0,5 -exec ls -l {} \;

















Procura arquivos os diretórios vazios sem dizer se é -type d ou -type f ele procura ambos
find -type d –empty – só procura diretórios


find -type f –empty – só procura arquivos





Sequência de comandos para que você possa entender, pesquisar e treinar utilizando o terminal. A maioria dos comandos podem ser utilizados em qualquer distribuição Linux:
~$ cd  # comando para acessar/navegar entre diretórios.
~$ cd .. # para sair de diretório, note que os dois pontos estão separados do comando.


~$ ls  # aquivos ou pasta de um determinado diretórios.
~$ lsusb  # lista os periféricos que estão conectados na porta usb.
~$ mkdir # cria uma pasta.
~$ rmdir # remove um diretório
~$ clear  # limpa a “tela" do terminal
~$ cp  # comando para copiar um arquivo ou diretório para um outro local
~$ mv  # comando para mover um arquivo ou diretório para um outro local

~$ exit  # sair do terminal, fechar o terminal
~$ shutdown  #Desligar o computador
~$ shutdown -h now #desligar o computador agora
~$ groupadd #Cria um novo grupo no sistema
~$ sudo groupadd -g 10 escritorio #cria um grupo chamado escritório com um número de identificação 10
~$ groupdel #Deletar um determinado grupo
~$ sudo groupdel escritorio //Deleta o grupo denominado escritório

~$ sudo useradd #Adiciona um novo usuário a um grupo
~$sudo useradd -g 10 /usuarios/escritorio/nome_do_usuario
~$ userdell #Exclui um determinado usuário
~$sudo userdell -r nome_do_usuario # a opção -r exclui o diretório do usuário

Comando cp
Copiar arquivos ou diretórios para outro local.
Se o destino fornecido for o nome de um diretório existente, os arquivos serão copiados para esse diretório, com o mesmo nome. Caso indiquemos um nome de arquivo no caminho de destino, o arquivo de origem será copiado e essa cópia renomeada também.

Sintaxe:
cp  [opções]  arquivos_origem  local_destino

cp -a pasta1 pasta2 – Faz uma cópia de um diretório para outro:


Quando o diretório é copiado e tem vários arquivos dentro dele, o         comando “cp” precisa saber o que você deseja copiar. se desejar realizar todo o conteúdo utiliza a opção “-a”. Nesse caso é feito uma cópia recursiva, será copiado todo o conteúdo de um diretório para o outro, preservando seus atributos e a estrutura.

 


$ cp -i *.txt /pasta

$ cp -f *.txt /pasta









– Faz o cópia de vários arquivos para um outro diretório:

A opção “-i” será perguntado o que deseja substituir, caso já tenha um com o mesmo nome no diretório. A opção “-f”, será substituído sem pergunta alguma.

Opções mais comuns:
-i, --interactive
Pergunta se desejamos sobrescrever um arquivo de destino já existente.
-l, --link
Cria hard links para os arquivos em vez de copiá-los.
-n, --no-clobber
Não sobrescrever um arquivo já existente
-p
Preserva as permissões originais do arquivo, incluindo proprietário, grupo, stuid, setgid, tempos da última modificação e acesso.
-r, -R, --recursive
Copia diretórios de forma recursiva.
-s, --symbolic-link
Cria links simbólicos (symlinks) para os arquivos em vez de copiá-los
-u, --update
Copia apenas quando os arquivos de origem forem mais novos que os de destino, ou quando os arquivos de destino estiverem faltando.
-v, --verbose
Modo verboso; explica o que está sendo feito no momento.
--help
Mostra a ajuda básica do comando e sai.
--version
Mostra informações sobre a  versão do comando e sai.



1. Copiar o arquivo passwd do diretório /etcpara o diretório /home/fabio/.
$ cp  /etc/passwd   /home/fabio/

Se o diretório de trabalho atual já for o /home/fabio, podemos também usar o ponto (.) para indicá-lo como local de destino, como a seguir:
$ cp  /etc/passwd   .
2. Copiar o arquivo passwd do diretório /etc/ para o diretório /home/fabio/ renomeando a cópia como usuarios.txt:
$ cp  /etc/passwd   /home/fabio/usuarios.txt
3. Copiar todos os arquivos cujo nome se inicia com a letra l do diretório /lib/ para o diretório atual:
$ cp /lib/l* .

4. Criar um link simbólico no diretório atual para o arquivo /etc/group:
$ cp  -s  /etc/group .




5. Fazer uma cópia de backup de um arquivo no mesmo diretório, com outro nome (muito útil quando precisamos alterar arquivos de configuração do sistema):
$ cp  passwd  passwd.bkp




6. Copiar o diretório /home/fabio/Documentos e todo o seu conteúdo recursivamente para o diretório /home/fabio/backup/:
$ cp -r /home/fabio/Documentos  /home/fabio/backup/


Comando mv
O comando mv pode ser usado para mover ou renomear arquivos.

Sintaxe:
mv  [opções]  arquivos_origem  local_destino

Opções principais:
-b, --backup
Cria um backup de cada arquivo de destino existente.
-f, --force
Apaga destinos existentes sem perguntar ao usuário.
-i, --interactive
Pergunta se desejamos sobrescrever um arquivo de destino já existente.
-n, --no-clobber
Não sobrescrever um arquivo já existente
-u, --update
Move apenas quando os arquivos de origem forem mais novos que os de destino, ou quando os arquivos de destino estiverem faltando.
-v, --verbose
Modo verboso; explica o que está sendo feito no momento.
--help
Mostra a ajuda básica do comando e sai.
--version
Mostra informações sobre a versão do comando e sai.


Exemplos:
1. Mover o arquivo passwd do diretório atual para o subdiretório Documentos:
$ mv passwd ./Documentos/

Mover o arquivo passwd do diretório atual para o subdiretório Documentos, o qual já contém um arquivo com o mesmo nome - nesse caso, queremos fazer um backup do arquivo de destino:
$ mv --backup passwd ./Documentos/

3. Renomear o arquivo curriculum.odt para curriculum.txt:
$ mv curriculum.odt curriculum.txt


Veja que não indicamos um destino diferente - mandamos mover o arquivo para o próprio local de origem, apenas trocando seu nome.




rm teste.txt
Você pode apagar arquivos que estão em uma outra pasta no terminal. Basta digitar o endereço completo. Assim, para apagar a música teste.ogg que está na pasta Músicas, digite o seguinte:
rm ~/Músicas/teste.ogg

Atenção: Esse "til" representa sua pasta pessoal. Todo o caminho seguinte é relativo a ele.

Apagando Diretórios
Diretório é só mais um nome para "pasta". Se você tentar remover com o comando "rm" um diretório, o linux não vai aceitar. Isso porque ele não sabe se vc quer remover todo o conteúdo da pasta junto.
Para remover a pasta "teste" e todo o seu conteúdo, digite o seguinte comando:
rm teste/ -R

Esse "R" maiúsculo é de "Recursive" e com esse parâmetro todos os arquivos e pastas dentro desse diretório serão excluídos. Esquecer o parâmetro "R" é uma das maiores causas de frustração ao tentar apagar uma pasta.

Atenção:
Os arquivos apagados dessa forma não vão para a lixeira. Eles são removidos diretamente. Tome cuidado.


Pastas e arquivos com espaços ou outros caracteres especiais no nome
No terminal o espaço em branco tem um significado especial. É ele quem separa os comandos um do outro. Assim, por exemplo, é um espaço em branco que separa o comando rm do nome da pasta teste/no código que usamos acima.
Por isso temos que ter cuidado quando queremos apagar algo que tenha um espaço em branco no nome. Por exemplo: para apagar uma pasta chamada "mais um teste", que tem dois espaços no nome, o jeito mais fácil é cercar o nome da pasta com aspas.
rm "mais um teste"/ -R


PEN DRIVE E ATUALIZAÇÕES

Acesse um terminal como usuário root e crie um diretório em /media com o nome que você preferir. Este diretório será usado para montar o pe...