From 23a0407ef9440d265524342292e151a43bdefc48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o?= Date: Fri, 24 Apr 2026 17:30:44 -0300 Subject: [PATCH 1/3] entrega: atividade 1 --- noturno/lab/fsbitbybit/atividade1/atv1.sh | 14 +++++++++++++ .../lab/fsbitbybit/atividade1/comecaComA.txt | 0 noturno/lab/fsbitbybit/atividade1/dados.txt | 20 +++++++++++++++++++ noturno/lab/fsbitbybit/atividade1/gmail.txt | 2 ++ noturno/lab/fsbitbybit/atividade1/semNum.txt | 15 ++++++++++++++ noturno/lab/fsbitbybit/atividade1/temA.txt | 1 + 6 files changed, 52 insertions(+) create mode 100755 noturno/lab/fsbitbybit/atividade1/atv1.sh create mode 100644 noturno/lab/fsbitbybit/atividade1/comecaComA.txt create mode 100644 noturno/lab/fsbitbybit/atividade1/dados.txt create mode 100644 noturno/lab/fsbitbybit/atividade1/gmail.txt create mode 100644 noturno/lab/fsbitbybit/atividade1/semNum.txt create mode 100644 noturno/lab/fsbitbybit/atividade1/temA.txt diff --git a/noturno/lab/fsbitbybit/atividade1/atv1.sh b/noturno/lab/fsbitbybit/atividade1/atv1.sh new file mode 100755 index 0000000..b3187a2 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade1/atv1.sh @@ -0,0 +1,14 @@ +touch dados.txt +echo -e "nome: Pablo\nemail: pablo@gmail.com\nidade: 2\nnome: Rick Astley\nemail: rick@rolling.com\nidade: 20000000\nnome: Toguro\nemail: sabor@gmail.com\nidade: 30\nnome: Gabriel Caramez\nemail: linux@cinema.com\nidade: ?\nnome: Shia Labeouf\nemail: just@doit.com\nidade: 30\nnome: Drew Gooden\nemail: roadwork@headISureHopeItDoes.com\nidade: 30\nnome: Chorão\nemail: SóOsSk@tesSabem.com" dados.txt + +touch gmail.txt +grep "gmail.com" dados.txt > gmail.txt + +touch semNum.txt +grep -v [[:digit:]] dados.txt > semNum.txt + +touch temA.txt +grep -c "a" dados.txt > temA.txt + +touch comecaComA.txt +grep '^A' dados.txt > comecaComA.txt diff --git a/noturno/lab/fsbitbybit/atividade1/comecaComA.txt b/noturno/lab/fsbitbybit/atividade1/comecaComA.txt new file mode 100644 index 0000000..e69de29 diff --git a/noturno/lab/fsbitbybit/atividade1/dados.txt b/noturno/lab/fsbitbybit/atividade1/dados.txt new file mode 100644 index 0000000..ac492a3 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade1/dados.txt @@ -0,0 +1,20 @@ +nome: Pablo +email: pablo@gmail.com +idade: 2 +nome: Rick Astley +email: rick@rolling.com +idade: 20000000 +nome: Toguro +email: sabor@gmail.com +idade: 30 +nome: Gabriel Caramez +email: linux@cinema.com +idade: ? +nome: Shia Labeouf +email: just@doit.com +idade: 30 +nome: Drew Gooden +email: roadwork@headISureHopeItDoes.com +idade: 30 +nome: Chorão +email: SóOsSk@tesSabem.com diff --git a/noturno/lab/fsbitbybit/atividade1/gmail.txt b/noturno/lab/fsbitbybit/atividade1/gmail.txt new file mode 100644 index 0000000..c3c0569 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade1/gmail.txt @@ -0,0 +1,2 @@ +email: pablo@gmail.com +email: sabor@gmail.com diff --git a/noturno/lab/fsbitbybit/atividade1/semNum.txt b/noturno/lab/fsbitbybit/atividade1/semNum.txt new file mode 100644 index 0000000..8c8937c --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade1/semNum.txt @@ -0,0 +1,15 @@ +nome: Pablo +email: pablo@gmail.com +nome: Rick Astley +email: rick@rolling.com +nome: Toguro +email: sabor@gmail.com +nome: Gabriel Caramez +email: linux@cinema.com +idade: ? +nome: Shia Labeouf +email: just@doit.com +nome: Drew Gooden +email: roadwork@headISureHopeItDoes.com +nome: Chorão +email: SóOsSk@tesSabem.com diff --git a/noturno/lab/fsbitbybit/atividade1/temA.txt b/noturno/lab/fsbitbybit/atividade1/temA.txt new file mode 100644 index 0000000..b6a7d89 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade1/temA.txt @@ -0,0 +1 @@ +16 From cf94a35e6f2c132148623076483cdfb9791219ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o?= Date: Tue, 28 Apr 2026 14:22:00 -0300 Subject: [PATCH 2/3] entrega: atividade 2 --- noturno/lab/fsbitbybit/atividade2/config.txt | 20 +++++++++++ noturno/lab/fsbitbybit/atividade2/script.sh | 38 ++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 noturno/lab/fsbitbybit/atividade2/config.txt create mode 100755 noturno/lab/fsbitbybit/atividade2/script.sh diff --git a/noturno/lab/fsbitbybit/atividade2/config.txt b/noturno/lab/fsbitbybit/atividade2/config.txt new file mode 100644 index 0000000..dcad404 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade2/config.txt @@ -0,0 +1,20 @@ +HELLOSERVIDOR=192.168.1.1 +HELLOPORTA=8080 +HELLOAMBIENTE=desenvolvimento +HELLODB_HOST=192.168.1.1 +HELLODB_PORT=5432 +HELLODB_USER=admin +HELLODB_PASSWORD=senha123 +HELLODB_NAME=Driver +HELLOAPI_KEY=esqueciDaChaveOhMeuDeusDeNovoNãoToCansadoDisso +HELLOJWT_SECRET=secreto +HELLODEBUG=false +HELLOSMTP_HOST=smtp.gmail.com +HELLOSMTP_PORT=587 +HELLOEMAIL_USER=Ax@ndTheHatchetman.com +HELLOEMAIL_PASSWORD=Cheesecake +HELLOLOG_LEVEL=INFO +HELLOLOG_FILE=logs/app.log +HELLOTIMEOUT_CONEXAO=30 +HELLOMAX_CONEXOES=100 +HELLO diff --git a/noturno/lab/fsbitbybit/atividade2/script.sh b/noturno/lab/fsbitbybit/atividade2/script.sh new file mode 100755 index 0000000..b997da0 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade2/script.sh @@ -0,0 +1,38 @@ +touch config.txt +echo "SERVIDOR=localhost +PORTA=8080 +AMBIENTE=desenvolvimento +DB_HOST=localhost +DB_PORT=5432 +DB_USER=admin +DB_PASSWORD=senha123 +DB_NAME=Driver +API_KEY=esqueciDaChaveOhMeuDeusDeNovoNãoToCansadoDisso +JWT_SECRET=secreto +DEBUG=false +SMTP_HOST=smtp.gmail.com +SMTP_PORT=587 +EMAIL_USER=Ax@ndTheHatchetman.com +EMAIL_PASSWORD=Cheesecake +LOG_LEVEL=INFO +LOG_FILE=logs/app.log +TIMEOUT_CONEXAO=30 +MAX_CONEXOES=100 +" > config.txt + +sed -i "s/localhost/192.168.1.1/" config.txt + +sed -i '/^#/d' config.txt + +sed -n '5,10p' config.txt + +sed -i "s/^/HELLO/" config.txt + +#Por que usar sed em vez de editar o arquivo manualmente? +#Em razão de facilitar algumas coisas em massa e fazer isso impressionantemente rápido. Redução de erros de escrita ou a produção deles em massa. + +#Qual é a diferença entre sed 's/old/new/' e sed 's/old/new/g'? +#O primeiro apenas faz o replace na primeira aparição da palavara, a flag g(global) fala para o sed fazer o replace em todas as linha em todas as aparições da palavra a ser renomeada + +#Como usar sed para fazer backup antes de modificar? +# sed config.txt > backup.config.txt From 6ee1b70bec382fd915b4ee84d62055d7db8b3e1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o?= Date: Thu, 7 May 2026 17:45:00 -0300 Subject: [PATCH 3/3] entrega: atividade 3,4,5,6,7,8 --- noturno/lab/fsbitbybit/atividade3/script.sh | 35 +++++++ noturno/lab/fsbitbybit/atividade3/vendas.txt | 16 ++++ .../lab/fsbitbybit/atividade4/onepiece.log | 73 +++++++++++++++ .../fsbitbybit/atividade4/relatorio_erros.txt | 18 ++++ noturno/lab/fsbitbybit/atividade4/script.sh | 92 +++++++++++++++++++ noturno/lab/fsbitbybit/atividade5/config.sh | 5 + .../atividade5/editor_exercicios.md | 34 +++++++ noturno/lab/fsbitbybit/atividade6/script.sh | 53 +++++++++++ .../lab/fsbitbybit/atividade7/relatorio.txt | 1 + noturno/lab/fsbitbybit/atividade7/script.sh | 9 ++ .../atividade8/fileToAddToDirectory.txt | 1 + noturno/lab/fsbitbybit/atividade8/script.sh | 14 +++ .../lab/fsbitbybit/atividade8/undoScript.sh | 5 + 13 files changed, 356 insertions(+) create mode 100755 noturno/lab/fsbitbybit/atividade3/script.sh create mode 100644 noturno/lab/fsbitbybit/atividade3/vendas.txt create mode 100644 noturno/lab/fsbitbybit/atividade4/onepiece.log create mode 100644 noturno/lab/fsbitbybit/atividade4/relatorio_erros.txt create mode 100755 noturno/lab/fsbitbybit/atividade4/script.sh create mode 100644 noturno/lab/fsbitbybit/atividade5/config.sh create mode 100644 noturno/lab/fsbitbybit/atividade5/editor_exercicios.md create mode 100755 noturno/lab/fsbitbybit/atividade6/script.sh create mode 100644 noturno/lab/fsbitbybit/atividade7/relatorio.txt create mode 100755 noturno/lab/fsbitbybit/atividade7/script.sh create mode 100644 noturno/lab/fsbitbybit/atividade8/fileToAddToDirectory.txt create mode 100755 noturno/lab/fsbitbybit/atividade8/script.sh create mode 100755 noturno/lab/fsbitbybit/atividade8/undoScript.sh diff --git a/noturno/lab/fsbitbybit/atividade3/script.sh b/noturno/lab/fsbitbybit/atividade3/script.sh new file mode 100755 index 0000000..81b7861 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade3/script.sh @@ -0,0 +1,35 @@ +touch vendas.txt + +echo "produto:preco:quantidade +monitor:800:12 +webcam:120:8 +headset:250:15 +SSD_500GB:400:7 +RAM_16GB:350:10 +fonte_750W:450:5 +gabinete:600:3 +mousepad:45:25 +hub_USB:80:18 +cabo_HDMI:35:22 +ventilador:90:14 +pasta_termica:25:30 +suporte_notebook:65:11 +carregador_rapido:180:9 +cabo_tipo_c:40:28" > vendas.txt + + +awk -F: '$2 > 100 {print $1}' vendas.txt + +awk -F: '{print $1, $2*$3}' vendas.txt + +awk -F: '{sum += $3} END {print sum}' vendas.txt + + +#Por que usar awk em vez de cut ou grep? +# Para esse caso com esse tipo de estrutura o comando grep foi feito para realizar esse tipo de extração de dados, dessa maneira, ele possui uma versatiliade maior para consultas que o cut e o grep não possuem. O cut por sua vez é como um simples comando SELECT do SQL. + +#Como usar awk para processar arquivos CSV? +#Da mesma maneira porque arquivos csv seguem esse mesmo formato, no entanto, usam vírgulas no lugar de ":". E o awk da mesma maneira consegue fazer a distinção e manipular os dados da mesma maneira. + +#Qual é a diferença entre awk e sed? +#O sed é um comando bem poderoso para manipulação de exeibição quanto mudança de dados assim o awk. Entretanto, o awk é melhor em consideração ao sed para manipulação e mudançad e dados estruturados. diff --git a/noturno/lab/fsbitbybit/atividade3/vendas.txt b/noturno/lab/fsbitbybit/atividade3/vendas.txt new file mode 100644 index 0000000..e0c1026 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade3/vendas.txt @@ -0,0 +1,16 @@ +produto:preco:quantidade +monitor:800:12 +webcam:120:8 +headset:250:15 +SSD_500GB:400:7 +RAM_16GB:350:10 +fonte_750W:450:5 +gabinete:600:3 +mousepad:45:25 +hub_USB:80:18 +cabo_HDMI:35:22 +ventilador:90:14 +pasta_termica:25:30 +suporte_notebook:65:11 +carregador_rapido:180:9 +cabo_tipo_c:40:28 diff --git a/noturno/lab/fsbitbybit/atividade4/onepiece.log b/noturno/lab/fsbitbybit/atividade4/onepiece.log new file mode 100644 index 0000000..c3b55dc --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade4/onepiece.log @@ -0,0 +1,73 @@ +2026-05-06 14:00:00 INFO Hacker anônimo iniciando operação: 'Descobrir_ONE_PIECE' +2026-05-06 14:05:30 DEBUG Escaneando rede em busca de servidores de Oda +2026-05-06 14:10:15 INFO Localizando IP do escritório de Eiichiro Oda em Tóquio +2026-05-06 14:15:45 DEBUG Tentando quebrar firewall com force brute attack +2026-05-06 14:20:10 WARN Firewall muito mais resistente que o esperado - nível profissional +2026-05-06 14:25:30 INFO Exploração de vulnerabilidade zero-day iniciada +2026-05-06 14:30:00 CRITICAL Firewall ultrapassado com sucesso +2026-05-06 14:30:25 ALERT Sistema de segurança do servidor detectou intrusão +2026-05-06 14:30:40 INFO Hacker acessando banco de dados de manuscritos +2026-05-06 14:31:00 DEBUG Procurando por arquivo: 'ONE_PIECE_REVELACAO_FINAL.txt' +2026-05-06 14:31:15 ERROR Arquivo não encontrado - sistema de criptografia muito forte +2026-05-06 14:31:45 INFO Hacker testando credenciais de acesso - admin/admin +2026-05-06 14:32:10 CRITICAL Acesso de administrador obtido - senha era 'LuffyEhOKing123' +2026-05-06 14:32:30 ALERT Hacker navegando diretório raiz do servidor +2026-05-06 14:32:45 INFO Procurando por arquivos de enredo do One Piece +2026-05-06 14:33:00 DEBUG Encontrado: /home/oda/secretos/one_piece_final_spoilers.zip +2026-05-06 14:33:15 CRITICAL Hacker iniciando download do arquivo +2026-05-06 14:33:30 INFO 50% do arquivo baixado +2026-05-06 14:33:45 INFO 100% do arquivo baixado com sucesso +2026-05-06 14:34:00 DEBUG Arquivo descompactado: one_piece_final_spoilers.pdf +2026-05-06 14:34:15 INFO Hacker abrindo arquivo - ansiedade extrema detectada +2026-05-06 14:34:30 WARN Lendo arquivo: 'A VERDADE SOBRE O ONE PIECE' +2026-05-06 14:34:45 DEBUG Conteúdo do arquivo: 'O One Piece são os AMIGOS que fazemos ao longo da jornada' +2026-05-06 14:35:00 ERROR HACKER ENTRANDO EM ESTADO DE CHOQUE +2026-05-06 14:35:15 CRITICAL REAÇÃO DETECTADA: Risadas incrédulas +2026-05-06 14:35:30 CRITICAL SEGUNDA REAÇÃO: Fúria extrema +2026-05-06 14:36:00 ERROR 'VINTE ANOS!!! VINTE ANOS DA MINHA VIDA LENDO ESSA BOSTA!!!' +2026-05-06 14:36:30 CRITICAL Hacker começando a chutar seu próprio computador +2026-05-06 14:37:00 DEBUG Logs mostram digitação agressiva: 'ODA É UM GÊNIO DO MAL' +2026-05-06 14:37:45 INFO Hacker ainda conectado ao servidor - em estado cataléptico +2026-05-06 14:38:15 ALERT Localização do hacker rastreada pelo FBI +2026-05-06 14:38:30 INFO Agentes do FBI se aproximando do local +2026-05-06 14:39:00 CRITICAL BATIDA NA PORTA DETECTADA +2026-05-06 14:39:15 ALERT Hacker tenta apagar os rastros - delete files iniciado +2026-05-06 14:39:30 ERROR Comando bloqueado - FBI já assumiu controle remoto do servidor +2026-05-06 14:39:45 INFO 'FBI! ABRA A PORTA!' +2026-05-06 14:40:00 CRITICAL Hacker sendo preso em flagrante +2026-05-06 14:40:15 DEBUG Handcuffs aplicados - resistência mínima detectada +2026-05-06 14:40:30 INFO Hacker sendo levado para van do FBI +2026-05-06 14:41:00 ALERT Reclamações contínuas: 'VINTE ANOS!!! VINTE ANOS!!!' +2026-05-06 14:41:30 CRITICAL Prisioneiro gritando sobre o final do One Piece na van +2026-05-06 14:42:00 DEBUG Agentes do FBI em estado de confusão total +2026-05-06 14:42:30 INFO Prisioneiro: 'EU SÓ QUERIA SABER SE O TESOURO EXISTIA!' +2026-05-06 14:43:00 CRITICAL Prisioneiro: 'MAS NÃO, É AMIZADE! AMIZADE! AMIZADE!' +2026-05-06 14:43:30 WARN Agente do FBI: 'Meu Deus, esse cara está mais puto do que nós esperávamos' +2026-05-06 14:44:00 DEBUG Prisioneiro sendo levado para delegacia +2026-05-06 14:44:30 INFO Prisioneiro continuando rant: 'LUFFY MERECIA UM TESOURO DE VERDADE!' +2026-05-06 14:45:00 CRITICAL Prisioneiro: 'E AGORA EU PERDI VINTE ANOS POR CAUSA DISSO!'' +2026-05-06 14:45:30 ALERT Agente do FBI puxando pano sobre rosto do prisioneiro +2026-05-06 14:46:00 INFO Entrevista na delegacia iniciada +2026-05-06 14:46:30 DEBUG Interrogador: 'Você sabe o que fez?' +2026-05-06 14:47:00 CRITICAL Prisioneiro: 'INVADI O COMPUTADOR DO ODA PARA DESCOBRIR UM TESOURO!' +2026-05-06 14:47:30 ERROR Prisioneiro: 'MAS NÃO EXISTE TESOURO! SÃO AMIGOS!' +2026-05-06 14:48:00 CRITICAL Prisioneiro aos prantos: 'VINTE ANOS! VINTE ANOS LENDO ONE PIECE!'' +2026-05-06 14:48:30 WARN Interrogador entendendo finalmente a verdadeira tragédia +2026-05-06 14:49:00 DEBUG Silêncio constrangedor na sala de interrogatório +2026-05-06 14:49:30 INFO Interrogador: ''...então você invadiu o servidor porque estava com raiva do final?' +2026-05-06 14:50:00 CRITICAL Prisioneiro: 'EU NÃO ESTAVA COM RAIVA! EU ESTAVA COM ESPERANÇA!' +2026-05-06 14:50:30 CRITICAL Prisioneiro: 'ESPERANÇA DE QUE HOUVESSE UM TESOURO DE VERDADE!' +2026-05-06 14:51:00 ERROR Prisioneiro: 'MAS NADA! NADA! APENAS AMIGOS!' +2026-05-06 14:51:30 ALERT Documentação de prisão completa +2026-05-06 14:52:00 INFO Acusação: Invasão não autorizada de servidor +2026-05-06 14:52:30 INFO Acusação: Roubo de propriedade intelectual +2026-05-06 14:53:00 INFO Acusação: Traição emocional ao mangá One Piece +2026-05-06 14:54:00 CRITICAL Sentença: 3 anos de prisão + 10 anos de terapia +2026-05-06 14:54:30 DEBUG Prisioneiro sendo levado para cela +2026-05-06 14:55:00 CRITICAL Últimas palavras: 'ODA VOCÊ É UM DESGRAÇADO! VINTE ANOS!'' +2026-05-06 14:55:30 INFO Cela 47 - Prisioneiro sedado +2026-05-06 14:56:00 ERROR Nota do interrogador: 'Nunca vi alguém tão traumatizado por um mangá' +2026-05-06 14:57:00 ALERT Recomendação: Enviá-lo para prisão longe de qualquer acesso a mangás +2026-05-06 15:00:00 INFO Eiichiro Oda recebendo relatório do FBI sobre o incidente +2026-05-06 15:00:30 DEBUG Oda: *risada de demônio* +2026-05-06 15:01:00 CRITICAL Oda: 'Perfeito. O meu plano funcionou até em criminosos' diff --git a/noturno/lab/fsbitbybit/atividade4/relatorio_erros.txt b/noturno/lab/fsbitbybit/atividade4/relatorio_erros.txt new file mode 100644 index 0000000..407b024 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade4/relatorio_erros.txt @@ -0,0 +1,18 @@ +2026-05-06 14:31:15 ERROR Arquivo não encontrado - sistema de criptografia muito forte +2026-05-06 14:35:00 ERROR HACKER ENTRANDO EM ESTADO DE CHOQUE +2026-05-06 14:36:00 ERROR 'VINTE ANOS!!! VINTE ANOS DA MINHA VIDA LENDO ESSA BOSTA!!!' +2026-05-06 14:39:30 ERROR Comando bloqueado - FBI já assumiu controle remoto do servidor +2026-05-06 14:47:30 ERROR Prisioneiro: 'MAS NÃO EXISTE TESOURO! SÃO AMIGOS!' +2026-05-06 14:51:00 ERROR Prisioneiro: 'MAS NADA! NADA! APENAS AMIGOS!' +2026-05-06 14:56:00 ERROR Nota do interrogador: 'Nunca vi alguém tão traumatizado por um mangá' + 22 INFO + 18 CRITICAL + 14 DEBUG + 8 ALERT + 7 ERROR + 4 WARN + 1 'VINTE ANOS!!! VINTE ANOS DA MINHA VIDA LENDO ESSA BOSTA!!!' + 1 Prisioneiro: 'MAS NÃO EXISTE TESOURO! SÃO AMIGOS!' + 1 Prisioneiro: 'MAS NADA! NADA! APENAS AMIGOS!' + 1 Nota do interrogador: 'Nunca vi alguém tão traumatizado por um mangá' + 1 HACKER ENTRANDO EM ESTADO DE CHOQUE diff --git a/noturno/lab/fsbitbybit/atividade4/script.sh b/noturno/lab/fsbitbybit/atividade4/script.sh new file mode 100755 index 0000000..6bee6a7 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade4/script.sh @@ -0,0 +1,92 @@ +touch onepiece.log + +echo "2026-05-06 14:00:00 INFO Hacker anônimo iniciando operação: 'Descobrir_ONE_PIECE' +2026-05-06 14:05:30 DEBUG Escaneando rede em busca de servidores de Oda +2026-05-06 14:10:15 INFO Localizando IP do escritório de Eiichiro Oda em Tóquio +2026-05-06 14:15:45 DEBUG Tentando quebrar firewall com force brute attack +2026-05-06 14:20:10 WARN Firewall muito mais resistente que o esperado - nível profissional +2026-05-06 14:25:30 INFO Exploração de vulnerabilidade zero-day iniciada +2026-05-06 14:30:00 CRITICAL Firewall ultrapassado com sucesso +2026-05-06 14:30:25 ALERT Sistema de segurança do servidor detectou intrusão +2026-05-06 14:30:40 INFO Hacker acessando banco de dados de manuscritos +2026-05-06 14:31:00 DEBUG Procurando por arquivo: 'ONE_PIECE_REVELACAO_FINAL.txt' +2026-05-06 14:31:15 ERROR Arquivo não encontrado - sistema de criptografia muito forte +2026-05-06 14:31:45 INFO Hacker testando credenciais de acesso - admin/admin +2026-05-06 14:32:10 CRITICAL Acesso de administrador obtido - senha era 'LuffyEhOKing123' +2026-05-06 14:32:30 ALERT Hacker navegando diretório raiz do servidor +2026-05-06 14:32:45 INFO Procurando por arquivos de enredo do One Piece +2026-05-06 14:33:00 DEBUG Encontrado: /home/oda/secretos/one_piece_final_spoilers.zip +2026-05-06 14:33:15 CRITICAL Hacker iniciando download do arquivo +2026-05-06 14:33:30 INFO 50% do arquivo baixado +2026-05-06 14:33:45 INFO 100% do arquivo baixado com sucesso +2026-05-06 14:34:00 DEBUG Arquivo descompactado: one_piece_final_spoilers.pdf +2026-05-06 14:34:15 INFO Hacker abrindo arquivo - ansiedade extrema detectada +2026-05-06 14:34:30 WARN Lendo arquivo: 'A VERDADE SOBRE O ONE PIECE' +2026-05-06 14:34:45 DEBUG Conteúdo do arquivo: 'O One Piece são os AMIGOS que fazemos ao longo da jornada' +2026-05-06 14:35:00 ERROR HACKER ENTRANDO EM ESTADO DE CHOQUE +2026-05-06 14:35:15 CRITICAL REAÇÃO DETECTADA: Risadas incrédulas +2026-05-06 14:35:30 CRITICAL SEGUNDA REAÇÃO: Fúria extrema +2026-05-06 14:36:00 ERROR 'VINTE ANOS!!! VINTE ANOS DA MINHA VIDA LENDO ESSA BOSTA!!!' +2026-05-06 14:36:30 CRITICAL Hacker começando a chutar seu próprio computador +2026-05-06 14:37:00 DEBUG Logs mostram digitação agressiva: 'ODA É UM GÊNIO DO MAL' +2026-05-06 14:37:45 INFO Hacker ainda conectado ao servidor - em estado cataléptico +2026-05-06 14:38:15 ALERT Localização do hacker rastreada pelo FBI +2026-05-06 14:38:30 INFO Agentes do FBI se aproximando do local +2026-05-06 14:39:00 CRITICAL BATIDA NA PORTA DETECTADA +2026-05-06 14:39:15 ALERT Hacker tenta apagar os rastros - delete files iniciado +2026-05-06 14:39:30 ERROR Comando bloqueado - FBI já assumiu controle remoto do servidor +2026-05-06 14:39:45 INFO 'FBI! ABRA A PORTA!' +2026-05-06 14:40:00 CRITICAL Hacker sendo preso em flagrante +2026-05-06 14:40:15 DEBUG Handcuffs aplicados - resistência mínima detectada +2026-05-06 14:40:30 INFO Hacker sendo levado para van do FBI +2026-05-06 14:41:00 ALERT Reclamações contínuas: 'VINTE ANOS!!! VINTE ANOS!!!' +2026-05-06 14:41:30 CRITICAL Prisioneiro gritando sobre o final do One Piece na van +2026-05-06 14:42:00 DEBUG Agentes do FBI em estado de confusão total +2026-05-06 14:42:30 INFO Prisioneiro: 'EU SÓ QUERIA SABER SE O TESOURO EXISTIA!' +2026-05-06 14:43:00 CRITICAL Prisioneiro: 'MAS NÃO, É AMIZADE! AMIZADE! AMIZADE!' +2026-05-06 14:43:30 WARN Agente do FBI: 'Meu Deus, esse cara está mais puto do que nós esperávamos' +2026-05-06 14:44:00 DEBUG Prisioneiro sendo levado para delegacia +2026-05-06 14:44:30 INFO Prisioneiro continuando rant: 'LUFFY MERECIA UM TESOURO DE VERDADE!' +2026-05-06 14:45:00 CRITICAL Prisioneiro: 'E AGORA EU PERDI VINTE ANOS POR CAUSA DISSO!'' +2026-05-06 14:45:30 ALERT Agente do FBI puxando pano sobre rosto do prisioneiro +2026-05-06 14:46:00 INFO Entrevista na delegacia iniciada +2026-05-06 14:46:30 DEBUG Interrogador: 'Você sabe o que fez?' +2026-05-06 14:47:00 CRITICAL Prisioneiro: 'INVADI O COMPUTADOR DO ODA PARA DESCOBRIR UM TESOURO!' +2026-05-06 14:47:30 ERROR Prisioneiro: 'MAS NÃO EXISTE TESOURO! SÃO AMIGOS!' +2026-05-06 14:48:00 CRITICAL Prisioneiro aos prantos: 'VINTE ANOS! VINTE ANOS LENDO ONE PIECE!'' +2026-05-06 14:48:30 WARN Interrogador entendendo finalmente a verdadeira tragédia +2026-05-06 14:49:00 DEBUG Silêncio constrangedor na sala de interrogatório +2026-05-06 14:49:30 INFO Interrogador: ''...então você invadiu o servidor porque estava com raiva do final?' +2026-05-06 14:50:00 CRITICAL Prisioneiro: 'EU NÃO ESTAVA COM RAIVA! EU ESTAVA COM ESPERANÇA!' +2026-05-06 14:50:30 CRITICAL Prisioneiro: 'ESPERANÇA DE QUE HOUVESSE UM TESOURO DE VERDADE!' +2026-05-06 14:51:00 ERROR Prisioneiro: 'MAS NADA! NADA! APENAS AMIGOS!' +2026-05-06 14:51:30 ALERT Documentação de prisão completa +2026-05-06 14:52:00 INFO Acusação: Invasão não autorizada de servidor +2026-05-06 14:52:30 INFO Acusação: Roubo de propriedade intelectual +2026-05-06 14:53:00 INFO Acusação: Traição emocional ao mangá One Piece +2026-05-06 14:54:00 CRITICAL Sentença: 3 anos de prisão + 10 anos de terapia +2026-05-06 14:54:30 DEBUG Prisioneiro sendo levado para cela +2026-05-06 14:55:00 CRITICAL Últimas palavras: 'ODA VOCÊ É UM DESGRAÇADO! VINTE ANOS!'' +2026-05-06 14:55:30 INFO Cela 47 - Prisioneiro sedado +2026-05-06 14:56:00 ERROR Nota do interrogador: 'Nunca vi alguém tão traumatizado por um mangá' +2026-05-06 14:57:00 ALERT Recomendação: Enviá-lo para prisão longe de qualquer acesso a mangás +2026-05-06 15:00:00 INFO Eiichiro Oda recebendo relatório do FBI sobre o incidente +2026-05-06 15:00:30 DEBUG Oda: *risada de demônio* +2026-05-06 15:01:00 CRITICAL Oda: 'Perfeito. O meu plano funcionou até em criminosos'" > onepiece.log + +touch relatorio_erros.txt + +cat onepiece.log | grep "ERROR" >> relatorio_erros.txt + +cat onepiece.log | cut -d' ' -f3 | sort | uniq -c | sort -rn >> relatorio_erros.txt + +cat onepiece.log | grep "ERROR" | cut -d' ' -f4- | sort | uniq -c | sort -rn | head -5 >> relatorio_erros.txt + +#Como o kernel gerencia o buffer entre pipes? +#Cada kernel tem um buffer padrão para o '|' de mais ou meno 2^16 bytes(varia de OS). Quando o processo cat por exemplo executa o pipe pega o output do comando e armazena ele no buffer do pipe, quando o outro processo lê retira os dados do buffer e o utiliza. + +#Por que sort|uniq é mais eficiente que uniq? +#Por conta da limitação do uniq em só ser capaz de remover duplicatas que são consecutivas. Então utilizando o sort você agrupa os valores iguais e faz com o uniq seja efetivo em seu trabalho. + +#Como redirecionar stderr e stdout para arquivos diferentes? +# stdout possui o código de 1 e stderr possui o código de 2. Então para armazenar ou redirecionar os dois outputs ficaria assim: comando 1> ou >(default é o 1) stdout.txt 2>stderr.txt diff --git a/noturno/lab/fsbitbybit/atividade5/config.sh b/noturno/lab/fsbitbybit/atividade5/config.sh new file mode 100644 index 0000000..9c94c06 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade5/config.sh @@ -0,0 +1,5 @@ +#Se você pudesse jantar com qualquer pessoa do mundo quem seria? +#Quantos macacos são necessários para trocar uma lâmpada +#Bear sits right next to man - https://www.youtube.com/watch?v=rbE53XUtVw0 +#100% necessário dizer que ursos são o melhor animal da natureza porque eles gostam de ficar sentados descansando olhando pro nada +# Não tinha nenuma linha eu naveguei usando a ↓ 5x vezes e apertei i para inserir. Se fosse para substituir uma palavara da pra usar "e" ou "b" ou "w" para selecionar uma palavra e depois utilizar "c" para apagar entrar em modo de inserção. diff --git a/noturno/lab/fsbitbybit/atividade5/editor_exercicios.md b/noturno/lab/fsbitbybit/atividade5/editor_exercicios.md new file mode 100644 index 0000000..56f5241 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade5/editor_exercicios.md @@ -0,0 +1,34 @@ +# Nano vs Vim + +Eu não tenho muita experiência com o nano para compará-lo com o Vim. Mas ele parece ser mais simples para um iniciante utilizando o editor de texto pela primeira vez, pelo menos foi assim que eu me senti quando eu usei pela primeira vez. +Quanto ao Vim, eu uso o hx editor que usa os mesmo atalhos do Vim, o que posso dizer que é que pra quem gosta de navegar o desktop apenas com teclado é uma ótima experiência. + +## Atalhos do Vim +Os atalhos mais usados são "i" para inserir antes da seleção e "a" depois da seleção. O "I" insere no começo da linha em que há uma seleção e o "A" no fim da linha. +O "b" e "e" se movem de para a primeira e última letra de um certo grupo de símbolos ou letras, respectivamente. Já o "B" e o "E" servem para ir a primeira letra de uma palavra e a a última letra de uma palavra, a diferença que ele conta para ir para a próxima palavra apenas " ". +O "w" e o "W" funcionam de maneira similar mas n se prende a última letra mas a palavra em si ele sempre pega o último espaço depois da palavra selecionada caso seja um espaço. +O "c" apaga a seleção e entra no modo de seleção e o "C" maiúsculo cria um segundo cursor na próxima linha que tem algo escrito abaixo do que você possui selecionado para remover esse outro curso basta apertar "," +O "y" para copiar a seleção. O " y" para copiar o que está selecionado para o clipboard do sistema. +O "p" para colocar. +O "x" para selecionar a linha inteira. O "%" para selecionar o arquivo inteiro. +O "d" para deletar e copiar o deletado. +O "o" para criar uma linha logo abaixo da seleção e o "O" para criar uma linha logo acima. + +Em modo default :w para salvar, :wq para salvar e fechar, :q! para fechar independente de alterações, :open para navegar no diretório atual, /search para procurar por algo no texto, enter para confirmar a escolha e "n" para a próxima aparição e "N" para a anterior + +Aqui estão alguns que eu uso diariamente + + +## comando sed para atualizar palavra na quinta linha +sed '5s/Se/SE/' config.sh + +# Perguntas + +## Qual editor é melhor para editar configs do sistema? +Eu uso o vim pelas razões explicitadas acima + +## Como usar vim em modo não-interativo (via sed)? +sed "s/old/new/g" file.txt > new.txt + +## Por que visudo é importante? +Porque ele evita que você salve um arquivo com erros, quando você salva ele verifica se tem algo de errado e gera um prompt perguntando se você quer retornar ao editor de texto ou não. É ótimo para edição de arquivos críticos que pontencialmente podem borkar o sistema caso sejam editadas incorretamente. diff --git a/noturno/lab/fsbitbybit/atividade6/script.sh b/noturno/lab/fsbitbybit/atividade6/script.sh new file mode 100755 index 0000000..f9cbd12 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade6/script.sh @@ -0,0 +1,53 @@ +sudo useradd -m -s /bin/bash sally +sudo useradd -m -s /bin/bash TowMater +sudo useradd -m -s /bin/bash Doc + +sudo groupadd best_friend +sudo groupadd girlfriend +sudo groupadd mentor + +sudo usermod -aG best_friend TowMater +sudo usermod -aG girlfriend TowMater +sudo usermod -aG girlfriend sally +sudo usermod -aG mentor Doc + +sudo mkdir -p /var/testes_permissoes +cd /var/testes_permissoes + +touch gas644.txt +touch lifeIsAHighway755.txt +touch sallyMakesMcQueenDirtyClip600.txt +echo "I ruined your childhood +https://www.youtube.com/watch?v=8ZRPiKFtCoA" > sallyMakesMcQueenDirtyClip600.txt +touch materIsBased700.txt + +sudo chown root:girlfriend /var/testes_permissoes/* +sudo chmod 644 /var/testes_permissoes/gas644.txt +sudo chmod 755 /var/testes_permissoes/lifeIsAHighway755.txt +sudo chmod 600 /var/testes_permissoes/sallyMakesMcQueenDirtyClip600.txt +sudo chmod 700 /var/testes_permissoes/materIsBased700.txt + +ls -l /var/testes_permissoes/ + +cat /var/testes_permissoes/gas644.txt +su - sally -c "cat /var/testes_permissoes/gas644.txt" +su - Doc -c "cat /var/testes_permissoes/gas644.txt" +su - TowMater -c "cat /var/testes_permissoes/gas644.txt" +su - TowMater -c "echo "Lightning McQueen : I’m serious! He’s won three Piston Cups! +Mater : [spits out fuel] He did WHAT in his cup?" >> /var/testes_permissoes/gas644.txt" + +su - sally -c cat "/var/testes_permissoes/sallyMakesMcQueenDirtyClip600.txt" +su - Doc -c cat "/var/testes_permissoes/sallyMakesMcQueenDirtyClip600.txt" +su - TowMater -c cat "/var/testes_permissoes/sallyMakesMcQueenDirtyClip600.txt" +su - TowMater -c "echo "WHAT, WTF IS THAT????" >> /var/testes_permissoes/sallyMakesMcQueenDirtyClip600.txt" + +#O primeiro número conta para o dono do arquivo, o segundo para grupos e o terceiro para outros usuários fora de grupos +#4 - apenas leitura; 2 - apenas escrita; 1 - apenas execução +#Somando os valores você permite que o usuário ou grupo tenha múltiplas permissões + + + + + + + diff --git a/noturno/lab/fsbitbybit/atividade7/relatorio.txt b/noturno/lab/fsbitbybit/atividade7/relatorio.txt new file mode 100644 index 0000000..a929ad4 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade7/relatorio.txt @@ -0,0 +1 @@ +root:x:0:0::/root:/usr/bin/bash diff --git a/noturno/lab/fsbitbybit/atividade7/script.sh b/noturno/lab/fsbitbybit/atividade7/script.sh new file mode 100755 index 0000000..dfc9bff --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade7/script.sh @@ -0,0 +1,9 @@ +touch relatorio.txt + +# ls -l | awk '$1 == "drwxrwxrwx" {print $9}' usando o pipe +find ~ -type f -perm 777 >> relatorio.txt + +#ls -l | awk 'substr($1, 4, 1) == "s" {print $9}' +find ~ -perm -4000 >> relatorio.txt + +grep ":0:" /etc/passwd >> relatorio.txt diff --git a/noturno/lab/fsbitbybit/atividade8/fileToAddToDirectory.txt b/noturno/lab/fsbitbybit/atividade8/fileToAddToDirectory.txt new file mode 100644 index 0000000..8c71067 --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade8/fileToAddToDirectory.txt @@ -0,0 +1 @@ +Ola eu sou um arquivo, blublblublu, I am unda da wata, blublublu diff --git a/noturno/lab/fsbitbybit/atividade8/script.sh b/noturno/lab/fsbitbybit/atividade8/script.sh new file mode 100755 index 0000000..51997ac --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade8/script.sh @@ -0,0 +1,14 @@ +mount + +df -h + +dd if=/dev/zero of=image.iso bs=1M count=100 + +mkfs.ext4 image.iso + +sudo mkdir -p /mnt/myimage +sudo mount -o loop image.iso /mnt/myimage + +sudo cp ./fileToAddToDirectory.txt /mnt/myimage + +sudo umount /mnt/myimage diff --git a/noturno/lab/fsbitbybit/atividade8/undoScript.sh b/noturno/lab/fsbitbybit/atividade8/undoScript.sh new file mode 100755 index 0000000..3bba5fc --- /dev/null +++ b/noturno/lab/fsbitbybit/atividade8/undoScript.sh @@ -0,0 +1,5 @@ +sudo rmdir /mnt/myimage 2>/dev/null + +rm -f image.iso + +echo "Image file and mount point removed."