sexta-feira, 5 de janeiro de 2024

Permissões do Linux

INTRODUÇÃO

Há uma diferença entre o superusuário (root) e o dono de um diretório (que alguns chamam de pasta) e/ou arquivo. Por exemplo, temos o usuário VOL (ou Fabio, ou Clodoaldo, ou Samuel, etc) que é criado ao instalar o sistema operacional Linux (seja ele Debian, Slackware, Kali, Ubuntu, Red Hat, etc) e você escolhe o nome que quiser para o usuário.

Este usuário não é o superusuário (o superusuário é o root [raiz]). O root é uma coisa, o usuário é outra coisa. O root pode ser qualquer pessoa que tenha a senha de root e acesse com "su -", "su", "sudo", etc, no terminal. Já veremos os comandos.

Nos diretórios e arquivos do Linux temos, grosso modo, três níveis: Dono, Grupo e Outros. Quem define, basicamente, as permissões para o Dono, para o Grupo e para os Outros é o root.

Aí surgem duas perguntas:

1. QUEM TEM PRECEDÊNCIA NAS PERMISSÕES: O DONO, O GRUPO OU OS OUTROS?

As permissões de um diretório têm precedência sobre as dos arquivos que ele contém. O Linux não deixa o Dono brigar com o Grupo e com os Outros. As permissões do Usuário/Dono, do Grupo e dos Outros são distintas, separadas, e você, sendo o cara que usa o sistema, tem de estar ciente disso, tem de raciocinar com os três níveis de permissão, principalmente com o Dono e o Grupo.

2. E SE EU SETAR UMAS PERMISSÕES PARA O DONO E OUTRAS DIFERENTES PARA O GRUPO?

O Linux não deixa isso acontecer. Caso você sete permissões somente para o Dono, por exemplo, as permissões para o Grupo continuam as mesmas, caso você setar permissões para o Grupo sem o parâmetro -R (recursivamente, veremos adiante) as permissões para os arquivos dentro do Grupo permanecem as mesmas e o Linux não deixa criar conflito, não deixa o Dono brigar com o Grupo e com os Outros.

Não confunda root com o Dono do diretório e/ou arquivo. O Dono é o dono, é como o Highlander, só pode haver um para diretórios e/ou arquivos. O Grupo é um conjunto de usuários colocados ali pelo root ou pelo proprietário, mas no fim das contas é o tal de root quem decide - como vimos -, e o root pode ser qualquer um que tenha a senha de superusuário (root). Os Outros são os outros, são todos aqueles que não são Dono e não fazem parte da patota do Grupinho decidido pelo root ou pelo dono.

No Linux, um arquivo ou diretório pode ter apenas um proprietário/dono e um grupo proprietário, não sendo possível ter dois proprietários. O proprietário/dono é o usuário que criou o arquivo ou diretório e tem direitos de acesso especiais a ele, como permissão de modificá-lo ou excluí-lo; ou é um usuário que não criou o diretório.


DESENVOLVIMENTO 1

Até aqui, é importantíssimo entender que o root é uma coisa e o Dono de diretórios e arquivos é outra; são distintos.

O root está acima do Dono, do Grupo e dos Outros. O root é o cara! E esse cara pode ser qualquer um (que tenha a senha de root)!

Por exemplo, o usuário lebowski é um cara chamado João Muhammad Wang da Silva Smith (na instalação do sistema ele poderia ter colocado o nome do usuário de João, de Muhammad, de Wang, de Silva, de Smith, etc, mas preferiu colocar o nome de lebowski). E este usuário lebowski, que é o CPF João Muhammad Wang da Silva Smith, é o Dono lebowski de algum diretório e/ou arquivo e pode fazer parte de um Grupo ou pode ser os Outros em relação a algum diretório e/ou arquivo. Quem decide é o root.

Então, a pessoa João Muhammad Wang da Silva Smith como root pode colocar o usuário lebowski (ele mesmo) como Outros em um determinado diretório e/ou arquivo, bem como pode colocar como Dono ou colocar na patota, no Grupo.

O importante é entender que você enquanto root deve abstrair do mundo e a partir daí enxergar você mesmo como um usuário qualquer, ou seja, neste momento você é o root, é o cara; você não é o lebowski, sequer você é o João Muhammad Wang da Silva Smith... você nem é você mesmo: você é o Superusurário, é o root.

O lebowski, neste momento, é um usuário que o root manipula como quiser e você é o root... pelo menos até deslogar do root e voltar a ser o lebowski com seus poderes limitados, sem poderes de super-vaca.
No Linux temos R de Read (em Português "Leitura"), W de Write (em Português "Escrita", mas entende-se aqui por Escrita/Gravação) e temos X de Execute (Execução).

Leitura - Concede a capacidade de ler, ou seja, visualizar o conteúdo do arquivo.

Escrita/Gravação - Entende-se aqueles diretórios e arquivos os quais um determinado usuário pode alterar, escrever e gravar no arquivo; concede a capacidade de modificar ou remover o conteúdo do arquivo; é a permissão mais cabulosa das três.

Execução - O usuário com permissões de execução pode executar um arquivo como um programa.

E temos os modos de acesso concernentes às permissões:

Ler
O acesso a um diretório significa que o usuário pode ler o conteúdo. O usuário pode ver os nomes dos arquivos dentro do diretório.

Escrever
Significa que o usuário pode adicionar ou excluir arquivos do diretório e pode modificar o conteúdo de um arquivo.

Executar
A execução de um diretório ou arquivo realmente não faz sentido na forma de acesso ao diretório ou arquivo, então pense nisso como uma permissão de passagem (não passageira, mas de passagem, atravessar). Por exemplo, um usuário deve ter acesso de execução ao diretório bin para executar o comando ls ou cd.

Então não confunda as permissões de forma geral com as permissões dos modos de acesso, isso reflete-se ao que veremos adiante com chown (change owner) e chmod (change mode).

Porém, antes temos o seguinte esquema:

O hífen (tracinho) indica que uma determinada permissão não está configurada, ou seja, o usuário não tem aquela permissão.

  • 0 Sem permissões --- = 0
  • 1 Permissão de Execução --x = 1
  • 2 Permissão de Escrita -w- = 2
  • 3 Permissão de Escrita e Execução: 1 (execute) + 2 (write) = 3 -wx
  • 4 Permissão de Leitura r-- = 4
  • 5 Permissão de Leitura e Execução: 4 (read) + 1 (execute) = 5 r-x
  • 6 Permissão de Leitura e Escrita: 4 (read) + 2 (write) = 6 rw-
  • 7 Todas as Permissões: 4 (read) + 2 (write) + 1 (execute) = 7 rwx
  • R de Read (Leitura) recebe o valor 4.
  • W de Write (Escrever/Gravar) recebe o valor 2.
  • X de Execution (Execução) recebe o valor 1.

Neste momento, você, neófito, pode estar se perguntando: "Agora colocaram números no meio da parada?"
Mas é simples, é o formato octal (são oito algarismos de 0 a 7).
O formato octal é um conjunto de oito números onde cada número define um tipo de acesso diferente.

Recebem esses valores (números) porque foram convencionados, apesar de que isso remonta aos primórdios de bits e bytes, mas não vem ao caso.

Veremos agora a saída do comando ls -l para vermos algumas permissões como exemplo.

# ls -l
total 52
-rw-r--r-- 1 root root 9644 abr 5 02:54 clamav-milter.conf
-rw-r--r-- 1 root root 26117 abr 5 02:54 clamd.conf
-rw-r--r-- 1 root root 5983 abr 5 02:54 freshclam.conf
drwxr-xr-x 12 root root 4096 mar 13 20:34 nftables
-rw-r--r-- 1 root root 0 mar 13 19:14 packages.txt


Vamos analisar a primeira parte da seguinte linha:

drwxr-xr-x 12 root root 4096 mar 13 20:34 nftables

  • Tem 10 caracteres no começo da linha (drwxr-xr-x).
  • Inicia com "d" que significa que é um diretório, os outros nove são as permissões propriamente ditas, três para cada: Dono, Grupo e Outros. rwx (dono), r-x (grupo) e r-x (outros).
  • O hífen, no caso, não é um separador, ele indica quando uma permissão não está configurada e as permissões aparecem em sequência rwx.

Traduzindo para octal:

  • rwx é 4+2+1 = 7.
  • r-x é 4+1 = 5
  • r-x é 4+1 = 5
Em octal a permissão é 755.

Aí você escolhe se quer trabalhar umas vezes com letras (rwx) e outras com números (421).
Esta linha:

-rw-r--r-- 1 root root 5983 abr 5 02:54 freshclam.conf


Tem os 10 caracteres iniciando com um hífen (traço) que estando no início da linha indica se tratar de um arquivo.

Seguindo o esquema r=4, w=2 e x=1 temos os nove caracteres restantes que são as permissões propriamente ditas:

rw- = 4+2 = 6
r-- = 4
r-- = 4

Permissão 644.

Lembrando que muitas vezes um programa ao ser instalado ele muda as permissões padrões do sistema operacional para suas próprias permissões, mas é para isso mesmo que existem os comandos, principalmente como root, para você alterar tudo e bagunçar todo o sistema.

# ls -l
lista as permissões dos diretórios e arquivos.

Caso queira listar um diretório ou arquivo em específico:

# ls -l nome_do_arquivo ou diretorio

Não me deterei em comandos aqui, pois temos que entender a lógica da coisa antes de ser um mero decorador de comandos. Os comandos você memoriza praticando e os manuais estão aí para auxiliar.
Dando um umask -S no mesmo lugar:

# umask -S u=rwx,g=rx,o=rx

u=usuário=dono, g=grupo e o=outros.

Podemos ver a diferença. A saída do umask refere-se às permissões padrões em relação ao sistema e a saída do ls -l refere-se aos diretórios e arquivos.

Em qualquer lugar (diretório) que você for, a saída do umask -S será sempre a mesma. Vá dando cd /home, cd /usr/src, cd /bin/X11, etc, e dando umask -S e verá que a saída é sempre a mesma.
A saída de ls -l muda de acordo com as permissões de cada diretório e arquivo.

Quando aparecer uma linha assim:

lrwxrwxrwx 1 root root 4 mar 18 17:58 zstdmt -> zstd

O "l" (letra éle) no início dos 10 caracteres indica se tratar de um link simbólico (symlink).

Agora ficou fácil de entender as permissões, a linha aí de cima tem as permissões:rwx - Dono;

rwx - Grupo;
rwx - Outros.
Permissão 777.

Depois do primeiro caractere à esquerda começam as permissões que são nove caracteres e quando tem hífen nos nove caracteres indica que tal permissão (r, w ou x) não está setada.

No primeiro caractere:

  • d -> indica que é um diretório;
  • hífen(-) -> indica que é um arquivo;
  • l -> indica que é um link simbólico.

Vamos ver o significado de toda a linha:

drwxr-xr-x 12 root root 4096 mar 13 20:34 nftables

  • d = tipo do arquivo (é um diretório)
  • rwxr-xr-x = permissões de acesso ao diretório ou arquivo ou symlink
  • 12 = número total de links para o arquivo ("atalhos") somado com o número de diretórios e arquivos dentro do diretório em questão
  • root = usuário proprietário do arquivo
  • root = grupo do arquivo
  • 4096 = tamanho do arquivo em bytes
  • mar = mês da última modificação
  • 13 = dia da última modificação
  • 20:34 = horário da última modificação
  • nftables = nome do arquivo ou diretório

ALTERANDO PERMISSÕES

# chmod 444 diretorio ou arquivo
ou
$ sudo chmod 444 diretorio ou arquivo


Podemos aplicar uma permissão recursivamente com o parâmetro "-R" de forma que todo o diretório e subdiretórios e arquivos também recebam esta permissão. Exemplo:

# chmod -R 750 diretorio ou arquivo

Obs.: A opção -R muda as permissões de TODOS os diretórios e arquivos que estão dentro do diretório. Por exemplo:

# chmod -R 777 nftables

mudará as permissões de TODOS os diretórios e arquivos incluindo os arquivos dentro dos diretórios dentro de nftables, TUDO ficará com as permissões 777. Use com cuidado.


