Você está na página 1de 70

home

gabi 123456
root 123456

pra parar a maquina, logar e /sbin/halt


1 diretório da arvore de diretório
2 root ?
3 i ii e iii estao corretasa
4 /dev
5 é possivel definir mais de uma partição
6 dois usuarios
7 y indica qual DISPOSITIVO QUE CONTEM A PARTIÇÃO
8 verdadeira, é opcional
9 sda
10 swap
este arquivo eh a msg q aparece apos o login e so o root pode altera-lo
cmd cat eh pra exibir o conteudo do arquivo

conteudo do motd

----

cat /etc/issue
cat /etc/motd
-----

clear p limpar cmd


CTRL D faz logout
pwd saber qual diretorio vc ta

ALT F1
ALT F2
ALT F3
alterna entre os terminais, possivel usar 6 terminais

tty1 tty2 tty3 eh como fica pra identificar os terminais q podem estr logados em usuarios
diferentes inclusive
passwd troca a senha

pra trocar senha pelo root pro usuario aluno1 eh so digitar passwd aluno1

O ROOT CONSEGUE TROCAR TODAS AS SENHAS MAS CADA USUARIO NORMAL SO


CONSEGUE TROCAR A SUA PROPRIA
cat .bash_history

fc -l pra ver os ultimos usados

logou ok
vim ArqNome
[20:56] GABRIELLA DESTRO BORGES

logou ok

vim ArqNome
vim gatos
enter
aparece tela de editor
i pra entrar modo inserção

digita 4 linhas de especies de gato

ESC
:w pra escrever

:q pra sair

ls pra ver os arquivos


cat gatos pra ler o conteudo que acabamos de gravar
----
vim meusgatos
i
escreve texto do arquivo
esc
:w
esc
:q
ls
cat meus gatos
----

copiando
arquivo .profile pro arquivo .profile_old

pra verificar se foram copiados


ls .profile_old
ESES DOIS ARQUIVOS SE ESTIVEREM ERRRADOS NAO CONSEGUE MAIS LOGAR
NAQUELE USUARIO

O VIM eh editor, pode CRIAR arquivo novo e EDITAR arquivos ja existentes

PRA EDITAR ARQUIVI .PROFILE


vim .profile
pra sair :quit

pra editar é só apertar i quando tiver c aruqivo aberto

p entrar em modo inserçao


digita conteudo

e ai ESC

:wq pra salvar e quitar em seguida

tuod isso no aluno2@

ORDEM DE COMO AS COISAS ACONTECEM QUANDO FAZEMOS LOGIN

.profile e .bashrc nessa ordem

SEM LOGIN SÓ EXECUTA O BASH


SOMENTE QUANDO PASSA O LOGIN, EH Q ELE PASSA PELO BASHRC E PELO
PROFILE
pesquisar

____________________
atividade
ls -a → lista todos arquivos inclusive oculto

EDITAR ARQUIVO LIVROS

ls -a
se nao tem livros cria com
vim livros
i
(digita conteudo do arquivo)
esc
:w
:q

ls → p ver o arquivo
cat livros --> p ler o arquivo livros

PRA EDITAR COMANDOS COLOCANDO APELIDO É SÓ EDITAR O .BASHRC :

PRA EDITAR COMANDOS APENAS PRA ESTA SESSAO DE LOGIN PODE USAR
alias limpando=clear por exemplo, SEM ESPAÇO entre limpando=clear

se quiser editar pra sempre o comando tem q editar o bashrc


