Comandos Bash
Índice
- Sobre
- Hierarquia Padrão do Sistema de Arquivos (FHS)
- Comandos de Manipulação de Diretórios
- Comandos de Manipulação de Arquivos
- Comandos Diversos
- Comandos de Rede
- Acessos Remoto com SSH
- Comandos para Manipulação de Contas
- Arquivos Compactados
- Repositórios
- Pacotes Redhat, Fedora, CentOS
- Instalação
- Permissões
- Scripts
Sobre
Esse repositório tem por objetivo abordar os principais comandos bash oriundos do Unix.
Bem como, as diferentes abordagens e manipulação no sistema Linux.
Comandos de Manipulação de Diretórios
# Lista os arquivos do diretório atual
ls
# Lista os arquivos do diretório atual
ls .
# Lista o diretório anterior
ls ..
# Lista os arquivos do diretório /bin e /sbin
ls /bin /sbin
# Exibição de todos arquivos até os ocultos
ls -al
# Não classifica a listagem
ls -f
# Usa a identificação de usuário e grupo numérica
ls -n
# Lista diretórios e sub-diretórios recursivamente
ls -R
# Lista o diretório nativo - root
ls ~
ls /root
# Lista longa
ls -l
# Administra a pagina de vídeo juntando com o comando ls através do | (pipe)
ls -l | more
# Lista Arquivos ocultos (identificado na frente do diretório e o arquivo um ".")
ls -a
# Lista e adiciona simbolo para identificar (diretório, arquivo e link)
ls -F
# Combinando comandos -a e -F
ls -Fa
# Listar por data e time
ls -t
# Listar por data e time com os valores na tela
ls -lt
# Lista os arquivos em uma linha
ls -1
# Entra no Diretório home
cd home
# Vai para o diretório HOME do usuário
cd ~
# Retornará ao diretório raíz
cd /
# Retornará ao diretório anteriormente acessado
cd -
# Sobe um diretório
cd ..
# Estando no Diretório home, acessa diretamente exe2
cd /home/exe/exe2
# Mostra o diretório atual
pwd
# Cria um diretório (No Windows seria chamado de pasta)
mkdir diretorio_novo
# Criar varios diretórios um dentro do outro automaticamente
mkdir -p aulas/aula01/teoria
# Remove um diretório (deve estar vazio)
rmdir dudu
# Exibe uma arvore com os diretórios subsequentes
tree
Comandos de Manipulação de Arquivos
# Criar um arquivo vazio
touch nome_arquivo
# Criando dois arquivos
touch nome_arquivo1 nome_arquivo2
# Apaga arquivos
rm nome_arquivo
# Pergunta antes de remover (geralmente ativado por padrão)
rm -i
# Mostra os arquivos na medida que são removidos
rm -v
# Usado para remover diretórios e seus conteúdos recursivamente
rm -r
# Força a remoção dos arquivos sem perguntar
rm -f
# Apaga o arquivo teste.txt no diretório atual
rm teste.txt
# Apaga todos os arquivos do diretório atual que terminam com .txt
rm *.txt
# Copia arquivos
cp arquivo_origem arquivo_destino
# Pergunta antes de substituir um arquivo existente
cp -i
# Não pergunta, substitui todos os arquivos caso já exista
cp -f
# Copia o arquivo teste.txt para teste1.txt
cp teste.txt teste1.txt
# Copia o arquivo teste.txt para dentro do diretório /tmp
cp teste.txt /tmp
# Copia todos os arquivos do diretório atual para /tmp
cp * /tmp
# Copia todos os arquivos e o diretório /bin para /tmp recursivamente
cp -R /bin /tmp
# Move ou renomeia arquivos e diretórios
mv origem destino
# Substitui o arquivo de destino sem perguntar
mv -f
# Pergunta antes de substituir. É o padrão
mv -i
# Mostra os arquivos que estão sendo movidos
mv -v
# Muda o nome do arquivo teste.txt para teste1.txt
mv teste.txt teste1.txt
# Move o arquivo teste.txt para /tmp
mv teste.txt /tmp
# Mostra o conteúdo de um arquivo de texto
cat Exemplo.txt
# Mostra o número das linhas
cat -n Exemplo.txt
# Mostra o conteúdo de forma inversa (de baixo para cima)
tac Exemplo.txt
Metacaracteres (Wildcards)
- : Substitui um conjunto de caracteres (prefixo ou sufixo). ls t*o
? : Substitui apenas um caractere. ls ?texto
” [ ]”: Pesquisa um conjunto de caracteres. ls [abc]texto ou ls [a-z][0-9]texto
{}: Pesquisa um conjunto de strings. ls {ab,cd,ef}texto
Comandos Diversos
# Mostra o espaço livre/ocupado de cada partição
df
# Mostra o espaço em formato legível (Human-readable)
df -h
# Mostra os tamanhos em Megabytes
df -m
# Mostra o tipo de sistema de arquivos
df -T
# Mostra detalhes sobre a utilização da memória RAM
free
# Mostra o resultado em Megabytes
free -m
# Mostra uma linha contendo o total
free -t
# Procura por um texto dentro de um arquivo. Ex: grep "capitulo" texto.txt
grep "texto" arquivo.txt
# Exibe 2 linhas antes (-B) e 2 depois (-A) da ocorrência
grep "capitulo" texto.txt -A 2 -B 2
# Mostra o número de linhas junto com o conteúdo de um arquivo
nl teste.txt
# Mostra as linhas finais de um arquivo texto
tail teste.txt
# Mostra as 10 ultimas linhas do arquivo teste.txt
tail -n 10 teste.txt
# Muda a data e hora de um arquivo ou cria um arquivo caso não exista
touch teste.txt
# Muda somente a data e hora do acesso ao arquivo
touch -a teste.txt
# Muda somente a data e hora da modificação
touch -m
# Altera da data e hora do arquivo para 01/10 e 12:30
touch -t 10011230 teste
# Exibe informações do kernel
uname -a
# Exibe informações da CPU
cat /proc/cpuinfo
# Exibe informações da memória
cat /proc/meminfo
# Mostra mensagens na tela (útil em scripts)
echo "Minha mensagem"
# Mostra o tempo de execução do sistema desde que foi ligado
uptime
# Reinicia o computador
reboot
# Desliga o computador de forma programável
shutdown
# Faz o sistema ser reiniciado após 20 minutos
shutdown -r 20
# Cancela a execução do shutdown
shutdown -c
# Desligar o computador imediatamente
shutdown -h now
# Reinicia o computador imediatamente
shutdown -r now
# Interrompe o processo em execução no terminal
ctrl+C
Comandos de Rede
# Verificar seu endereço IP e configurações de rede
ifconfig
# Exibe a configuração de uma placa de rede eth0
ifconfig eth0
# Ativa uma interface ‘eth0’
ifup eth0
# Desabilita uma interface 'eth0'
ifdown eth0
# Configura um IP estático para a interface
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
# Ativa a interface ‘eth0’ em modo DHCP
dhclient eth0
# Exibe tabela de rota
route -n
# Descobrir o endereço IP de um host
host [www.google.com](https://www.google.com)
# Exibe a configuração de uma placa de rede sem fio
iwconfig wlan0
# Exibe as redes sem fio disponíveis
iwlist scan
# Mostra quem está atualmente conectado no computador
who
# Mostra o horário do último boot do sistema
who -b
# Mostra o total de usuários conectados
who -q
# Mostra o nível de execução atual do sistema
who -r
# Mostra o cabeçalho das colunas
who -H
# Mostra o nome do usuário atual
whoami
# Mostra o nome do domínio de seu sistema
dnsdomainname
# Mostra ou muda o nome de seu computador na rede
hostname
# Mostra na tela o caminho percorrido entre os Gateways da rede
traceroute www.debian.org
# Mostra endereços numericamente ao invés de usar resolução DNS
traceroute -n www.debian.org
# Similar ao traceroute
tracepath [www.google.com](https://www.google.com)
# Mostra conexões de rede, tabela de roteamento, estatísticas...
netstat -a
# Estatísticas da interface de rede
netstat -i
# Lista conexões TCP
netstat -t
# Lista conexões UDP
netstat -u
# Envia uma mensagem para todos os terminais (somente root)
wall /tmp/mensagem.txt
echo "Mensagem de teste" | wall
Acessos Remoto com SSH
Bash
# Instalação do cliente SSH (Debian/Ubuntu)
apt-get install openssh-client
# Instalação do servidor SSH (Debian/Ubuntu)
apt-get install openssh-server
# Conectar a um servidor remoto
ssh usuario@192.168.1.20
# Conectar por uma porta especificada
ssh -p 2222 usuario@ip_remoto
Comandos para Manipulação de Contas
# Adiciona um usuário ao sistema de forma interativa
adduser fernando
# Adiciona um grupo ao sistema
addgroup usuarios
# Apaga um usuário do sistema
userdel fernando
# Força a remoção do usuário
userdel -f fernando
# Remove o diretório HOME do usuário junto com o usuário
userdel -r fernando
# Mostra os grupos que o usuário pertence
groups fernando
# Apaga um grupo do sistema
groupdel usuarios2
# Modifica a senha de um usuário
passwd fernando
# Especifica o número máximo de dias que a senha poderá ser usada
passwd -x 90 fernando
# Mínimo de dias para a senha ser alterada
passwd -n 10 fernando
# Bloqueia a conta do usuário
passwd -l fernando
# Desbloqueia a conta de um usuário
passwd -u fernando
Arquivos Compactados
- .bz2: Arquivo compactado com o bzip2
-
.gz: Arquivo compactado com o gzip
-
.tar: Arquivo que armazena vários arquivos em um único (não compacta, apenas agrupa)
# Comprime um arquivo (substitui o original por arquivo.bz2)
bzip2 arquivo
# Descompacta um arquivo .bz2
bunzip2 arquivo.bz2
# Comprime um arquivo (substitui o original por arquivo.gz)
gzip arquivo
# Descompacta um arquivo .gz
gunzip arquivo.gz
# Cria um arquivo .tar contendo ‘arq1’, ‘ arq2′ e ‘pasta1’
tar -cvf arquivo.tar arq1 arq2 pasta1
# Extrai um arquivo .tar
tar -xvf arquivo.tar
Repositórios
Bash
# Excluir pacotes quebrados
sudo apt-get install -f
sudo dpkg --configure -a
# Excluir arquivos que não estão sendo utilizados
sudo apt-get autoclean
sudo apt autoremove
# Verificar se um pacote específico está instalado
dpkg -l | grep nome_pacote
# Para saber quantos pacotes estão instalados
dpkg -l | wc -l
# Listar pacotes Instalados
sudo apt list --installed
# Atualiza a lista de pacotes do repositório
apt update
# Atualiza seus pacotes instalados para as versões mais novas
apt upgrade
# Atualiza sua Distribuição (kernel, etc)
apt dist-upgrade
# Exibe a lista de repositórios configurados
cat /etc/apt/sources.list
# Remove um pacote
apt remove nome-pacote
Pacotes Redhat, Fedora, CentOS
# Baixa e instala um pacote rpm resolvendo dependências
yum install nome-pacote
# Instala um RPM local e tenta resolver dependências com repositórios
yum localinstall nome-pacote.rpm
# Atualiza todos os pacotes instalados no sistema
yum update
# Remove um pacote RPM
yum remove nome-pacote
# Lista todos os pacotes instalados no sistema
yum list
# Encontra um pacote no repositório
yum search nome-pacote
# Limpa o cache de pacotes baixados
yum clean packages
# Remove os arquivos de cache e cabeçalhos de pacotes
yum clean all
Instalação
Estrutura de diretórios e partições comuns na instalação do Linux.
$ tree
.
├── Instalação
│ ├── Swap
│ ├── /usr (via NFS)
│ └── Limitação 1024 cilindros
├── Gerenciador de Boot
│ └── LILO
│ │ ├── /etc/lilo.conf
│ │ └── lilo
│ └── GRUB
│ ├── /boot/grub/menu.lst
│ └── /sbin/grub-install
│
├── Partições Comuns
│ ├── /var
│ ├── /home
│ ├── /boot
│ ├── /(raiz)
│ └── /tmp
└── MBR (Master Boot Record)
Comandos de Manipulação de Diretórios
# Lista os arquivos do diretório atual
ls
# Lista os arquivos do diretório atual
ls .
# Lista o diretório anterior
ls ..
# Lista os arquivos do diretório /bin e /sbin
ls /bin /sbin
# Exibição de todos arquivos até os ocultos
ls -al
# Não classifica a listagem
ls -f
# Usa a identificação de usuário e grupo numérica
ls -n
# Lista diretórios e sub-diretórios recursivamente
ls -R
# Lista o diretório nativo - root
ls ~
ls /root
# Lista longa
ls -l
# Administra a pagina de vídeo juntando com o comando ls através do | (pipe)
ls -l | more
# Lista Arquivos ocultos (identificado na frente do diretório e o arquivo um ".")
ls -a
# Lista e adiciona simbolo para identificar (diretório, arquivo e link)
ls -F
# Combinando comandos -a e -F
ls -Fa
# Listar por data e time
ls -t
# Listar por data e time com os valores na tela
ls -lt
# Lista os arquivos em uma linha
ls -1
# Entra no Diretório home
cd home
# Vai para o diretório HOME do usuário
cd ~
# Retornará ao diretório raíz
cd /
# Retornará ao diretório anteriormente acessado
cd -
# Sobe um diretório
cd ..
# Estando no Diretório home, acessa diretamente exe2
cd /home/exe/exe2
# Mostra o diretório atual
pwd
# Cria um diretório (No Windows seria chamado de pasta)
mkdir diretorio_novo
# Criar varios diretórios um dentro do outro automaticamente
mkdir -p aulas/aula01/teoria
# Remove um diretório (deve estar vazio)
rmdir dudu
# Exibe uma arvore com os diretórios subsequentes
tree
Comandos de Manipulação de Arquivos
Bash
# Criar um arquivo vazio
touch nome_arquivo
# Criando dois arquivos
touch nome_arquivo1 nome_arquivo2
# Apaga arquivos
rm nome_arquivo
# Pergunta antes de remover (geralmente ativado por padrão)
rm -i
# Mostra os arquivos na medida que são removidos
rm -v
# Usado para remover diretórios e seus conteúdos recursivamente
rm -r
# Força a remoção dos arquivos sem perguntar
rm -f
# Apaga o arquivo teste.txt no diretório atual
rm teste.txt
# Apaga todos os arquivos do diretório atual que terminam com .txt
rm *.txt
# Copia arquivos
cp arquivo_origem arquivo_destino
# Pergunta antes de substituir um arquivo existente
cp -i
# Não pergunta, substitui todos os arquivos caso já exista
cp -f
# Copia o arquivo teste.txt para teste1.txt
cp teste.txt teste1.txt
# Copia o arquivo teste.txt para dentro do diretório /tmp
cp teste.txt /tmp
# Copia todos os arquivos do diretório atual para /tmp
cp * /tmp
# Copia todos os arquivos e o diretório /bin para /tmp recursivamente
cp -R /bin /tmp
# Move ou renomeia arquivos e diretórios
mv origem destino
# Substitui o arquivo de destino sem perguntar
mv -f
# Pergunta antes de substituir. É o padrão
mv -i
# Mostra os arquivos que estão sendo movidos
mv -v
# Muda o nome do arquivo teste.txt para teste1.txt
mv teste.txt teste1.txt
# Move o arquivo teste.txt para /tmp
mv teste.txt /tmp
# Mostra o conteúdo de um arquivo de texto
cat Exemplo.txt
# Mostra o número das linhas
cat -n Exemplo.txt
# Mostra o conteúdo de forma inversa (de baixo para cima)
tac Exemplo.txt
Metacaracteres (Wildcards)
* : Substitui um conjunto de caracteres (prefixo ou sufixo). ls t*o
? : Substitui apenas um caractere. ls ?texto
[]: Pesquisa um conjunto de caracteres. ls [abc]texto ou ls [a-z][0-9]texto
{}: Pesquisa um conjunto de strings. ls {ab,cd,ef}texto
Comandos Diversos
Bash
# Mostra o espaço livre/ocupado de cada partição
df
# Mostra o espaço em formato legível (Human-readable)
df -h
# Mostra os tamanhos em Megabytes
df -m
# Mostra o tipo de sistema de arquivos
df -T
# Mostra detalhes sobre a utilização da memória RAM
free
# Mostra o resultado em Megabytes
free -m
# Mostra uma linha contendo o total
free -t
# Procura por um texto dentro de um arquivo. Ex: grep "capitulo" texto.txt
grep "texto" arquivo.txt
# Exibe 2 linhas antes (-B) e 2 depois (-A) da ocorrência
grep "capitulo" texto.txt -A 2 -B 2
# Mostra o número de linhas junto com o conteúdo de um arquivo
nl teste.txt
# Mostra as linhas finais de um arquivo texto
tail teste.txt
# Mostra as 10 ultimas linhas do arquivo teste.txt
tail -n 10 teste.txt
# Muda a data e hora de um arquivo ou cria um arquivo caso não exista
touch teste.txt
# Muda somente a data e hora do acesso ao arquivo
touch -a teste.txt
# Muda somente a data e hora da modificação
touch -m
# Altera da data e hora do arquivo para 01/10 e 12:30
touch -t 10011230 teste
# Exibe informações do kernel
uname -a
# Exibe informações da CPU
cat /proc/cpuinfo
# Exibe informações da memória
cat /proc/meminfo
# Mostra mensagens na tela (útil em scripts)
echo "Minha mensagem"
# Mostra o tempo de execução do sistema desde que foi ligado
uptime
# Reinicia o computador
reboot
# Desliga o computador de forma programável
shutdown
# Faz o sistema ser reiniciado após 20 minutos
shutdown -r 20
# Cancela a execução do shutdown
shutdown -c
# Desligar o computador imediatamente
shutdown -h now
# Reinicia o computador imediatamente
shutdown -r now
# Interrompe o processo em execução no terminal
ctrl+C
Comandos de Rede
Bash
# Verificar seu endereço IP e configurações de rede
ifconfig
# Exibe a configuração de uma placa de rede eth0
ifconfig eth0
# Ativa uma interface ‘eth0’
ifup eth0
# Desabilita uma interface 'eth0'
ifdown eth0
# Configura um IP estático para a interface
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
# Ativa a interface ‘eth0’ em modo DHCP
dhclient eth0
# Exibe tabela de rota
route -n
# Descobrir o endereço IP de um host
host [www.google.com](https://www.google.com)
# Exibe a configuração de uma placa de rede sem fio
iwconfig wlan0
# Exibe as redes sem fio disponíveis
iwlist scan
# Mostra quem está atualmente conectado no computador
who
# Mostra o horário do último boot do sistema
who -b
# Mostra o total de usuários conectados
who -q
# Mostra o nível de execução atual do sistema
who -r
# Mostra o cabeçalho das colunas
who -H
# Mostra o nome do usuário atual
whoami
# Mostra o nome do domínio de seu sistema
dnsdomainname
# Mostra ou muda o nome de seu computador na rede
hostname
# Mostra na tela o caminho percorrido entre os Gateways da rede
traceroute www.debian.org
# Mostra endereços numericamente ao invés de usar resolução DNS
traceroute -n www.debian.org
# Similar ao traceroute
tracepath [www.google.com](https://www.google.com)
# Mostra conexões de rede, tabela de roteamento, estatísticas...
netstat -a
# Estatísticas da interface de rede
netstat -i
# Lista conexões TCP
netstat -t
# Lista conexões UDP
netstat -u
# Envia uma mensagem para todos os terminais (somente root)
wall /tmp/mensagem.txt
echo "Mensagem de teste" | wall
Acessos Remoto com SSH
Bash
# Instalação do cliente SSH (Debian/Ubuntu)
apt-get install openssh-client
# Instalação do servidor SSH (Debian/Ubuntu)
apt-get install openssh-server
# Conectar a um servidor remoto
ssh usuario@192.168.1.20
# Conectar por uma porta especificada
ssh -p 2222 usuario@ip_remoto
Comandos para Manipulação de Contas
Bash
# Adiciona um usuário ao sistema de forma interativa
adduser fernando
# Adiciona um grupo ao sistema
addgroup usuarios
# Apaga um usuário do sistema
userdel fernando
# Força a remoção do usuário
userdel -f fernando
# Remove o diretório HOME do usuário junto com o usuário
userdel -r fernando
# Mostra os grupos que o usuário pertence
groups fernando
# Apaga um grupo do sistema
groupdel usuarios2
# Modifica a senha de um usuário
passwd fernando
# Especifica o número máximo de dias que a senha poderá ser usada
passwd -x 90 fernando
# Mínimo de dias para a senha ser alterada
passwd -n 10 fernando
# Bloqueia a conta do usuário
passwd -l fernando
# Desbloqueia a conta de um usuário
passwd -u fernando
Arquivos Compactados
.bz2: Arquivo compactado com o bzip2
.gz: Arquivo compactado com o gzip
.tar: Arquivo que armazena vários arquivos em um único (não compacta, apenas agrupa)
Bash
# Comprime um arquivo (substitui o original por arquivo.bz2)
bzip2 arquivo
# Descompacta um arquivo .bz2
bunzip2 arquivo.bz2
# Comprime um arquivo (substitui o original por arquivo.gz)
gzip arquivo
# Descompacta um arquivo .gz
gunzip arquivo.gz
# Cria um arquivo .tar contendo ‘arq1’, ‘ arq2′ e ‘pasta1’
tar -cvf arquivo.tar arq1 arq2 pasta1
# Extrai um arquivo .tar
tar -xvf arquivo.tar
Repositórios
Bash
# Excluir pacotes quebrados
sudo apt-get install -f
sudo dpkg --configure -a
# Excluir arquivos que não estão sendo utilizados
sudo apt-get autoclean
sudo apt autoremove
# Verificar se um pacote específico está instalado
dpkg -l | grep nome_pacote
# Para saber quantos pacotes estão instalados
dpkg -l | wc -l
# Listar pacotes Instalados
sudo apt list --installed
# Atualiza a lista de pacotes do repositório
apt update
# Atualiza seus pacotes instalados para as versões mais novas
apt upgrade
# Atualiza sua Distribuição (kernel, etc)
apt dist-upgrade
# Exibe a lista de repositórios configurados
cat /etc/apt/sources.list
# Remove um pacote
apt remove nome-pacote
Pacotes Redhat, Fedora, CentOS
Bash
# Baixa e instala um pacote rpm resolvendo dependências
yum install nome-pacote
# Instala um RPM local e tenta resolver dependências com repositórios
yum localinstall nome-pacote.rpm
# Atualiza todos os pacotes instalados no sistema
yum update
# Remove um pacote RPM
yum remove nome-pacote
# Lista todos os pacotes instalados no sistema
yum list
# Encontra um pacote no repositório
yum search nome-pacote
# Limpa o cache de pacotes baixados
yum clean packages
# Remove os arquivos de cache e cabeçalhos de pacotes
yum clean all
Instalação
Estrutura de diretórios e partições comuns na instalação do Linux.
Shell
$ tree
.
├── Instalação
│ ├── Swap
│ ├── /usr (via NFS)
│ └── Limitação 1024 cilindros
├── Gerenciador de Boot
│ └── LILO
│ │ ├── /etc/lilo.conf
│ │ └── lilo
│ └── GRUB
│ ├── /boot/grub/menu.lst
│ └── /sbin/grub-install
│
├── Partições Comuns
│ ├── /var
│ ├── /home
│ ├── /boot
│ ├── /(raiz)
│ └── /tmp
└── MBR (Master Boot Record)
```
## FHS - FileSystem Hierarchy Standart
> Hierarquia Padrão do Sistema de Arquivos
```shell
/ (Diretório raiz)
├── /home # Diretório de trabalho dos usuários
├── /root # Diretório de trabalho do administrador
├── /boot # Kernel do sistema - processo de boot
├── /bin # A maioria dos programas possui o seu arquivo executável
├── /sbin # Ferramentas para configurar e manutenção do sistema
├── /lib # Bibliotecas compartilhadas
├── /dev # Arquivos de dispositivos de hardware
├── /etc # Arquivos de configuração específicos à máquina
├── /tmp # Arquivos temporários
├── /mnt # Local de montagem temporária de dispositivos
├── /proc # Processos em execução (sistema de arquivos virtual)
├── /usr # Programas e dados de usuários (instalados)
├── /var # Contém arquivos de dados variáveis (logs, emails)
└── /opt # Pacotes de software adicionais/opcionais
Permissões
chmod: Altera as permissões de arquivos e diretórios.
chown: Altera o proprietário (usuário e grupo) de um arquivo ou diretório.
Cada arquivo tem três tipos de usuários que podem interagir com ele:
Proprietário: O usuário que criou e possui um arquivo/diretório.
Grupo: Todos os usuários que são membros do mesmo grupo.
Outros: Todos os outros usuários no sistema.
Exemplos de Permissões:
-
rw------- (600): Proprietário pode ler e escrever.
-
rw-r–r– (644): Proprietário pode ler e escrever; grupo e outros podem apenas ler.
-
rw-rw-rw- (666): Todos podem ler e escrever.
-
rwx------ (700): Proprietário pode ler, escrever e executar.
-
rwx–x–x (711): Proprietário pode ler, escrever e executar; grupo e outros podem apenas executar.
-
rwxr-xr-x (755): Proprietário pode ler, escrever e executar; grupo e outros podem ler e executar.
-
rwxrwxrwx (777): Todos podem ler, escrever e executar.
-
drwx------ (700): Apenas o proprietário pode ler e gravar neste diretório.
-
drwxr-xr-x (755): Todos podem ler o diretório, mas apenas o proprietário pode alterar seu conteúdo.
Uso do chown:
Sintaxe básica: chown [usuario:grupo] [arquivo/diretorio]
-
chown jerry:clients teste.txt: Define o proprietário para “jerry” e o grupo para “clients”.
-
chown jerry demo.txt: Altera apenas o proprietário do arquivo.
-
chown :clients demo.txt: Altera apenas o grupo do arquivo.
Opções comuns para chown e chmod:
-
-R: Recursivo, aplica as alterações a todos os arquivos e subdiretórios.
-
-v: Verbose, mostra um diagnóstico de cada arquivo afetado.
-
-c: Similar a -v, mas só informa se a alteração foi de fato realizada.