ALTERANDO O DONO

Sintaxe:

chown [opções] [novo_proprietário] [:novo_grupo] nomes_arquivos

Alterar o dono do diretório ou arquivo para o usuário lebowski

# chown lebowski diretorio ou arquivo

Alterar o usuário (dono) e o grupo do diretório ou arquivo para dono lebowski e grupo patota:
# chown lebowski:patota nome_do_diretorio ou nome_do_arquivo

Vamos ver um pouco mais na realidade:

# adduser lebowski www-data
# cd /var/www
# chown -Rv www-data:www-data /var/www/
# chmod -Rv g+rw /var/www/

O comando adduser foi usado para colocar o usuário lebowski no grupo www-data, a patota do Apache.

Depois o root entrou (cd, change directory) no diretório /var/www.

O comando chown (change owner) atribuiu os arquivos contidos em /var/www para o usuário e grupo www-data, ou seja, colocou o usuário www-data como dono e colocou o /var/www no grupo www-data. E atribuiu recursivamente (-R) e verbosamente (v dá informações na saída do comando).

Pode ter um usuário e um grupo com o mesmo nome, mas não pode ter dois usuários com o mesmo nome e nem dois grupos com o mesmo nome.chown define quem é o proprietário do arquivo ou diretório.
chmod define quem tem permissão de fazer outras coisas dentro do arquivo ou diretório.

O comando chmod (change mode) adicionou permissões de leitura (r) e escrita (w) aos arquivos para os grupos a que pertencem, no caso www-data.
Percebam que pode ter mais de uma sintaxe:

# chmod g+rw diretorio ou arquivo
# chmod 755 diretorio ou arquivo

  • g+rw acrescenta essas permissões, caso não tenham.
  • g-rx tira essas permissões, caso tenham.
  • g=x elimina todas as permissões que tem no grupo e deixa com somente permissão de execução (x).

A mesma coisa com:
  • u+rwx;
  • u-rx;
  • u=r.

Lembrando:
  • u = Usuário/Dono;
  • g = Grupo;
  • o = Outros.


DESENVOLVIMENTO 2

Em relação ao bit "Set-User-ID" citado anteriormente de passagem (tema de casa para quem tiver interesse), caso der o comando abaixo:

# chmod us arquivo.txt

ativa o bit SUID e faz com que qualquer um que tente acessar esse arquivo o fará como sendo o proprietário do arquivo.

E se der o comando abaixo:

# chmod a=rw arquivo.txt

dará permissão de leitura e escrita para todos ao arquivo.txt (a de all, todos em Português).

Testando algumas coisas

No diretório root crie um diretório:

# mkdir teste

e dê um ls -l

# ls -l teste
total 0

Entre no teste:

# cd teste

Crie um arquivo dentro do diretório teste:

# vim teste1

Usei o vim, use teu editor de texto preferido.

Digite qualquer coisa dentro do arquivo. Salve e saia.

Volte ao root:

# cd

Dê um ls -l:

# ls -l teste
total 4
-rw-r--r-- 1 root root 6 abr 15 20:50 teste1

E vemos que o arquivo teste1 foi criado com as permissões padrões do umask para arquivos txt.

Vamos criar um diretório dentro de teste:

# cd teste
# mkdir teste2

Entrando no diretório teste2:

# cd /teste/teste2

Vamos criar um arquivo dentro de teste2:

# vim teste3

Digite qualquer coisa dentro, salve e saia.

Volte ao root:

# cd

Dê um ls -l no diretório e teste:

# ls -l teste
total 8
-rw-r--rr-- 1 root root 6 abr 15 20:50 teste1
drwxr-xr-x 2 root root 4096 abr 15 20:58 teste2

O comando não exibiu o arquivo dentro de teste2 porque não estamos no diretório teste2.

Percebam que as permissões padrões criadas para o diretório teste2 são diferentes das permissões do arquivo teste1, isso acontece porque o Linux cria permissões padrões diferentes para diretórios e arquivos.

Os diretórios, dentro da estrutura Linux, recebem umas permissões padrões e os arquivos outras, dependendo se o arquivo é texto ou binário.

A umask (user mask, máscara do usuário, grosso modo) é somente um padrão que pode ser alterado pelo root. Um diretório tem permissão de execução para que se possa entrar nele. Além disso, as permissões de um diretório tem precedência sobre as dos arquivos que ele contém.
Caso você alterar as permissões do diretório teste2 sem o parâmetro -R (recursivamente), as permissões do arquivo teste3 permanecerão as mesmas.

Caso você der um chmod 0 teste2:

# chmod 0 teste2

verá que o diretório teste2 ficará sem permissão nenhuma, mas o arquivo dentro continuará com as permissões anteriormente definidas.

Mas vamos entender mais um pouco.

# ls -l
-rw-r--rr-- 1 root root 6 abr 15 20:50 teste1
d--------- 2 root root 4096 abr 15 20:58 teste2

Agora vamos dar um:

# ls -l teste2

A saída será:

total 4
-rw-r--r-- 1 root root 6 abr 15 20:50 teste3

Isso acontece por que o comando "ls -l teste2" mostra somente as permissões do que está dentro do diretório teste2.
Para vermos as permissões de teste2 devemos digitar o comando ls -l sem parâmetros:

# ls -l
-rw-r--rr-- 1 root root 6 abr 15 20:50 teste1
d--------- 2 root root 4096 abr 15 20:58 teste2


Também temos o arquivo /etc/sudoers (man sudoers) que em sistemas Debian e derivados, além de alguns outros não derivados do Debian, é o arquivo que determina os privilégios de sudo.
A man page sudoers (Manual do sudoers) descreve também o grupo wheel.

Em sistemas Debian e derivados o grupo é chamado de sudo (SuperUser DO - SuperUsuário FAZ) e em outros sistemas como Red Hat e derivados o grupo é chamado de wheel (roda).

No arquivo /etc/sudoers do Debian, por exemplo, sequer toca no nome da patota do wheel.

Quando você usa sudo, su, etc, na realidade você está quase como root.

Para estar como root mesmo - o todo poderoso superusuário com plenos poderes de super-vaca - você precisa logar como root na inicialização do sistema. Porém, isto não é aconselhável e nem é necessário.