INCLUSIVE essa sintaxe pode ser usada no proprio .bashrc entao pra editar oficial:
vim .bashrc
onde ta # aliases no final do arquivo
antes do if [-f bash_aliases etc
colocar alias limpando=clear
aí tem que DESLOGAR (exit)
logar de novo
aí sim o comando funcionara pelo apelido na edição do .bashrc

excluindo linha é só digitar dd FORA DO MODO DE EDIÇÃO


p refazer a linha digita u
se quiser salvar com a alteraçao :wq

yy copiar
p colar

(FORA DO MODO EDIÇÃO TAMBEM), posiciona na linha q quer copiar, aperta yy, vai prar
onde quer colar e aperta p

y3 pegara a linha do cursor + as proximas duas


e pra colar, p

(vai sair sem fazer as alteraçoes)

p dividir janela no meio


ctrl W W em seguida, eh pra mudar de janela

p abrir arquivo especifico no split digitar


:split nomedoarquivo
ai vai ativar janela do arquivo aberto, pra voltar pra janela do primeiro ctrl W W, p voltar p
segundo ctrl W W dnv
PRA BUSCAR A PALAVRA LIVRO5 NO ARQUIVO
SE QUISER VER MAIS RESULTADOS BASTA IR APERTANDO N

pra tirar criptografia é só NÃO digitar nada no campo da senha e dar enter
copiando o arquivo q ta no /etc/vim/vimrc pro diretorio local como .vimrc

escolhendo os compiladores
ou env e verifica valor da variavel shell

SHELL CONFIGURADO PRO USUARIO :


vim comando
echo teste
esc
:wq
cat comando para ler o arquivo

para executar o arquivo com os comandos:

chmod 777 transforma comando em um executável e ./comando executa o executavel

executa comando e depois executa pwd em sequencia

mesma coisa :

ja aqui, se o primeiro funcionar, o segundo n executa pois || eh um ou :

se adicionar no arquivo o comando exit 1 isso seria como se tivesse falhado a execução
então no caso do ||, ele executaria os dois pois assumiria que o arquivo falhou na execução
por causa do exit 1 !!!
ou ctrl C para de vez a execução

mkdir pra criar pasta dir1

pra ter infos sobre a pasta dir1

CONTEUDO DE ALUNO2 USNADO CAMINHO ABSOLUTO:

ou

-------------------
pra ver o q tem no diretorio criado:

exibir infos da pasta (ls -ld )

exibir conteudo da pasta usando caminho absoluto: (ls -l)

-ls la
MOSTRA TUDO ,INCLUSIVE OS ARQUIVOS OCULTOS DO DIRETORIOO CORRENTE
apos quarta linha , vai chegar neste diretorio:

pra responder questao 4 :


só digitar cd ../../dir12/dir12b

entao cd . é o diretorio atual, cd .. volta um diretorio


no BIN temos os EXECUTÁVEIS

comandos c permissao p executar por usuario comum: echo, cp , cat

^ p ir vendo o q mais tem na mesma pasta q tem o sbin


BIN, ETC, DEV, SBIN ESTAO TODOS NO NIVEL /

questoes
halt so da p executar no root pq ta no sbin
o sbin so executaveis/comandos p root

echo $shell mostra qual bash ta usando

1. A
VERIFICAR VERSAO DO LINUX

criar diretorio e mostrar numero de subdiretorios


mostrando disco

LEGENDA DAS PERMISSOES PRA UM ARQUIVO

PERMISSAO DE GRUPO PERMISSAO DE USUARIO PERMISSAO PROS OUTROS

significa q usuario dono pode write read e acessar ,


grupo pode read e acessar , outros podem somente acessar

PERMISSÃO X PRA DIRETORIO É ACESSO MAS PERMISSÃO X PRA ARQUIVO É


PERMISSÃO PRA EXECUTAR !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
vim com1
echo aa
esc
:wq
((arquivo com1 gravado com comando echo aa))
cat com1
((le conteudo do arquivo))
ls -l com1 ---> ver permissao do arquivo criado

neste caso ai o usuario tentando executar vai ter permissao negada no arquivo pois nao tem
permissao x pro usuario:

P CONSEGUIR EXECUTAR TEM Q FAZER ESTE COMANDO


chmod a+x com1
pq ai sim :

SE TENTAR EDITAR UM ARQUIVO QUE NAO TEMOS PERMISSAO PRA WRITE:

SE TENTAR USAR COMO OUTPUT DIRETO P ESCREVER ARQUIVO SEM PERMISSAO


WRITE

PARA ADICIONAR PERMISSAO:


chmod u+r com1 adiciona permissao read pra usuario ao arquivo com1
PARA TIRAR PERMISSAO
chmod u-r com1 retira permissao de read p usuario ao arquivo com1
PARA ATRIBUIR DIRETAMENTE APENAS UM TIPO DE PERMISSAO
chmod u=r com1 atribui permissao diretamente apenas de leitura p usuario ao arquivo
com1

p adicionar duas permissoes de uma vez:

ver como ficou as permissoes:


ls -l com1

mexer com permissoes de mais de um grupo de uma vez num comando só :

USE VIRGULA

EXERCICIO PRA CASA


ler diretorio ls nomedodireitorio
acessar diretorio cd nomedodiretorio

EXERCICIO PERGUNTAS
ISO200 - SISTEMAS OPERACIONAIS II MAR/2021

GABRIELLA DESTRO BORGES, RA 20111099

____________________________________________________________________

1) a.
permite ao usuário dono executar o arquivo cujo nome é diretorio (i.e. adiciona
permissão de execução para usuário-dono do arquivo)

