informações sobre ip e placa de rede
$ ip addr show
ou
$ ifconfig
sobre roteador e ip e rotas
$ ip route
ou
$ route
informações sobre
tudo que esta escutando/ aguardando uma conexão
$ netstat -l
mostra apenas protocolos do tcp
$ ss -ltn
$ ss -lt (resolve nomes não mostra o numero das portas)
mostra protocolos udp
$ ss -lun
$ ss -lu (resolve nomes não mostra o numero das portas)
DNS config fica em /etc/resolv.conf
DNS local /etc/hosts
sexta-feira, 20 de dezembro de 2019
analisar logs de sistema
os logs ficam no diretório /var/log
quem cuida do gerenciamente de logs é o rsyslog
o arquivo de configuração que cuida dos logs fica normalmente em
/etc/rsyslog.d/50-default.conf
/etc/rsyslog.conf
outro metodo simples para analisar o log do sistema é atravês do comando
$ dmesg
quem cuida do gerenciamente de logs é o rsyslog
o arquivo de configuração que cuida dos logs fica normalmente em
/etc/rsyslog.d/50-default.conf
/etc/rsyslog.conf
outro metodo simples para analisar o log do sistema é atravês do comando
$ dmesg
quinta-feira, 19 de dezembro de 2019
linux comandos basicos
ver em qual tty o linux está rodando
$ tty
mudar tty
ctrl + alt + F2
informações sobre ttys
$ w
trocar bash alterar bash passwd
$ usermod -s /usr/bin/zsh
$ reboot
listar informações de arquivos
$ ls -Srlah
é possivel quebrar o comando com o \
ls \
-S \
-r \
-l \
-a \
-h
File Globbing
* = tudo
procurar arquivos apenas txt
$ ls *.txt
procurar apenas arquivos que começam com 2 digitos e final txt
$ ls ??.txt
procurar qualquer aquivo que começa com a palavra file + qualquer outro digito .txt
$ ls file?.txt
procurar arquivos que começam apenas com a letra f minuscula ou F maiusculo .txt
ls [Ff]*.txt
ignorar arquivos com a letra FfDd
ls [^FfDd]*
$PATH = procura qualquer comando que está declarado nos diretorios
para executar scripts pelo shell sem o ./
vamos supor que há um diretorio chamado binsh no diretorio /home/$USER
$ PATH=$PATH:/home/$USER/binsh
saber usuario
$ whoami
echo $LOGNAME
echo $USER
mostra quem está logado no momento
$ who
informações sobre usuario
id nomedousuario
trocar usuario
su nomedousuario
mostra o historico de sessões
$ last
desligar o linux
$ poweroff
$ halt
$ shutdown -h now
$ init 0
informações sobre kernel e arquitetura
$ uname -a
$ uname -p
$ uname -r
navegar nos diretorios
voltar para o home
$ cd
$ cd ~
entrar em diretorio com espaço
$ cd 'nome do diretorio'
voltar diretorio
$ cd -
voltar diretorio
$ cd ..
Entrar em diretorio com espaços
$ cd nome\ do\ diretorio/
ou
$ cd 'nome do diretorio'
diferença entre caminho absoluto e caminho relativo
/home/$USER/.config = caminho absoluto
~/.config = caminho relativo
historico do bash
os comandos ficam guardados em .bash_history do diretorio /home
as configurações do history utiliza variaveis locais
para listar variaveis
$ set | grep HIST
o .bash_history pode ter apenas 2000 linhas
HISTFILESIZE=2000
quantos comandos o history ira gravar na sessão
HISTSIZE=1000
exercutar novamente um comando
$ history
encontre o numero da linha que tenha o comando
$ !numerodocomando
arquivo de configuração do bash de todos os usuarios
$ cat /etc/bash.bashrc
arquivo de configuração do bash do usuario local /home/$USER/.bashrc
$ cat .bashrc
OBS: o arquivo .profile do bash só é chamado em shells não interativos (modo texto)
variaveis globais e locais
env = variaveis globais
set = variaveis locais
para exportar uma variavel local para global
$ export NOMEDAVARIAVEL
digitar varios comandos
sobre aspas duplas e simples
"aspas duplas" = indentifica variaveis
'aspas simples' = trata tudo como texto
cortar qualquer palavra antes de 2 pontos
$ cut -d : -f 1 /etc/passwd
procurar tudo que começa com a e termina com z e que no meio tenha qualquer conteúdo
$ grep '^a.*z$' nomedoarquivo
procurar tudo que começa com letra a ou z no começo do arquivo
$ grep '^[aAzZ]' nomedoarquivo
procurar tudo que não começo com a ou z
$ grep '^[^aAzZ]' nomedoarquivo
procura qualquer palavra que tenha como segunda letra a
$ grep '^.[a]' nomedoarquivo
procura por qualquer caracter que começa com www
$ grep 'www*' nomedoarquivo
ver grupos existentes para permissões
$ cat /etc/group
adicionar o usuario há um grupo
$ usermod -a -G nomedogrupo usuario
criar um grupo (obs: os grupos ficam no arquivo /etc/group)
$ groupadd nomedogrupo
os arquivos a serem copiados quando se cria um usuario padrão fica em /etc/skel pode-se adicionar arquivos nesse diretório e quando novos usuarios forem criados terão esses arquivos em seu /home
criar usuario e adicionar a um grupo
$ useradd -G IDdogrupo -m -c nomedousuario nomedelogin
arquivo de configuração do comando useradd
/etc/default/useradd
definir senha de usuario
$ passwd nomedousuario
as senhas criptografadas de usuarios ficam em /etc/shadow
para informações sobre
$ man -k shadow
nas permissões sempre há 9 casas ex: rw-rw-r--
usuario dono/grupo dono/outros
as 3 primeiras casas sempre são relacionadas ao usuario
as proximas 3 casas são relacionadas ao grupo
e as proximas 3 relacionada a outros
r = read = 4
w = write = 2
x = execute = 1
forma octal ex: rw-rw-r--
rw = 4+2 = 6
rw = 4+2 = 6
r = 4 = 4
então no modo octal a permissão é 664
ex : # chmod 664 nomedoarquivoOUdiretorio
-rw-rw-r-- (permissão de leitura e escrita para usuario e grupo e apenas leitura para outros)
no chmod comando que dá permissões a diretorios e usuarios
usuarios são representados pela letra u
ex : # chmod u+r nomedoarquivoOUdiretorio
grupos são representados pela g
ex : # chmod g+w nomedoarquivoOUdireotiro
outros são representados pela letra o
ex : # chmod o+x nomedoarquivoOUdiretorio
apagar uma permissão no chmod
ex : # chmod u-w nomedoarquivoOUdiretorio
substituir uma permissão
ex: # chmod g=x nomedoarquivoOUdiretorio
aplicar uma permissão em tudo que esta dentro de um diretorio
e tudo que está dentro dele
# chmod u+rwx,g+rwx,o+rwx -R nomedodiretorio
mudar usuario ou grupo de arquivo
# chown usuario:grupo nomedoarquivo
mudar apenas usuario
# chown usuario: nomedoarquivo
mudar apenas grupo
# chown :grupo nomedoarquivo
mudar usuario e grupo em diretorio
# chown -R usuario:grupo nomedodiretorio
um link simbolico nada mais é que um atalho para outro arquivo
para criar um link
$ ln -s nomedoarquivo nomedolink
finalizar um link
$ unlink nomedolink
criar um link fisico
$ ln nomedoarquivo nomedolink
$ tty
mudar tty
ctrl + alt + F2
informações sobre ttys
$ w
trocar bash alterar bash passwd
$ usermod -s /usr/bin/zsh
$ reboot
listar informações de arquivos
$ ls -Srlah
é possivel quebrar o comando com o \
ls \
-S \
-r \
-l \
-a \
-h
File Globbing
* = tudo
procurar arquivos apenas txt
$ ls *.txt
procurar apenas arquivos que começam com 2 digitos e final txt
$ ls ??.txt
procurar qualquer aquivo que começa com a palavra file + qualquer outro digito .txt
$ ls file?.txt
procurar arquivos que começam apenas com a letra f minuscula ou F maiusculo .txt
ls [Ff]*.txt
ignorar arquivos com a letra FfDd
ls [^FfDd]*
$PATH = procura qualquer comando que está declarado nos diretorios
para executar scripts pelo shell sem o ./
vamos supor que há um diretorio chamado binsh no diretorio /home/$USER
$ PATH=$PATH:/home/$USER/binsh
saber usuario
$ whoami
echo $LOGNAME
echo $USER
mostra quem está logado no momento
$ who
informações sobre usuario
id nomedousuario
trocar usuario
su nomedousuario
mostra o historico de sessões
$ last
desligar o linux
$ poweroff
$ halt
$ shutdown -h now
$ init 0
informações sobre kernel e arquitetura
$ uname -a
$ uname -p
$ uname -r
navegar nos diretorios
voltar para o home
$ cd
$ cd ~
entrar em diretorio com espaço
$ cd 'nome do diretorio'
voltar diretorio
$ cd -
voltar diretorio
$ cd ..
Entrar em diretorio com espaços
$ cd nome\ do\ diretorio/
ou
$ cd 'nome do diretorio'
diferença entre caminho absoluto e caminho relativo
/home/$USER/.config = caminho absoluto
~/.config = caminho relativo
historico do bash
os comandos ficam guardados em .bash_history do diretorio /home
as configurações do history utiliza variaveis locais
para listar variaveis
$ set | grep HIST
o .bash_history pode ter apenas 2000 linhas
HISTFILESIZE=2000
quantos comandos o history ira gravar na sessão
HISTSIZE=1000
exercutar novamente um comando
$ history
encontre o numero da linha que tenha o comando
$ !numerodocomando
arquivo de configuração do bash de todos os usuarios
$ cat /etc/bash.bashrc
arquivo de configuração do bash do usuario local /home/$USER/.bashrc
$ cat .bashrc
OBS: o arquivo .profile do bash só é chamado em shells não interativos (modo texto)
variaveis globais e locais
env = variaveis globais
set = variaveis locais
para exportar uma variavel local para global
$ export NOMEDAVARIAVEL
digitar varios comandos
sobre aspas duplas e simples
"aspas duplas" = indentifica variaveis
'aspas simples' = trata tudo como texto
cortar qualquer palavra antes de 2 pontos
$ cut -d : -f 1 /etc/passwd
procurar tudo que começa com a e termina com z e que no meio tenha qualquer conteúdo
$ grep '^a.*z$' nomedoarquivo
procurar tudo que começa com letra a ou z no começo do arquivo
$ grep '^[aAzZ]' nomedoarquivo
procurar tudo que não começo com a ou z
$ grep '^[^aAzZ]' nomedoarquivo
procura qualquer palavra que tenha como segunda letra a
$ grep '^.[a]' nomedoarquivo
procura por qualquer caracter que começa com www
$ grep 'www*' nomedoarquivo
ver grupos existentes para permissões
$ cat /etc/group
adicionar o usuario há um grupo
$ usermod -a -G nomedogrupo usuario
criar um grupo (obs: os grupos ficam no arquivo /etc/group)
$ groupadd nomedogrupo
os arquivos a serem copiados quando se cria um usuario padrão fica em /etc/skel pode-se adicionar arquivos nesse diretório e quando novos usuarios forem criados terão esses arquivos em seu /home
criar usuario e adicionar a um grupo
$ useradd -G IDdogrupo -m -c nomedousuario nomedelogin
arquivo de configuração do comando useradd
/etc/default/useradd
definir senha de usuario
$ passwd nomedousuario
as senhas criptografadas de usuarios ficam em /etc/shadow
para informações sobre
$ man -k shadow
nas permissões sempre há 9 casas ex: rw-rw-r--
usuario dono/grupo dono/outros
as 3 primeiras casas sempre são relacionadas ao usuario
as proximas 3 casas são relacionadas ao grupo
e as proximas 3 relacionada a outros
r = read = 4
w = write = 2
x = execute = 1
forma octal ex: rw-rw-r--
rw = 4+2 = 6
rw = 4+2 = 6
r = 4 = 4
então no modo octal a permissão é 664
ex : # chmod 664 nomedoarquivoOUdiretorio
-rw-rw-r-- (permissão de leitura e escrita para usuario e grupo e apenas leitura para outros)
no chmod comando que dá permissões a diretorios e usuarios
usuarios são representados pela letra u
ex : # chmod u+r nomedoarquivoOUdiretorio
grupos são representados pela g
ex : # chmod g+w nomedoarquivoOUdireotiro
outros são representados pela letra o
ex : # chmod o+x nomedoarquivoOUdiretorio
apagar uma permissão no chmod
ex : # chmod u-w nomedoarquivoOUdiretorio
substituir uma permissão
ex: # chmod g=x nomedoarquivoOUdiretorio
aplicar uma permissão em tudo que esta dentro de um diretorio
e tudo que está dentro dele
# chmod u+rwx,g+rwx,o+rwx -R nomedodiretorio
mudar usuario ou grupo de arquivo
# chown usuario:grupo nomedoarquivo
mudar apenas usuario
# chown usuario: nomedoarquivo
mudar apenas grupo
# chown :grupo nomedoarquivo
mudar usuario e grupo em diretorio
# chown -R usuario:grupo nomedodiretorio
um link simbolico nada mais é que um atalho para outro arquivo
para criar um link
$ ln -s nomedoarquivo nomedolink
finalizar um link
$ unlink nomedolink
criar um link fisico
$ ln nomedoarquivo nomedolink
procurar arquivos e informações sobre comandos
procurar arquivos
$ updatedb
$ locate nomedo arquivo
$ find diretorio -iname nomedoarquivo
informações sobre arquivo
$ file nomedoarquivo
---
informações sobre o comando
$ which nomedoarquivo
$ whereis nomedocomando
$ type nomedocomando
$ updatedb
$ locate nomedo arquivo
$ find diretorio -iname nomedoarquivo
informações sobre arquivo
$ file nomedoarquivo
---
informações sobre o comando
$ which nomedoarquivo
$ whereis nomedocomando
$ type nomedocomando
sexta-feira, 13 de dezembro de 2019
segunda-feira, 2 de dezembro de 2019
ver todos os comandos do shell
listará todos os comandos que você pode executar.
$ compgen -c
listará todos os aliases que você pode executar.
$ compgen -a
listará todos os built-ins que você pode executar.
$ compgen -b
listará todas as palavras-chave que você pode executar.
$ compgen -k
listará todas as funções que você pode executar.
$ compgen -A function
listará todos os itens acima de uma só vez.
$ compgen -A function -abck
lista todos os executáveis
printf '%s\n' ${PATH//:/\/* }
site com informações sobre comandos: https://ss64.com/bash/
$ compgen -c
listará todos os aliases que você pode executar.
$ compgen -a
listará todos os built-ins que você pode executar.
$ compgen -b
listará todas as palavras-chave que você pode executar.
$ compgen -k
listará todas as funções que você pode executar.
$ compgen -A function
listará todos os itens acima de uma só vez.
$ compgen -A function -abck
lista todos os executáveis
printf '%s\n' ${PATH//:/\/* }
site com informações sobre comandos: https://ss64.com/bash/
domingo, 1 de dezembro de 2019
extrair initrd
*** extrair initrd ***
Extract:
zcat initrd.img | cpio -idm
*** compactar initrd ***
find . | cpio -o -H newc | gzip -9 > initrd.img
OBS: você deve estar dentro do director da nova initrd para compacta-la
Extract:
zcat initrd.img | cpio -idm
*** compactar initrd ***
find . | cpio -o -H newc | gzip -9 > initrd.img
OBS: você deve estar dentro do director da nova initrd para compacta-la
Assinar:
Comentários (Atom)