Entendendo um pouco as linhas do /etc/sudoers:

1. ALL=(ALL:ALL) ALL: O primeiro ALL representa todos os hosts, o segundo ALL indica todos os usuários e o terceiro ALL indica todos os grupos. O último ALL representa todos os comandos. Dar estes privilégios a um usuário o coloca no grupo sudo e o mesmo não precisa mais digitar a senha antes de um comando específico com sudo. E se não estiver na patota do sudo dará a mensagem: lebowski não está no arquivo sudoers.

2. ALL=(ALL) ALL: O primeiro ALL representa todos os hosts, o segundo ALL indica todos os usuários, como não tem o terceiro ALL o usuário colocado com estes privilégios não poderá executar comandos como outros grupos. O último ALL representa todos os comandos.

Para abrir o arquivo /etc/sudoers com o editor de texto padrão do sistema execute o comando:

$ sudo visudo

senão use o teu editor preferido:

# vim /etc/sudoers

Podes colocar o seguinte para teu usuário:

ALL=(ALL:ALL) NOPASSWD: ALL

Salve e saia. Não precisará mais digitar senha com sudo, exemplo:

$ sudo apt-get update

ou qualquer outro comando que precise de privilégios root não pedirá senha nunca.


CURIOSIDADE IMPORTANTE

No Debian e derivados se você digitar como usuário su ou su - verá a diferença no terminal:

$ su

digitando a senha mudará para:

#

As inicias "su" em si significam "Substitute User", substitui o ID do usuário e do grupo, ou seja, você entra temporariamente nessa condição.

su sem parâmetro mudará para o usuário em que está (no caso acima estava em lebowski). É a mesma coisa que digitar:

$ su lebowski

Para mudar de usuário:

$ su postgres

$ su usuario etc

A senha que pedirá é a senha do usuário digitado ali, não é a senha de root ou do seu usuário, no caso, lebowski.

Caso der falha de autenticação provavelmente é por que você não cadastrou senha para o usuário, ele só foi criado, mas não tem senha.

$ sudo passwd usuario

e digite a senha do seu usuário para logar e depois digite as duas senhas para o usuário.

Para mudar para outro usuário com ou sem poderes de root depende em qual grupo o usuário foi colocado. Caso estiver no grupo sudo terá privilégios de root.
Basta digitar su seguido do nome do usuário que se quer.

O su - (com hífen) sem parâmetro entra no diretório /home do usuário como root.

Pode utilizar também o comando usermod para inserir usuários, mudar diretórios, etc.

Mudando o nome lebowski para grande_lebowski:

# usermod -l lebowski grande_lebowski

Para trancar uma conta:

# usermod -L lebowski

Utilize a opção -U para destrancar:

# usermod -U lebowski

Para criar um usuário e um diretório /home para esse novo usuário use a opção -m do comando

# useradd -m grande_lebowski


CONCLUSÃO

Como vimos, é simples entender as permissões do Linux.

Procurei fazer uma abordagem geral, mas com certeza faltou alguma coisa, pois o assunto é extenso.

Muita gente confunde o Dono do diretório ou arquivo com o root, apesar de que o root pode ser (e é) dono de diretórios e arquivos, mas tem essa distinção.

Considerando o Dono e o Grupo pode-se setar as permissões ou restrições de acordo com o que você quer. Por exemplo, em relação ao Samba sempre há aquela dúvida entre as permissões do Samba e as permissões do sistema em si, porém, você entendendo isso agora as coisas ficam mais claras.

O root é o superusuário, é o cara... é praticamente o Superman do mundo Linux.

Aquele usuário que você dá o nome durante a instalação nem é você quando você está como root, nessa hora você é o root.

É Importante também entender o que significam as permissões de Leitura, Escrita e Execução, como vimos.

Quando você usa sudo, su, etc, na realidade você está quase como root.

O aconselhável é usar, por exemplo, o sudo e digitar a senha cada vez que for pedida no terminal, pois assim você tem tempo de pensar antes de fazer bobagem no sistema.

Em sistemas Debian e derivados o grupo é chamado de sudo e em outros sistemas como Red Hat e derivados o grupo é chamado de wheel.

Para estar como root mesmo - o todo poderoso superusuário com plenos poderes de super-vaca - você precisa logar como root na inicialização do sistema, porém, isto não é aconselhável e nem é necessário.

Mais exemplos de como lidar com as permissões no Linux encontramos nos links das referências abaixo:


quarta-feira, 27 de dezembro de 2023