b.
permite que todo mundo leia e edite>salve o arquivo cujo nome é diretório (i.e.
atribui permissão de leitura (r) e gravação (w) para o grupo outros)

c.
permite leitura ao grupo ao qual o dono do arquivo faz parte (i.e. atribui permissão
de leitura (r) ao grupo atual, grupo do dono do arquivo)

d.
atribui permissão de leitura pro usuário atual, e leitura para todo mundo

____________________________________________________________________

2) a.
caso queira setar somente o usuário e manter as outras permissões default, sem
retirar permissões de nenhum outro grupo:
mkdir dirteste && chmod u=rwx dirteste → resultado: drwxr-xr-x

b.
caso queira setar somente o usuário e não deixar nenhuma permissão pra mais
ninguém:
mkdir dirteste && chmod 700 dirteste → resultado: drwx-------
____________________________________________________________________

3) a.
usuário tem permissão de ler, escrever, executar/acessar (se for arquivo ou diretório,
respectivamente)
grupo e outros, ambos têm permissão de ler e executar/acessar

b.
em ambos os casos abaixo, as permissões de todo mundo é retirada, muda
apenas o que andré quer fazer com as permissões de si próprio

chmod 700 ou chmod u=rwx, g-rwx, o-rwx > caso deseje que ele, proprietário, possa
ler, escrever e executar, mas grupo e outros não possam fazer nada com o arquivo.
chmod g-rwx, o-rwx > caso deseje apenas retirar todas as permissões para os outros
mas manter as atuais dele que estiverem lá

____________________________________________________________________

4) chmod 777 tmp

____________________________________________________________________

5) dr-s----wx: s é correspondente a x, então indica que é um arquivo executável e o alvo


em questão possui permissão, logo, nesta sintaxe corresponde a dizer que está
dando permissão x (execução/acesso) para o usuário dono (grupo u)!
a permissão dr-s----wx é correspondente à dr-x----wx:
significando que:
usuario tem permissão de executar e ler o arquivo (r e x)
grupo não tem permissão de nada (---), porém
outros tem permissão escrever/alterar e executar (w e x) mas não lê-lo

para fornecer esta mesma permissão em notação numérica, seria necessário


executar, portanto, chmod 503

____________________________________________________________________
6) O comando seguinte deve ser executado pelo root estando no nível / onde ele pode
visualizar pastas como sbin, media, lib etc :::::::: chmod 711 /sbin/halt
____________________________________________________________________

7) ao ativar o sticky bit no diretório /tmp, os usuários podem remover apenas seus
próprios arquivos.
____________________________________________________________________

8) o grupo dono do arquivo é aluno2


trocando umask:

UMASK É DEFINIDO POR SESSÃO ENTAO TODA VEZ Q FIZER LOGIN VAI MUDAR

pra setar pro mesmo login sempre tem q setar isso no .profile

terceira linha eh transformar tudo ao contrario, o q eh zero vira 1 e o q eh 1 virou zero

QUALQUER DIRETORIO QUE A GENTE CRIAR VAI TER A MESMA PERMISSAO DESSE
yy
Q EH equivalente à 111 101 101

> transforma 235 em octal


> nega tudo ( contrario)
> faz end com 777 em octal (q eh 111 111 111) entao se digito for 0 e octal é 1 , o resultado
é 0 pois ambos precisam ser 1 pro resultado ser 1

no caso acima entao o 110 011 001 ao fazer and com 111 111 111 q eh o 777, vai resultar
em 110 011 001
e as permissoes corrrespondentes q tiver 1 tao ativada e as q tiverem 0 estao desativadas

conferindo ao criar diretorio :

PARA PERMISSÃO DE DIRETÓRIO FAZER AND COM 777


PARA PERMISSÃO DE ARQUIVO FAZER AND COM 666

q neste caso resulta em