Considerações acerca da Existência de Deus

   Comecemos pelo Gênesis.

   Deus criou o mundo em seis dias e no sétimo descansou. Aliás, o número da besta, 666, citado em Apocalipse vem daí, "Aquele que tem entendimento calcule o número da besta, pois é número de homem. Seu número é seiscentos e sessenta e seis"; a versão mais plausível é a de que, como Deus criou o homem no sexto dia, a repetição três vezes do número 6 é um deboche do (criado por Deus) demônio para com a Santíssima Trindade, o ser humano querendo ser Deus pela influência do capeta. Alguns dizem que 666 referia-se ao Imperador Romano Nero... bom, caso for isso, então o Apocalipse já foi, já passou e águas passadas não movem moinhos, além disso, quando o seu João escreveu o Apocalipse, Nero já estava morto de morte matada.

   Continuando com o Gênesis. Vemos que Deus criou um Jardim no Éden com a árvore da vida e com a arvore do fruto do conhecimento do bem e do mal no centro do tal jardim. Da árvore da vida (e de todas as outras árvores) Adão e Eva podiam comer, mas da tal árvore do conhecimento do bem e do mal não podiam, senão morreriam. 

   Aí começou toda a porcaria.

   "A serpente era o mais astuto de todos os animais dos campos (animais selváticos) que o Senhor Deus tinha formado. Ela disse à mulher: é verdade que Deus vos proibiu comer o fruto de toda árvore do jardim?"

   E aí degringolou toda a porcaria.

   Vejamos.

   Em primeiro lugar para quê diabos Deus criou um lugar que Ele mesmo chamava de Éden (Paraíso) e colocou uma restrição que é ao mesmo tempo uma tentação para suas queridas, puras e inocentes criaturas?

   Em segundo lugar, que diabo de Paraíso é esse onde o próprio Deus enfia lá uma "serpente", o mais astuto dos animais, todos criados por Ele mesmo?

   Deus, Onipotente (Todo Poderoso), Onisciente (Sabe Tudo) e Onipresente (está em Toda Parte), o triplo O, aquele que não teve início, não tem meio e não terá fim, o Eterno, o Todo Poderoso, etc, etc, etc, não podia imaginar a cacáca que daria colocando ali um animal astucioso maligno em meio às suas duas únicas criaturas puras e inocentes?

   Vamos adiante.

   Conceitualmente falando-se em Deus cientifica, religiosa e filosoficamente, este Ser é a vida eterna, quem acredita em Deus obrigatoriamente acredita na vida eterna e na alma, não há como dissociar um da outra. Verdadeiramente é o Todo Poderoso. Metafisicamente é a estrutura da realidade, é a própria realidade. Pois então, um deus e/ou vários deuses com características humanas é o que se chama de Mitologia. Não é o Deus de Cristo e de Subotai; é Crom, o deus mitológico de Conan, o bárbaro!

   É o que temos no Antigo Testamento, na Torah e no Alcorão. No Novo Testamento excetuam-se os Evangelhos, pois o Deus ali proposto por Cristo é um Deus corretamente metafísico, é o Pai, o Sabe Tudo, enfim, verdadeiramente o Todo Poderoso na correta acepção da expressão: o Todo Poderoso. Apesar de que Cristo elevou a coisa a um patamar inalcançável a nós, reles seres humanos, porém, veremos isso depois.

   Lembrando que a palavra "absoluto" no significado do dicionário é "o que se apresenta como acabado, pleno", "que não depende de ninguém, independente, soberano", etc.

   E "absoluto", num sentido filosófico, vai um pouco além do significado do dicionário; é "completo, pronto, acabado, pleno, soberano e que por si basta".

   E não estou falando do "absoluto" de Kant e outros filósofos do mesmo período.

   Deus, caso existir, Deus é absoluto, absoluto é Deus.

   Pois então, para quê diabos um Ser desses precisaria criar o mundo?

   Estava se sentindo tão sozinho, errando de bar em bar?

   Lembrando que um Deus com características humanas é mitologia. E mitologia é invenção humana.

   Vamos adiante.

   A Queda do Homem (e da Mulher também, sejamos justos).

   "E eis que ouviram o barulho {dos passos} do Senhor Deus que passeava no jardim, à hora da brisa da tarde. O homem e sua mulher esconderam-se da face do Senhor Deus, no meio das árvores do jardim. Mas o Senhor Deus chamou o homem e disse-lhe: 'Onde estás?'

  E ele respondeu: 'Ouvi o barulho dos vossos passos no jardim; tive medo porque estou nu e ocultei-me."

   Adão cobriu suas partes de vergonha, pois antes andavam tranquilamente peladões pelo Paraíso.

   E a porcaria toda continuou. O "Senhor Deus" perguntou se porventura Adão tinha comido do fruto da árvore que Ele havia proibido de comer.

   Aí começou o jogo de empurra-empurra que perdura até hoje na humanidade, um colocando a culpa e a responsabilidade no outro. Adão colocou a culpa na Eva que, por sua vez, colocou a culpa na "serpente"... e o tal Senhor Deus ferrou com os três. Onde Deus estava que não previu o excremento que ia dar?

   Aliás, sobre a "serpente" é interessante salientar que a Bíblia não fala qual o formato da serpente antes da merda feita, somente diz: "Então o Senhor Deus disse à serpente: 'Porque fizeste isso serás maldita entre todos os animais e feras dos campos; rastejarás sobre teu próprio ventre e comerás pó todos os dias de tua vida'".

   Supõe-se então que antes a serpente tinha cabeça, tronco e membros?

   Qual a forma e o formato da tal serpente antes de seduzir a Eva?

   A Bíblia não diz!

   Aquela imagem da cobrinha enrolada numa árvore oferecendo a maçã para a Eva é uma alegoria falsa, somente animais selváticos quadrúpedes otários acreditam naquilo ali. Sequer se sabe se realmente eram árvores as da vida e do conhecimento.

   Adiante.

   Vemos que, quando se apresentou a primeira oportunidade para o tal "Senhor Deus" ensinar o perdão para suas duas queridas criaturas, Ele optou por ensinar a vingança e o castigo. Nessa hora concordo com o escritor José Saramago quando afirmava que esse deus do Antigo Testamento é um deus cruel e vingativo; e Saramago afirmava isso geralmente em relação à passagem de Jó, que o tal "Senhor Deus" tentado pelo Satanás aceitou ferrar com Jó... claro que depois devolveu tudo em dobro para o coitado do Jó, mas qual a necessidade de primeiro castigar para depois premiar sendo que Jó fez absolutamente nada contra deus?

   Para testar a fé de Jó?

   Ora, lembrem que Deus é o Todo Poderoso, bastaria Ele ter olhado para o satanás, a serpente, e dito: "Cai fora, como se atreve a Me tentar?"

   Além disso, Deus já não havia condenado a serpente a rastejar?

   Satanás veio rastejando tentar o próprio Deus?!?

   A Bíblia não explica... e quem gosta das coisas subjetivas, mal ditas, ditas enviesadamente, distorções, misturas de verdades com mentiras, coisas mal explicadas, chavões, sofismas, é o pai da mentira.

   Isso não é deus, isso é o diabo. Esse tal "Senhor Deus" do Antigo Testamento parece-me o satanás, o pai da mentira que habilmente enganou os homens (e as mulheres) a escreverem tais coisas apresentando um deus cruel, vingativo e injusto ao extremo.

   E Deus expulsou o homem (e a mulher) do paraíso e condenou o homem a trabalhar pelo resto da vida: "E disse em seguida ao homem (somente ao homem): 'Porque ouviste a voz da tua mulher e comeste do fruto da árvore que eu te havia proibido de comer, maldita seja a terra por tua causa. Tirarás dela com trabalhos penosos o teu sustento todos os dias de tua vida'".

   Que bela mensagem: Trabalhar é um castigo penoso dado pessoalmente pelo Todo Poderoso.

   E somente o homem foi condenado a trabalhar, a mulher foi condenada a sofrer as dores do parto!

   Lembrando que o criador de tudo é Deus.

   Fazendo agora uma analogia; e lembrando que "Deus é Pai", bondoso, onisciente, etc.

   Imaginemos que um pai tem um filho de 12 anos e proíbe o filho de fumar maconha, porém, esse pai tem um amigo sabidamente maconheiro e sai para trabalhar deixando o filho e a esposa com o maconheiro. Ao voltar para o paraíso (seu lar) o pai encontra os três, filho, esposa e amigo, chapadões no sofá da sala.

   O pai diz para o filho e a esposa: "Não proibi de fumar maconha?"

   Eles respondem: "Foi teu amigo quem nos ofereceu."

   O pai dá uma bela surra no amigo e o faz sair rastejando da sua casa; e expulsa de casa (do paraíso) o filho de 12 anos e a esposa, "vão se virar, malditos".

   Que pai seria esse?

   Como classificaríamos tal pai?

   Perante o Eterno, não dá nem para considerar Adão e Eva tendo 12 anos, aliás, não tem nem comparação, eles recém tinham sidos criados.

   O Antigo Testamento está repleto de tais coisas, e nem cheguei em Sodoma e Gomorra, em Davi, em Jó... o Rei Davi, considerado perfeito por Deus, aquele Rei Davi, um psicopata, um tirano, um ditador sem escrúpulos comparável a um Stalin, a um Hitler.

   Adiante.

   Para não me estender no assunto e ser prolixo, vamos saltar quanticamente para o Novo Testamento, mais precisamente para os Evangelhos. Nesse "meião", analogicamente tem várias outras coisas que vão indo aos poucos.

   Conceitualmente, o Deus de Cristo é um Deus, absoluto, porém (sempre tem um porém), que deus é esse que envia o próprio filho (Deus também) para ser sacrificado?

   Para nos livrar do pecado original?

   Bom, somos criaturas de Deus, feitos à imagem e semelhança Dele, então como é possível termos alguma coisa original?

   Dizem que Deus é perfeito (e tem de ser obrigatoriamente perfeito, senão não seria Deus, seria mitologia; caso Deus seja perfeito, bom, há controvérsias tendo em vista suas criaturas imperfeitas). Deus é perfeito, mas as criaturas imperfeitas negam a perfeição do criador.

   Tem algumas passagens da Bíblia que dizem que Deus não pode desdizer-se, por exemplo, 2 Timóteo 2:13; ora, que Deus é esse que não pode desdizer-se?

   O livre-arbítrio vale somente para as criaturas?

   Esse Deus é um demiurgo?

   "Deste modo, o demiurgo põe os olhos no que é imutável e que utiliza como arquétipo, quando dá a forma e as propriedades ao que cria. É inevitável que tudo aquilo que perfaz deste modo seja belo. Se, pelo contrário, pusesse os olhos no que devém e tomasse como arquétipo algo deveniente, a sua obra não seria bela." Platão (o Arístocles), Timeu.

   Lembrando que a tradução mais aceitável de "demiurgo" é "artesão"; o demiurgo de Platão (e Timeu e Sócrates) é o Artesão do universo, quase um Arquiteto, falta-lhe o diploma em arquitetura para ficar apto a abrir o compasso e enfiar o esquadro.

   "Portanto, é evidente para todos que pôs os olhos no que é eterno, pois o mundo é a mais bela das coisas devenientes e o demiurgo é a mais perfeita das causas."

   Vemos que o demiurgo é uma causa. Depois se segue falando da verossimilhança:

   "Mas se providenciarmos discursos verossímeis que não sejam inferiores a nenhum outro, é forçoso que fiquemos satisfeitos, tendo em mente que eu, que discurso, e vós, os juízes, somos de natureza humana, de tal forma que, em relação a estes assuntos, é apropriado aceitarmos uma narrativa verossímil e não procurar nada além disso."

   Dito isso, tal como Timeu, é forçoso que fiquemos satisfeitos, eu que escrevo e vós, leitores; é apropriado aceitarmos uma narrativa verossímil, pois tanto a prova de que Deus existe quanto a prova de que Deus não existe, ninguém tem.

   Poderia agora falar do Espiritismo, que é Platão escarrado e distorcido. O mundo das idéias foi transformado no mundo dos espíritos por Hippolyte Léon Denizard Rivail, o Allan Kardec, mas não vamos misturar as coisas transformando-as numa salada de frutas, Kardec já fez isso suficientemente e não pretendo desdizer-me tal como o deus de Timóteo da Bíblia.

   Nessa hora o "doutos" senhores que nunca estudaram vem desdizer dizendo que "não é bem assim", "não foi nesse sentido", blablabla.

   Lembro que a Bíblia não foi escrita originalmente dividida em capítulos e versículos, os escribas originais sequem pensavam nisso. A divisão em capítulos foi feita pelo clérigo inglês Stephen Langton no século XIII em 1227. A divisão em versículos numerados se deu a partir de 1527. "Santi Pagnini foi o primeiro a tentar organizar a Bíblia em versículos numerados em 1527. Apesar da publicação de Pagnini, foi o impressor Roberto Estienne que criou a versão utilizada até hoje. Em 1551, Roberto Estienne fez a divisão em versículos da versão grega do Novo Testamento e em 1555 fez a divisão completa da versão latina".

   Essas divisões em capítulos e versículos se deram por uma mera questão administrativa que facilita a leitura, porém, o ser humano, a criatura imperfeita de um Deus perfeito teima em decorar e citar versículos tirando-os do contexto do capítulo e/ou do texto todo.

   O Cristão atual é um mero decorador e repetidor de versículos, é um papagaio de proporções bíblicas.

   O Alah do Islamismo de Maomé da Aisha é um deus parecido com o do Pentatêuco (A Torah e, basicamente, o Antigo Testamento), com algumas diferenças, como, por exemplo, Alah dá nome a todas as coisas enquanto que o Deus Cristão e o Deus Judeu deixaram para as criaturas nomearem as coisas do mundo. Isso dá algumas diferenças de mentalidade entre as civilizações Ocidental e Oriental.

   Apesar de que, em se tratando de loucuras, desgraças, guerras, sofrimento, as diferenças entre o Ocidente e o Oriente deixam de existir e o mundo é um só. A história do mundo é uma coleção de loucuras e desgraças.

   Voltando aos Evangelhos, especificamente ao Cristo, vemos que ele elevou a coisa toda a patamares inalcançáveis para nós, reles seres humanos. Cristo foi o único que cumpriu o que disse e não ficou de empurra-empurra de culpa e responsabilidade.

   "Não julgueis que vim abolir a lei ou os profetas. Não vim para os abolir, mas para confirmá-los, levá-los à perfeição".

   No Sermão da Montanha Cristo falava da lei, basicamente dos Dez Mandamentos, e ele foi a única pessoa que não infringiu nenhum. Não mentiu (levantar falso testemunho), não roubou, não matou, etc.

   Pelo menos Cristo tem Moral, pois os Dez Mandamentos são a Moral em si, faça o certo não faça o errado. Pode-se até considerar 8 Mandamentos, pois caso você não acredite em Deus tiraremos o primeiro e o terceiro, os oito restantes são a base da Moral, são os bons Princípios.

   Lembrando que Princípio é aquilo que está no início e antes não precisa ter nada, pode até ter uma explicação em palavras, mas não se faz necessário, é auto-evidente, nascemos sabendo disso.

   Pelo menos era assim até o advento de Kant com o tal do "a priori" dele e bagunçar a coisa toda.

   Exemplo: Por que matar é errado? Por que mentir é errado?

   O máximo de resposta que conseguimos elaborar para essas perguntas é que nascemos sabendo disso, nascemos sabendo que isso é errado.

   "Então por que fazemos?" alguém poderá perguntar, isso é outra questão que não cabe aqui discorrer, pois tomaria muito tempo e não é o escopo.

   Avante.

   Mesmo um ateu conserva a Moral; e faço uma distinção entre Ateu e Comunista, pois como escreveu Karl Marx no manuscrito Propriedade Privada e Comunismo:

   "Como, no entanto, para o socialista, o conjunto do que se chama história mundial nada mais é que a criação do homem pelo trabalho humano, e a emergência da natureza para o homem, ele, portanto, tem a prova evidente e irrefutável de sua autocriação, de suas próprias origens. Uma vez que a essência do homem e da natureza, o homem como um ser natural e a natureza como uma realidade humana, se tenha tornado evidente na vida prática, na experiência sensorial, a busca de um ser estranho, um ser acima do homem e da natureza (busca essa que é uma confissão da irrealidade do homem e da natureza) torna-se praticamente impossível. O ateísmo, como negação desse irrealismo, não mais faz sentido, pois ele é uma negação de Deus e procura afirmar, por essa negação, a existência do homem. O socialismo dispensa esse método assim tão circundante; ele parte da percepção teórica e prática sensorial do homem e da natureza como seres essenciais."

   Vemos que, para o Comunismo, nem o Ateísmo faz sentido, pois Marx parte da abstração de que o homem é uma autocriação, sendo que Marx diz que a idéia de um ser estranho, um ser supremo (Deus) é também uma abstração (o que é verdade), porém, Marx, do nada, afirma que esta abstração é deturpada (a idéia de Deus) e a outra abstração (a idéia dele de que o homem é uma autocriação) não é uma abstração deturpada, sendo que o próprio Marx afirma que:

   "...quem criou o primeiro homem e a natureza como um todo? Só posso responder: sua pergunta é, em si mesma, um produto da abstração. Pergunte a si mesmo como chegou a essa pergunta. Pergunte-se se sua pergunta não nasce de um ponto de vista a que eu não posso responder por que ele é deturpado... Não pense nem formule quaisquer perguntas, pois logo que você o faz sua abstração da existência da natureza e do homem se torna sem sentido. Ou será você tão egoísta que concebe tudo como não-existente, mas quer que você exista?"

   E depois Marx diz que o homem criou-se pelo trabalho, "a criação do homem pelo trabalho humano"... estava lá o trabalho numa boa vivendo sua vida e, de repente não mais do que de repente, puf, o homem se autocriou-se consigo a si mesmo.

   O conceito de "autocriação" no sentido de existência é uma coisa estúpida em si!

   Nessa tu pisou feio na bola, velho charlatão maligno... e ainda distorce Aristóteles. O estagirita revolve-se na cova e implora à Causa Primeira que conceda que ele e Marx voltem à vida... só para poder quebrar-lhe a cara, chutar-lhe as costelas e fazer Marx sair rastejando sobre o próprio ventre.

   Acredito que Marx foi um dos vendilhões chicoteados por Cristo no templo, mas o velho charlatão maligno não cansa de apanhar, volta e meia ele reencarna na pessoa de um dos seus incontáveis estúpidos seguidores.

   E antes que alguém venha me chamar de gnóstico: Vá para a PQTP!

   Tenho uma forte simpatia por Cristo, apesar de que ele terminou torturado, seviciado, chicoteado, pregado numa cruz e espetado por uma lança.

   Manteve-se coerente consigo, teve Coragem, tem Moral!

   Se alguém puder, refute minhas palavras!