uma umask é responsavel tanto pela permissao de diretório quanto permissao de arquivo
a mesma umask

471

diretorio entao eh 011 000 110 = -wx---rw-

e agora pra arquivi:


no caso 216 e 317 sao diferentes, portanto pra calcular umask temos q usar apenas permissão de diretório

entao 216 eh a resposta cerrta da umask

COLOCANDO STICKY BIT:


_______________________________-

rwx-wxr-x
111011101
111 011 101 and com 777
111 111 111
111 011 101
negando agora v
000 100 010
que em octal eh
042
257
010 101 111
V not
101 010 000
V
AND 111 111 111 pra diretorio (pois 777)
=
101 010 000
r-x -w- ---

O GRUPO DONO DESSE ARQUIVO É JOSÉ


é desativada para scripts por motivos de segurança

https://www.hostinger.com.br/tutoriais/comando-chown-linux

SÓ PODE SER FEITA PELO ROOT


nao eh umask, eh chmod
entao conversao direta
153
001 101 011
--x r-x -wx pra diretorio ou --x r-x -wx pra arquivos
comando chmod entao conversao direta
010 000 000
2 0 0
chmod 200 arqui

chmod -R 2577 folder_name


chmod -R 4451 folder_name

Um S maiúsculo indica que o usuário dono do arquivo não tem ( - ) permissões de execução e que o bit SUID foi
definido. Pode-se dizer o mesmo do SGID. Um s minúsculo no segundo grupo de permissões indica que o grupo
dono do arquivo tem permissões de execução e que o bit SUID foi definido.

634 (pra arquivo eh 666)


634
110 010 100
v negando
001 101 011
and 110 110 110
v resultado
000 100 010
---r---w-

TODAS CORRETAs:
usar redirecionamento pra criar arquivo

3 arquivos foram criados contendo aa

ls de tudo q for arq[...]4

com interrogaçao eh apenas 1 caractere:


o terceiro echo $($v2) executa o q tem dentro da variavel
ISO200 - SISTEMAS OPERACIONAIS II abr/2021

GABRIELLA DESTRO BORGES, RA 20111099


1) Relacione três características de uma senha (password) válida.
● deve ter 6 ou mais caracteres
● pelo menos 2 caracteres alfabéticos + 1 caractere numérico ou caractere especial
● deve ter pelo menos 3 caracteres diferente das senhas antigas

2) Descreva, no padrão Linux, a segunda partição do terceiro disco SCSI


sdc2

3) Descreva, no padrão Linux, a segunda unidade lógica do primeiro disco rígido.


sda6

4) Uma sessão do bash pode ser do tipo login ou não login. Quais arquivos são lidos e fornecem
características (perfil) comuns a todos os usuários que iniciam uma sessão login e uma sessão não login?
.bashrc

5) Como é possível saber quais são os Shell disponíveis em seu sistema?


olhando os disponíveis no arquivo /etc/shell, como o exemplo abaixo:

6) Em qual arquivo do sistema pode-se identificar o Shell padrão da sua conta?


verificar o último parâmetro definido para o usuário no arquivo /etc/passwd

7) Como um usuário pode mudar o seu Shell padrão?


chsh –s pathrelativoproshelldesejado

8) Codifique uma linha com dois comandos de forma que:

a) Execute sempre os dois comandos.


echo bla ; echo ble

b) Execute o segundo comando se o primeiro funcionar.


echo bla && echo ble

c) Execute o segundo comando se o primeiro falhar.


echo bla || echo ble

9) Estando em seu diretório pessoal, utilize o comando cd com caminho absoluto e caminho relativo para
posicionar-se no diretório run que está definido no diretório var, que está definido no diretório raiz.
relativo, a partir do diretório pessoal home cd ../../var/run
absoluto, a partir do / cd var/run
10) Crie um arquivo chamado lixo1 e outro chamado lixo2 e mude suas permissões para leitura, gravação
e execução para o dono, leitura e execução para o grupo e execução para outros, e ligue o bit s (suid)
usando a notação numérica (octal) e a notação simbólica

sem o bit suid, o objetivo seria deixar a permissão em -rwxr-x--x


com o bit suid ligado, a permissão para ARQUIVO será -rwsr-x--x

octal : → chmod 4751 lixo1 → -rwsr-x--x

simbólica : → chmod u=rwxs,g=rx,o=x lixo2 → -rwsr-x--x