https://www.bibliaon.com/

https://www.bibliaonline.com.br/vc/ex/20

https://edisciplinas.usp.br/pluginfile.php/363788/mod_resource/content/0/Plat%C3%A3o_Timeu-%20Completo.pdf

https://www.marxists.org/portugues/marx/1844/manuscritos/cap04.htm


domingo, 3 de dezembro de 2023

O Brasileiro/Afegão Médio

Na fila do pão, com o mercado atendendo pela grade da porta, acabei de presenciar a seguinte conversa entre dois jovens (entre 20 e 25 anos), um na fila e outro esperando no carro. Tinham umas 10 pessoas na fila, por volta das 20:30 horas.

O da fila começou falando alto em direção ao outro no carro que respondia espichando o pescoço pela janela:

- Que leite que tu quer... qué o leite do saco ou na caixa?

Ao que o do carro respondeu depois de pensar uns segundos:

- Qualquer leite que tu levar aí ta bom pra mim!

Além de risos contidos começando na fila houve alguns segundos de silêncio na conversa entre os dois, pois o da fila estava escolhendo mais alguns itens pela grade da porta.

O da fila então voltou à carga:

- Mas é tu quem quis... escolhe aí... qué o leite do piá?

Os risos contidos na fila passaram a serem risadas.

O do carro:

- Cara, nessa parte de leite aí tu sabe bem mais do que eu, escolhe aí.

Tanto um quanto outro respondendo com um sorriso debochado no rosto.

Até que o da fila terminou as compras e saiu rindo em direção ao carro... e foram embora.

A fila estava dando risadas nessa hora.


Uma continuação da conversa seria mais ou menos assim:

O da fila:

- Tá mas... vê aí, escolhe logo, o cara ta esperando aqui.

- Quem trabalhou em hospital levando leite nos quartos foi tu, escolhe aí meu.

- Ta, mas tu é de mais idade e tem mais experiência nisso.

- Vai partir pra essa? Tu é mais novo e precisa aprender a pedir leite, nem sempre estarei aqui.

E assim seguiria, esse é o Brasileiro!

sexta-feira, 3 de novembro de 2023

Instalar Embroidermodder no Debian

 Faça como usuário, não como root, use o sudo quando indicado.


$ mkdir embroi
$ cd embroi
$ git clone https://github.com/Embroidermodder/Embroidermodder/
$ cd Embroidermodder

$ git submodule init
$ git submodule update

$ sudo apt-get update
$ sudo apt-get install qt6-base-dev libqt6gui6 libqt6widgets6 libqt6printsupport6 libqt6core6 libgl-dev libglx-dev libopengl-dev
$ sudo apt-get install libxcb-randr0-dev libxcb-xtest0-dev libxcb-xinerama0-dev libxcb-shape0-dev libxcb-xkb-dev
$ sudo apt-get install '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev
$ sudo apt-get install libxkbcommon-x11-dev libxkbcommon-dev libvulkan-dev libxcb-*