11) Quais permissões serão criadas para arquivos e diretórios, com umask 462?

↓ diretório ↓ ↓ arquivo ↓
4 6 2
100 110 010
not == 011 001 101 not == 011 001 101
and 777 111 111 111 and 666 110 110 110
=== 011 001 101 === 010 000 100

-wx--xr-x | -w----r--

→ prova real ←
com umask: 0022
diretório test0022 permissão diretório: drwxr-xr-x

arquivo arquivo0022 permissão arquivo: -rw-r--r--

com umask: 0462


diretório test462 permissão diretório: d-wx--xr-x

arquivo arquivo462 permissão arquivo: --w----r--


12) Qual deve ser a umask de sua conta para que os arquivos criados na sessão atual tenham permissões
de leitura e gravação para o dono, gravação para o grupo e leitura para outros usuários, e que os
diretórios criados tenham permissão RWX para o user, -W- para o grupo e R_X para outros.

rw--w-r-- → 110 010 100 → ! → 001 101 011 → && (111 111 111) → 001 101 011 → 1 5 3

13) Como fazer para efetivar os modos de permissões do exercício anterior, somente para as sessões
login shell de sua conta?

colocando valores umask no arquivo ~/.profile

14) Crie um arquivo contendo um ou mais comandos e execute-o de três formas distintas.
arquivo script_echos:

executando:
sh < script_echos

sh script_echos

chmod a+x script_echos && ./script_echos

15) Como podemos nos certificar de que seu usuário tem o diretório corrente no caminho de pesquisa de
comandos?
3 maneiras distintas:
● se no arquivo ~/.profile daquele usuário (que fica oculto na pasta home dele) tiver o diretório de interesse
adicionado na variável PATH
● se ao digitar env, tiver o caminho desejado na variável de ambiente PATH
● se ao exibir especificamente a variável de ambiente PATH (digitando echo $PATH), for visualizado o
caminho desejado

16) Usando o comando touch crie os arquivos: Axyz123 Z1abc ABCD WXYZ 12345 1234 a-notas-1 50ABC
51xyz 52abc 53abc 54abc A-notas-1 W-arq ABC1 ABC21 ABC3 ABC31 AbCd Abcz a-tipo-1x A-tp-x1
A-abc-50 A-51 B-60 C-69 D-70

touch Axyz123 Z1abc ABCD WXYZ 12345 1234 a-notas-1 50ABC 51xyz 52abc 53abc 54abc A-notas-1 W-arq
ABC1 ABC21 ABC3 ABC31 AbCd Abcz a-tipo-1x A-tp-x1 A-abc-50 A-51 B-60 C-69 D-70
17) Usando metacaracteres codifique comandos ls -l, para listar arquivos cujos nomes:
a) Iniciem por uma letra maiúscula e terminem por um número entre 0 e 9.
ls -l [A-Z]*[0-9]
b) Iniciem por um número entre 50 e 53.
ls -l 5[0-3]*
c) Tenham pelo menos dois “-“.
ls -l *-*-*
d) Iniciem por letra maiúscula ou minúscula e tenham pelo menos um número entre 0 e 9.
ls -l [a-zA-Z]*[0-9]*
e) Tenham somente quatro letras, todas maiúsculas.
ls -l [A-Z][A-Z][A-Z][A-Z] retorna minúscula também, solução q achei foi ls -l [[:upper:]][[:upper:]][[:upper:]][[:upper:]]
f) Tenham somente cinco números entre 0 e 9.
ls -l [0-9][0-9][0-9][0-9][0-9]
g) Tenham somente quatro letras, maiúsculas ou minúsculas.
ls -l [a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z]
h) Iniciem por letra maiúscula e terminem por um número entre 50 e 69.
ls -l [A-Z]*[5-6][0-9]
i) Iniciem por “a” ou “A” e terminem com o número 1.
ls -l [aA]*1
j) Iniciem por ABC e tenham mais um único caractere qualquer.
ls -l ABC?

18) Crie um arquivo chamado diretórios e insira nesse arquivo todo o conteúdo de seu diretório pessoal,
do diretório /etc e do diretório /home

home ; root ; etc


ls -l -a ~ > diretorios ; ls -l -a / >> diretorios ; ls -l -a /etc >> diretorios

Você também pode gostar