$ vim CMakeLists.txt
Abra o arquivo CMakeLists.txt com o seu editor de texto preferido e substitua o conteúdo (copie e cole) pelo conteúdo abaixo ou apague todo o conteúdo existente e coloque o conteúdo abaixo.

# The Embroidermodder Project
#

cmake_minimum_required(VERSION 3.16)
project(embroidermodder VERSION 2.0.0 LANGUAGES C CXX)

#include(config.cmake)

find_package(Qt6 REQUIRED COMPONENTS Core OpenGL Widgets PrintSupport)

qt_standard_project_setup()

set(CMAKE_C_STANDARD 99)
set(CMAKE_CXX_STANDARD 17)

add_compile_options(
-g
-O2
-Wall
)

if(CMAKE_BUILD_TYPE STREQUAL "Debug")

set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

add_compile_options(
-Wextra
-fprofile-arcs
-ftest-coverage
)

add_link_options(
-fprofile-arcs
-ftest-coverage
)

endif()

add_subdirectory(extern/libembroidery)

qt_add_executable(embroidermodder2 WIN32 MACOSX_BUNDLE
${CMAKE_SOURCE_DIR}/src/cmdprompt.cpp
${CMAKE_SOURCE_DIR}/src/embdetails-dialog.cpp
${CMAKE_SOURCE_DIR}/src/embroidermodder.cpp
${CMAKE_SOURCE_DIR}/src/imagewidget.cpp
${CMAKE_SOURCE_DIR}/src/interface.cpp
${CMAKE_SOURCE_DIR}/src/layer-manager.cpp
${CMAKE_SOURCE_DIR}/src/mainwindow.cpp
${CMAKE_SOURCE_DIR}/src/mdiarea.cpp
${CMAKE_SOURCE_DIR}/src/mdiwindow.cpp
${CMAKE_SOURCE_DIR}/src/objects.cpp
${CMAKE_SOURCE_DIR}/src/preview-dialog.cpp
${CMAKE_SOURCE_DIR}/src/property-editor.cpp
${CMAKE_SOURCE_DIR}/src/selectbox.cpp
${CMAKE_SOURCE_DIR}/src/settings-dialog.cpp
${CMAKE_SOURCE_DIR}/src/statusbar.cpp
${CMAKE_SOURCE_DIR}/src/undo-commands.cpp
${CMAKE_SOURCE_DIR}/src/undo-editor.cpp
${CMAKE_SOURCE_DIR}/src/view.cpp

${CMAKE_SOURCE_DIR}/src/embroidermodder.h

${CMAKE_SOURCE_DIR}/src/core.c
${CMAKE_SOURCE_DIR}/src/object_data.c

${CMAKE_SOURCE_DIR}/extern/tomlc99/toml.c

${CMAKE_SOURCE_DIR}/assets/assets.qrc
)

include_directories(
${CMAKE_SOURCE_DIR}/extern/tomlc99
${CMAKE_SOURCE_DIR}/extern/libembroidery/src
${CMAKE_SOURCE_DIR}/extern/libembroidery/src/stb
${CMAKE_SOURCE_DIR}/extern/libembroidery/src/nanosvg
${CMAKE_SOURCE_DIR}/src
)

target_link_libraries(embroidermodder2 PRIVATE
Qt6::Core
Qt6::Widgets
Qt6::PrintSupport
Qt6::OpenGL
embroidery_static)

if (WIN32)
else(WIN32)
target_link_libraries(embroidermodder2 PRIVATE m)
endif()

set_target_properties(embroidermodder2 PROPERTIES
WIN32_EXECUTABLE ON
MACOSX_BUNDLE ON)

install(TARGETS embroidermodder2
BUNDLE DESTINATION .
RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/build
)

Salve e saia do arquivo.

$ bash build.sh


Parará um tempo conforme a imagem, aguarde terminar.

$ cd build
$ ./embroidermodder2




Depois pode criar um lançador na área de trabalho com o comando ./embroidermodder2 e o Diretório de trabalho tu coloca /caminho/caminho/Embroidermodder/build e o ícone é à sua escolha.




Feito.