sexta-feira, 3 de maio de 2024

Instalar e Configurar o Slackware Linux - 2025

 
Instalação completa e configuração do Slackware 15 passo a passo com imagens.

INTRODUÇÃO

   Até pegar o jeito, tenha em mãos durante a instalação e a configuração uma cópia impressa da instalação; ou se tiver outro computador abra este artigo e vá seguindo ele.
   Lembre-se que o Slackware é "faça você mesmo".
   Basta ter paciência e ir lendo as informações apresentadas.

   Foi seguida a instalação padrão, praticamente dando Ok e Enter. Depois, nas configurações, "ajeitamos" o sistema.
   Nos comandos fdisk e cfdisk foi particionado o disco (HD ou SSD) e foi instalado o LILO. Na máquina tem o Debian instalado com o GRUB, bastando, na reinicialização após instalado o Slackware, escolher no BIOS o disco para dar boot.

   Esta instalação serve também caso você tenha somente um disco na máquina.
   Caso você tenha outro Linux já instalado ou tenha o Windows instalado você deve instalar o gerenciador de inicialização LILO no MBR, como veremos.

   Será uma instalação padrão com os pacotes padrões com o fim de que um iniciante, com alguma boa vontade, possa instalar e configurar o Slackware para usá-lo como quiser. Porém, veja bem, é uma instalação básica, mas que supre as necessidades básicas como leitor de pdf, editor de texto, vídeo, áudio, etc.

   O artigo ficou extenso por causa das imagens, mas executadas uma vez a instalação e a configuração você verá que é bastante fácil, não demanda muito tempo e entenderá um pouco mais de Linux.

   Depois de instalado e reiniciado, o Slackware entrará na "tela preta" da linha de comando na qual você deverá logar como root com a senha configurada na instalação, como veremos.

   Optei pela versão 1X (estável) em vez da Current. A versão 15.0 é a mais recente e foi lançada em fevereiro de 2022.
   A diferença é que a versão Current é uma espécie de "rolling release" que atualiza constantemente, pode ser considerada uma versão "beta" ou, grosso modo, de"testes" do Slackware, tipo a versão "testing" do Debian, mas não exatamente.
   Na versão Current o Kernel também é atualizado a cada mudança trazendo suas vantagens e desvantagens.
   Segundo a página oficial:
"Slackware-Current é a ramificação de desenvolvimento do Slackware que depois é lançada como uma versão estável quando considerada pronta (e depois dividida novamente como ramificação de desenvolvimento para a próxima versão). É semelhante em função às ramificações de teste de outras distribuições sendo que as mesmas ressalvas se aplicam para a Current."

   As versões 1X (14.2, 15.0, etc) são as versões estáveis.

   Em relação ao Slackware para os iniciantes sempre aconselho a versão 1X porque o Slackware já é naturalmente "faça você mesmo", então é melhor optar pela versão estável e, no futuro, quando estiver mais "tampinha", mais "expert" em Slack, passe para a versão Current.

   IMPORTANTE: no arquivo /etc/slackpkg/mirrors só pode ter um único link descomentado e tem de ser obrigatoriamente o link de um dos repositórios da versão instalada.
   Caso você instalar a atual versão estável 15.0 (nesta data - abril de 2024) obrigatoriamente deve descomentar o link desta versão no arquivo mirrors.
Caso descomentar o da versão Current você terá problemas de inicialização, travamentos, o sistema pode quebrar, etc.
Durante o artigo lembrarei disso várias vezes.

Planejamento

   Tratando-se de Slackware é imprescindível fazer um planejamento.
Caso a instalação seja feita com um sistema já instalado (seja ele Linux ou Windows ou outro), verifique o espaço no HD/SSD, anote o nome da partição ou do espaço onde instalará o Slackware para que depois durante a instalação você não se perca no processo.
   Instalei com a interdace gráfica XFCE, sendo que desabilitei o KDE Plasma e os Games na instalação, mas você pode deixar se quiser. Aqui desabilitei porque o KDE deu problemas de travamento em relação aos hardwares das duas máquinas, hardwares estes que são praticamente modernos: uma com processador Intel core i5, 16GB de memória RAM DDR4 e SSD; outra com processador AMD 6 cores, 24GB de RAM DDR3 e SSD... coisas do Slackware.
   Na máquina com processador AMD FX-6100 (3.3GHz), 24 GB de RAM e SSD nem tentei com KDE, fui direto com o XFCE.
   Nas conclusões ao final fiz algumas observações pessoais.
   Durante a instalação, como veremos, você poderá executar comandos para verificar onde será instalado o Slackware.

INSTALAÇÃO



Escolha o link:
slackware64-15.0-install-dvd.iso

   Salve a imagem ISO e grave ela num pendrive bootável.
   Para fazer um pendrive bootável use o Ventoy ou o Rufus. Não será demonstrado aqui, pois é bastante fácil, basta uma pesquisa em algum dos Oráculos da internet (Google, Bing, ChatGPT, etc).
   Ligue o computador e dê boot pelo pendrive.

   A instalação do Slackware começará.
   Talvez nem todas as telas a seguir se apresentem para todos porque a instalação ficou bem completa, mas daí é só observar e ir pulando as imagens sequencialmente.
   Para ver em tamanho maior, clique na imagem.

01- Tela de apresentação do Ventoy com ISOs para instalação.


02- Boot em modo normal.


03- Tecle ENTER nesta tela de apresentação.


04- Digite 1 e tecle ENTER.


05- Use as setas de direção para navegar.


06- Procure Português Brasil (qwerty/br-abnt2.map) com a seta para baixo.


07- Selecione Português Brasil (qwerty/br-abnt2.map) e dê ENTER.


08- OK, the new map is now installed...
Digite 1 e dê ENTER.


09- Digite "root", sem as aspas, para logar.


10- CASO VOCÊ TENHA SOMENTE UM HD/SSD na máquina pode pular para a imagem 12.
Como eu tenho 4 (2 SSDs e 2 HDs) entrei com fdisk porque o cfdisk não reconhece os outros discos, a não ser que tu digite:
# cfdisk /dev/sdx, onde x é a letra do disco (/dev/sda, /dev/sdb, etc).
      Porém, mesmo assim o cfdisk não traz as informações necessárias, então, usa-se o fdisk e depois o cfdisk.
# fdisk -l
          # fdisk /dev/sdc

11- Command (m for help): p
Depois digita-se "p" (sem as aspas) para aparecer as informações do disco.
E assim vai se fazendo para todos, no caso 4 discos (/dev/sda, /dev/sdb, /dev/sdc, /dev/sdd) e vai se anotando qual é qual disco para não instalar o Slackware por cima de um sistema já instalado, no meu caso, o Debian.

Command (m for help): q
Para sair do fdisk após cada fdisk /dev/sdx digita-se "q" em
Command (m for help): _
e repete-se a operação para todos os discos.

O SSD para instalação do Slackware será o /dev/sdc.
Daí segue-se com cfdisk para facilitar.

USE SEMPRE AS SETAS DE DIREÇÃO E ANTES DE DAR "ENTER" VERIFIQUE SEMPRE AS OPÇÕES MARCADAS.

Caso configure para ser um servidor aconselho a configurar, no mínimo, uma partição /var em separado e com um um bom tamanho, talvez uns 30% do tamanho total do HD/SSD, e uma swap em separado.
Aqui particionaremos somente a swap deixando o restante no padrão da instalação. 


12- Entrando nas configurações do disco.
No meu caso digitei # cfdisk /dev/sdc.
Caso você tenha somente um HD/SSD digite somente cfdisk.


13- Device already...
Apareceu esta tela indicando que já tem um sistema de arquivos, no caso o ext4, pois é um disco que eu usava para salvar dados.
Caso teu HD/SSD for novo, pulará para a imagem seguinte.


14- Deixe a opção "gpt" marcada e dê ENTER.


15- Nesta tela marque a opção "New" (faremos o particionamento) e dê ENTER.


16- No meu caso instalarei no SSD inteiro fazendo somente a partição swap. Você pode particionar de acordo com a sua conveniência. Basta pesquisar no Oráculo "como criar partições no Slackware", tanto para servidor como para desktop.
Aqui não farei particionamento, pois não é o escopo do artigo, além do que, cada HD/SSD tem um tamanho diferente e fazer um particionamento pode confundir um iniciante.
Como o SSD mostra 447.1GB, coloquei 445.1GB para deixar 2GB de swap.
Caso quiser, seja mais generoso com a swap colocando 5 ou 10 GB.
Dê ENTER.


17- Selecione "Free space" com 2GB, deixe ou marque a opção "New" e ENTER.


18- Coloque 2G em Partition Size e ENTER.


19- Selecione "Type" e ENTER.


20- Selecione Linux swap e ENTER.


21- Nesta tela verifique se o particionamento está de acordo com o que foi feito, marque a opção WRITE e dê ENTER para gravar as mudanças no disco.
Caso cometer algum erro, selecione QUIT e refaça o particionamento. Ao selecionar WRITE e dar ENTER, as mudanças serão gravadas no disco.
Depois somente deletando as partições feitas e refazendo tudo do zero.


22- Digite "yes" para confirmar e ENTER.
As mudanças serão gravadas no disco.


23- Nesta tela marque a opção "Quit" e dê ENTER.


24- Agora vamos começar a instalação propriamente dita do Slackware.
Digite "setup" (sem as aspas) e ENTER.


25- Selecione a opção KEYMAP e ENTER.


26- Selecione novamente o teclado Português Brasil (qwerty/br-abnt2.map) e ENTER.

27- Digite 1 para confirmar e ENTER.
Caso quiser, antes pode digitar alguma coisa como "ç", testar acentos, etc.


28- Caso tiver dois sistemas, terá duas swap, como é o caso.
A swap no disco /dev/sda6 desmarquei o asterisco (*) com a barra de espaços, pois é a swap do Debian.
Selecione a swap configurada para o Slackware verificando o dispositivo, no caso, /dev/sdc2 e o tamanho e ENTER. Você verifique o seu dispositivo. Caso for instalação única, terá somente uma swap.


29- A opção serve para verificar se o seu disco rígido possui erros, a verificação pode demorar horas. No meu caso, o Slackware está sendo instalado em um SSD novo e, provavelmente, sem falhas, por isso deixei a opção "No".


30- Será pedida uma confirmação, dê ENTER.


31- Nesta tela selecione a partição para a instalação do Slackware, no meu caso, é /dev/sdc1 Linux 446G.


32- Deixe o padrão de formatação e dê ENTER.


33- Deixe como ext4, mas você pode escolher outro sistema de arquivos, se souber o que está fazendo.
Dê ENTER e aguarde terminar a formatação até aparecer a próxima tela.


34- Nesta tela não adicionaremos outra partição. Poderia adicionar a partição do Debian, mas no meu caso deixarei para configurar depois. Selecione a opção da imagem (--- (done adding...)) e ENTER.
Talvez esta tela não apareça para quem está instalando somente o Slackware num HD/SSD novo.


35- Nesta tela de confirmação verifique se é a partição correta, no meu caso, /dev/sdc1, e ENTER. Talvez no seu caso seja /dev/sda1 ou outra.


36- Nesta tela deixe "Yes" e ENTER. Está pedindo se gostaria de adicionar partições FAT ou NTFS (DOS ou Windows). Talvez esta tela não se apresente para alguns.


37- No caso ele achou o pendrive, selecione a opção marcada na imagem (--- (done, continue...)), pois não queremos adicionar o pendrive na tabela de partições. Caso você tenha Windows instalado, selecione a opção com NTFS ou deixe para depois de instalado quando atualizar e configurar o LILO.


38- Dê ENTER para confirmar.


39- Deixe marcada a opção padrão, pois todo pendrive bootável geralmente é uma unidade virtual de CD/DVD. Dê ENTER.


40- Deixe como "auto" e ENTER.


41- Desmarquei com a barra de espaços o KDE Plasma e a opção Games, pois não é em todo hardware que isso funciona corretamente.
Futuramente você pode instalar essas opções.


42- Selecione "full" e ENTER. Aguarde terminar a instalação, levará vários minutos, em torno de meia hora, o tempo depende da capacidade de processamento de cada máquina, aguarde até a próxima tela.
Caso der alguma tela com mensagem de erro, infelizmente você deverá reiniciar e recomeçar todo o processo.


43- Deixe a opção "Skip making a USB..." marcada e ENTER.


44- Instalação do LILO, Deixe marcado "simple" e ENTER.


45- Deixe a opção "Standard" marcada e ENTER.


46- Deixe em branco e ENTER.
Não vamos adicionar nenhum parâmetro manualmente ao LILO.


47- Instalei o LILO no MBR.
Mesmo que tu tenhas outro sistema Linux já instalado e instalará o Slack num espaço livre no mesmo disco, instale o LILO no MBR. Caso o outro sistema seja o Windows, também instale o LILO no MBR.
No meu caso, com Debian e GRUB; Slack e LILO, selecionarei o sistema pelo BIOS depois, pois mesmo instalando o LILO no MBR por cima do GRUB, fica mais fácil regravar o GRUB no MBR e dar um update-grub no Debian com OS-PROBER, pois prefiro utilizar o GRUB, mas vai de cada um.
O MBR é o primeiro setor do primeiro disco conectado na placa-mãe. No meu caso com 4 discos, o MBR é o setor do disco conectado no slot 01 da placa-mãe que, no caso, não é nenhum dos dois discos SSDs onde estão o Debian e agora o Slackware.
Para os iniciantes: sempre instale o LILO no MBR.
Como eu avisei: para o Slackware sempre deve se fazer um planejamento ANTES de instalar o sistema.


48- "gpm", deixe Yes e ENTER.


49- Configure a internet. Deixe "yes" e ENTER.


50- Coloque o hostname, coloquei slackie, coloque um nome de sua escolha.


51- Domínio coloquei slackie também, pode colocar "localdomain" caso quiser.


52- Deixe "No" e dê ENTER. Não vamos configurar VLAN.


53- Deixe "NetworkManager" marcado e ENTER.


54- Deixe "Yes" marcado para confirmar e ENTER.


55- Aqui confirme com ENTER.


56- Nesta tela selecione e marque os serviços que tu quer que iniciem com o sistema.
Deixei no padrão e ENTER.


57- Deixe "No" e ENTER, depois pode se configurar outras fontes.


58- Deixe no padrão do Local Time e ENTER.


59- Eu deixei selecionado "America/Sao_Paulo", mas você pode escolher de acordo com o Estado no qual mora. Caso não tiver o Estado, escolha um próximo ou com o mesmo fuso horário.


60- O editor de texto padrão no terminal eu selecionei o "vim", mas você pode deixar no padrão se quiser.


61- Eu selecionei o XFCE como interface gráfica.


62- Deixe "Yes" e dê ENTER para inserir a senha de root.


63- Digite a senha, ela não aparecerá, mas está sendo gravada. Anote a senha, pois precisará dela para entrar no sistema depois do reinicio.


64- Repita a mesma senha e ENTER.


65- Pressione ENTER.


66- Sistema instalado, dê ENTER.


67- Selecione "EXIT" e dê ENTER.


68- Retire o pendrive e ENTER.


69- Deixe "Reboot" selecionado e dê ENTER.


   Após o reinicio deverá entrar no seu Slackware instalado.
   Na próxima etapa veremos as configurações.


CONFIGURAÇÕES

   Vamos às configurações básicas.
   Depois de reiniciar você cairá na tela inicial do Slackware, tela esta que sumirá automaticamente de acordo com as configurações.


Tela inicial padrão, selecione Linux e dê ENTER.


Digite root e a senha > Enter > startx (comando para iniciar a interface gráfica)> Enter.


01- Abra o terminal. Caso o terminal estiver como "Bash-5.1#" ou algo parecido clique com botão direito dentro da janela preta > Preferences e na janela que se abrirá marque a opção "Run command as login shell" > Close.


02- Feche e abra o terminal que agora estará com o prompt do shell.


03- Antes de tudo atualizaremos o sistema, mas primeiro vamos configurar o teclado temporariamente no terminal (senão não aparecerá quando digitar barra, acentos, etc), depois configuraremos permanentemente.
No terminal aberto digite:
setxkbmap -model abnt2 -layout br


04- Vamos configurar um repositório. Abra o arquivo digitando:
vim /etc/slackpkg/mirrors
ou
nano /etc/slackpkg/mirrors

Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar sem sair no vim digite somente  w e dê enter.
Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


05- Descomentei a linha do espelho mais próximo, no caso, o Brasil. Verifique se é a versão do Slackware que você instalou: Slackware64-15.0 ou Slackware64-current. Só pode ter uma única linha de espelho descomentada.

***Verifique bem se é a versão correspondente, caso você descomentar um espelho da Current e teu sistema for o 15.0 e você executar "slackpkg update" isso pode quebrar o sistema logo de início e você terá de reinstalá-lo.***


06- Vamos configurar as opções de tela e energia para não ficar deslogando e logando durante os processos de atualização do sistema. Depois você pode reverter isso para opções da sua escolha.
Vá em Applications > Settings > Power Manager.
Na tela acima mova os cursores deslizantes conforme indicado > Close.


07- Vamos configurar o teclado de forma permanente. Abra o terminal, digite o comando "setxkbmap -model abnt2 -layout br" e dê Enter. Edite o arquivo /etc/profile.
# setxkbmap -model abnt2 -layout br <enter>
# vim /etc/profile <enter>
ou
# nano /etc/profile <enter>

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar sem sair no vim digite somente w e dê enter.
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


08- Comente e acrescente na posição indicada:
# Model layout keyboard
                setxkbmap -model abnt2 -layout br
como na imagem. Salve e saia.

Obs.: Geralmente quando setamos na interface gráfica o teclado, o mouse, etc, é um intermediário que mudará, por exemplo, o arquivo /etc/profile ou outro de acordo com a configuração escolhida.
Tendo isso em mente, percebe-se o valor do aprendizado às vezes configurando manualmente o sistema.


09- Testando a configuração:
# source /etc/profile
Deverá retornar nenhum erro. Caso retornar erro verifique se você digitou certo.


10- Configurando o teclado na interface gráfica. Vá em Applications(Aplicações) > Settings(Configurações) > Keyboard(Teclado) > Na janela vá na aba Layout, desabilite a opção "Use system defauts(Use o padrão do sistema)" > clique em +Add > na lista selecione Portuguese(Brazil) ou acrescente English(US) e coloque Portuguese(Brazil) para cima com a seta ao lado. Clique em Close.
Veja a imagem.
Se não estiver em Português, já colocaremos todo o sistema em Português.


11- Logo após a instalação deve-se seguir sequencialmente religiosamente os passos abaixo até a imagem 20, onde tem a seqüência resumida.
Inicializando o banco de dados (verifique se está conectado na internet):
# slackpkg update gpg
Caso pedir digite "y".


12- Atualizando o sistema recém instalado:
# slackpkg update
Aguarde terminar. Durante as atualizações aconselho a não mexer no sistema, não abrir telas, etc, aguarde terminar, pois é a primeira atualização.


13- Instalando/atualizando novos pacotes:
# slackpkg install-new
Cairá na próxima tela.


14- Nesta janela deixe o padrão, dê Enter e aguarde terminar; poderá demorar vários minutos, pois é a primeira instalação e o DVD com a ISO geralmente vem desatualizado, o que é normal para qualquer sistema.


15- Dando um upgrade no sistema:
# slackpkg upgrade-all
Digite a senha, se pedir. Aguarde terminar, poderá demorar uns 30 minutos, pois é a primeira instalação e o DVD com a ISO geralmente vem desatualizado, o que é normal para qualquer sistema.
O upgrade-all pode demorar uns 30 minutos ou mais, pois ele fará um upgrade de todo o sistema, todos os arquivos, mas isso é necessário nesta fase pós-instalação.
Caso aparecer uma janela pedindo para selecionar os pacotes a serem atualizados/upgrade deixe no padrão e dê ENTER.
Aconselho a não mexer no sistema (abrir janelas, navegador, etc) enquanto o upgrade é realizado.


16- Nesta janela deixe o padrão, dê Enter e aguarde terminar.


17- Parará numa tela como esta. Dê Enter.


18- Pressione qualquer tecla.

19- Caso esta tela aparecer escolha a opção letra "O" e dê Enter.


20- Limpando pacotes. Esse comando é necessário após um upgrade-all:
# slackpkg clean-system (caso pedir a senha, digite-a)
# reboot
Aguarde reiniciar.

A seqüência quase que religiosa é:
       # slackpkg update gpg
 # slackpkg update
      # slackpkg install-new
      # slackpkg upgrade-all
        # slackpkg clean-system
# reboot

   A seqüência acima recomendada no site oficial do Slackware somente é necessária em duas ocasiões: logo após a instalação e quando for mudar de uma versão para outra, por exemplo, da 14.2 para a 15.0. Somente nesses dois casos.

   Para atualização regular do sistema basta:
$ sudo slackpkg update

   Caso você instalou o Slack em dual-boot com outro Linux no mesmo disco terá de entrar no outro sistema e atualizar o Grub executando, por exemplo no Debian, "sudo update-grub" ou "sudo update-grub2" ou "sudo grub-mkconfig -o /boot/grub/grub.cfg" para atualizar o Grub. Isso se você não instalou o LILO no MBR, caso você tenha instalado o LILO no MBR tendo o outro sistema no mesmo disco, o controle do boot será do LILO.

   Caso for utilizar "slackpkg clean-system" futuramente abrirá uma janela na qual você deverá escolher os programas que quer desinstalar deixando-os marcados, os que não quiser desinstalar basta desmarcar usando a barra de espaços.

   Para atualização regular com upgrade dos pacotes execute a cada mês:
$ sudo slackpkg update
$ sudo slackpkg upgrade-all


21- Criando um usuário e senha para logar pela interface gráfica:
# adduser slackie
Eu escolhi o nome slackie, você escolha o nome que quiser, mas você pode digitar somente adduser e dar Enter que ele perguntará qual o nome do usuário, depois vá dando Enter com cuidado até chegar na senha.


22- Digite a senha > ENTER > repita a senha > Enter.
Terminará com "Account setup complete".


23- Agora vamos adicionar o usuário aos grupos básicos:
# usermod -G wheel,floppy,audio,video,cdrom,plugdev,power,netdev,lp,scanner slackie
No lugar de slackie ao final do comando tu coloca o nome do teu usuário.
Depois confira:
# groups slackie

   A próxima etapa é configurar para iniciar pela interface gráfica, caso você queira iniciar sempre pelo prompt e depois digitar startx, deslogue como root e logue com o usuário e senha que você criou e vá para a imagem 29, mas não recomendo.


24- Configurando o gerenciador de janelas para iniciar, no caso o xfce, mas o comando serve para todos (KDE, Gnome, etc), pois é usado para selecionar um desktop ou gerenciador de janelas..
# xwmconfig


25- Marque XFCE (ou o que você instalou) e OK > Enter.


26- Digite "clear" para limpar a tela.


27- Configurando para iniciar direto pela interface gráfica. Edite o arquivo /etc/inittab:
# vim /etc/inittab (usei o vim, use teu editor de texto preferido). 
Outra opção:
# nano /etc/inittab


28- Na linha 25 ou próximo à linha 25, deixe como na imagem acima, comente a linha colocando um # e acrescente a outra linha. Salve e saia.
   # id:3:initdefault:
id:4:initdefault:

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar no vim digite somente w e dê enter.
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.

   A linha id:4:initdefault: configura o sistema para iniciar sempre pela interface gráfica.
   Caso você queira iniciar pela linha de comando e digitar "startx" toda vez deixe o default como 3.


29- Reinicie:
# reboot


30- Aqui vemos o Slack já na interface gráfica estilosa.
Na tela de login selecione como default o Xfce (Xfce Session) ou o gerenciador de janelas que tu escolheu na instalação, pois se tu instalou outro gerenciador de janelas e configurou o mesmo com xwmconfig este parâmetro nesta janela deverá ser o mesmo do gerenciador de janelas. É preciso fazer isso somente uma vez.
Digite a senha de usuário criada anteriormente.


31- Entramos agora como usuário (não como root), abra o terminal e o terminal também estará como Bash-5.1# ou algo parecido.
Clique com botão direito dentro da janela preta > Preferences e na janela que se abrirá marque a opção "Run command as login shell" > Close. Feche e abra o terminal. Estará tudo em Inglês, já colocaremos tudo em Português.


32- Configurando o teclado na interface gráfica.
Vá em Applications(Aplicações) > Settings(Configurações) > Keyboard(Teclado) > Na janela vá na aba Layout, desabilite a opção "Use system defauts(Use o padrão do sistema)" > clique em +Add > na lista selecione Portuguese(Brazil) ou acrescente English(US) e coloque Portuguese(Brazil) para cima com a seta de direção. Veja a imagem. Não mexa nas outras opções. Clique em Close. Se não estiver em Português já colocaremos todo o sistema em Português.


33- Habilitando sudo no Slackware. Abra o terminal.
Para ver o ID do usuário:
$ id -u
Anote a saída, no caso, 1000.


34- Entrando como root:
$ su -
e digite a senha de root criada na instalação.
Abra o arquivo:
# vim /etc/group
ou
# nano /etc/group

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar no vim digite somente w e dê enter.
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


35- Acrescente no final do arquivo a linha com o ID:
sudo:x:1000:slackie (no lugar de slackie coloque o nome do teu usuário).
Salve e saia.


36- Abra o arquivo:
# vim /etc/profile


37- Procure a linha
# Set the default system $PATH: (deverá estar na linha ~23)
Comente a linha:
# PATH="/usr/local/bin:/usr/bin:/bin:/usr/games"

e acrescente uma linha assim:
PATH="/usr/local/bin:/usr/bin:/bin:/usr/games:/sbin:/usr/sbin"
Salve e saia.

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos).
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


38- Confirme:
# source /etc/profile


39- Abra o arquivo:
# vim /etc/sudoers


40 - Procure a linha root ALL=(ALL:ALL) ALL (~linha 80) e acrescente abaixo a linha slackie ALL=(ALL:ALL) ALL
Substitua slackie pelo nome do usuário que você escolheu. Salve e saia. No vim talvez seja necessário para salvar e sair acrescentar um ponto de exclamação para forçar a saída, caso pedir, :wq!

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar no vim digite somente w e dê enter.
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


41- Reinicie:
# shutdown -r now
ou
# reboot

Aguarde reiniciar e entre no sistema.


42- Atualizando. Abra o terminal e digite:
$ sudo slackpkg update
digite  a senha de root e dê Enter.


43- Agora vamos colocar o Slack em Português, caso já não estiver. 
Abra o terminal e entre como root:
$ su -
e a senha.
Entre no diretório:
# cd /etc/profile.d
Abra o arquivo:
# vim lang.sh


44- Deixe o arquivo lang.sh conforme a imagem.
Comente a linha na posição indicada e acrescente as outras quatro.
# export LANG=en_US.UTF-8
export LANG=pt_BR.UTF-8
LANGUAGE=pt_BR
LC_ALL=pt_BR
LC_MESSAGES=pt_BR
Salve e saia.

   Para editar no vim pressione a tecla Insert, faça a alteração > Esc > para salvar e sair Shift + : (dois pontos), solte o Shift e digite wq ficando assim no canto inferior esquerdo :wq > Enter. Não pressione a tecla +, é somente a tecla Shift e a tecla : (dois pontos). Para salvar sem sair no vim digite somente w e dê enter.
   Para salvar no nano pressione ctrl+o (letra o) e dê Enter; para sair ctrl+x.


45- Modifique o arquivo lang.csh também:
# vim lang.csh


46- Procure a linha abaixo, comente e acrescente:
# setenv LANG en_US.UTF-8
setenv LANG pt_BR.UTF-8
Salve e saia.


47- Digite "exit"duas vezes para fechar o terminal.


48- Faça o Log Out (Sair) como na imagem.


49- Encerre a sessão, clique em Log Out.
E logue novamente e verá que os menus ficaram em Português Brasileiro.


50- Menu Aplicações já traduzido.


51- Menu Encerrar sessão traduzido.


52- Agora vamos configurar a data e a hora.
Vamos tornar o arquivo rc.ntpd executável. Este serviço vem por padrão no Slack.
Abra o terminal e logue como root:
$ su -
Digite a senha.
Tornando executável:
# chmod +x /etc/rcd.d/rc.ntpd
Parando o serviço:
# sh /etc/rc.d/rc.ntpd stop


53- Edite o arqivo /etc/ntp.conf.


54- Acrescente na posição indicada "server gps.ntp.br iburst nts", sem as aspas.


55- Execute:
# ntpdate gps.ntp.br
# hwclock --systohc --localtime
# sh /etc/rc.d/rc.ntpd start
# date

   Em relação ao servidor ntp, talvez futuramente quando você notar que o horário e a data estão desajustados, você terá de procurar outro servidor ntp para colocar no arquivo, mas daí após o comando "ntpdate gps.ntp.br" dará uma mensagem de que não foi possível sincronizar, então é tranqüilo.


56- Agora se quiser pode executar um sudo "slackpkg clean-system" que aparecerá uma tela parecida como esta acima. Como instalei o Netbeans e o Openjdk para este propósito, eles apareceram na tela.
Você seleciona com a barra de espaços os programas que quiser excluir e desmarca os que quiser deixar tirando o asterisco.
É tipo o Painel de Controle > Programas, do Janelas da Microsoft.


57- Grub com Debian e Slackware. Na instalação o Slackware estava em /dev/sdc, agora está em /dev/sda, coisas do Linux. Para fixar deve-se setar o numerozão enorme do UUID.


   E assim terminamos as configurações básicas.
   Essas configurações que fizemos aqui são o básico, são as configurações que já vem por padrão em outros sistemas, já vem prontas na instalação.


CONFIGURAÇÕES EXTRAS

Instalar o Google Chrome no Slackware:

Instalar o Conky:

Instalar o Java e o Netbeans:



CONFIGURANDO O LILO

   Deixarei aqui links onde tem como configurar o LILO.




   Abra o terminal e entre no arquivo /etc/lilo.conf e mude as opções de acordo com as suas necessidades.

   Abaixo temos o arquivo /etc/lilo.conf em sua configuração padrão de acordo com a instalação.
   No caso, instalei no MBR, como vimos, e depois regravei o GRUB do Debian por cima.
   Observem que a linha boot= /dev/sda indica que foi instalado no MBR, caso estivesse boot= /dev/sda1 indicaria que foi instalado na partição.

# LILO configuration file
# generated by 'liloconfig'
#
# Start LILO global section
# Append any additional kernel parameters:
append=" "

boot = /dev/sda
# This option loads the kernel and initrd much faster:
compact

# Boot BMP Image.
# Bitmap in BMP format: 640x480x8
  bitmap = /boot/slack.bmp
# Menu colors (foreground, background, shadow, highlighted
# foreground, highlighted background, highlighted shadow):
  bmp-colors = 255,0,255,0,255,0
# Location of the option table: location x, location y, number of
# columns, lines per column (max 15), "spill" (this is how many
# entries must be in the first column before the next begins to
# be used. We don't specify it here, as there's just one column.
  bmp-table = 60,6,1,16
# Timer location x, timer location y, foreground color,
# background color, shadow color.
  bmp-timer = 65,27,0,255

# Standard menu.
# Or, you can comment out the bitmap menu above and 
# use a boot message with the standard menu:
#message = /boot/boot_message.txt

# Wait until the timeout to boot (if commented out, boot the
# first entry immediately):
prompt
# Timeout before the first entry boots.
# This is given in tenths of a second, so 600 for every minute:
timeout = 1200
# Override dangerous defaults that rewrite the partition table:
change-rules
  reset
# Normal VGA console
vga = normal
# Ask for video mode at boot (time out to normal in 30s)
#vga = ask
# VESA framebuffer console @ 1024x768x64k
#vga=791
# VESA framebuffer console @ 1024x768x32k
#vga=790
# VESA framebuffer console @ 1024x768x256
#vga=773
# VESA framebuffer console @ 800x600x64k
#vga=788
# VESA framebuffer console @ 800x600x32k
#vga=787
# VESA framebuffer console @ 800x600x256
#vga=771
# VESA framebuffer console @ 640x480x64k
#vga=785
# VESA framebuffer console @ 640x480x32k
#vga=784
# VESA framebuffer console @ 640x480x256
#vga=769
# End LILO global section
# Linux bootable partition config begins
image = /boot/vmlinuz
  root = /dev/sdc1
  label = Linux
  read-only
# Linux bootable partition config ends


   Vamos para a conclusão.

CONCLUSÃO

   Assim terminamos e temos um sistema funcional. A partir daqui é com você.
   Todos esses comandos na maioria das distribuições não são necessários executar, pois o sistema já vem pronto com os arquivos configurados, sendo que na instalação você já escolhe o usuário.
   No Slackware é diferente, pois é um sistema "faça você mesmo".
   Optei por uma configuração padrão, pois daí você pode utilizar o Slack como quiser bastando instalar os programas da sua preferência.
   Na instalação, caso você souber o que está fazendo, pode optar por não instalar determinados pacotes e realizar uma instalação mínima.
   Como esse artigo foi voltado mais para iniciantes o melhor foi fazer instalação e configuração genéricas.

   Eu, particularmente, não uso Slackware no dia a dia.

    Mas enfim, como dizem: enquanto o cursor estiver piscando, há vida!



REFERÊNCIAS


domingo, 28 de abril de 2024

É verdade que dos 513 Deputados Federais somente 28 tiveram votação suficiente?

   Vamos dirimir essa questão.

   Entrando nos três links das referências ao final o leitor poderá comprovar o presente texto.

   No primeiro link o leitor pode baixar o arquivo CSV disponibilizado pelo TSE (Tribunal Superior Eleitoral) e abrir no Excel.

   O escopo do presente texto foi comprovar que dos 513 Deputados Federais em 2022, computando-se votos corridos do primeiro ao quingentésimo décimo terceiro, 421 entraram na vaga (tiveram votação suficiente e foram eleitos) e 92 não entraram na vaga (tiveram votação suficiente, mas não foram eleitos).

   A metodologia utilizada foi bastante simples, pois o cálculo é simples.
   Utilizei as ferramentas do próprio Excel: Localizar, Ordenar em ordem decrescente, etc.
   Os dados utilizados são dados oficiais do TSE e podem ser comprovados por qualquer pessoa que tenha interesse.

   Lembrando que a planilha fornecida pelo TSE é o resultado final das eleições já com os devidos cálculos de QPN (Quociente Populacional Nacional), QPE (Quociente Populacional Estadual), Quociente Partidário, etc, sendo que a votação dos candidatos é a votação nominal, ou seja, é o número de votos que cada candidato teve.

   Começo colocando os dados encontrados da eleição de 2022 para Deputado Federal e depois as necessárias explicações.

Total de candidatos: 9.683.
Eleitos: 513.
Eleito por QP (Quociente Partidário): 336.
Eleito por média: 177.
Total de não eleitos: 4.982.
Total de suplentes: 4.188.
336 (QP) + 177 (Média) = 513.

Dentro dos 513 mais votados;
Não eleitos: 25.
Suplentes: 67.
   Os suplentes, conforme explicação do próprio TSE (veja abaixo na seção Suplentes), são considerados não eleitos, o que de fato são.
Total de não eleitos com votação suficiente: 67 +25 = 92.

   Podemos ver que entre os 513 mais votados, 421 tiveram votação suficiente e entraram na vaga.
   E entre os 513 mais votados, 92 tiveram votação suficiente, mas não entraram na vaga.

   Temos de considerar como base de cálculo os 513 mais votados em ordem decrescente (do mais votado para o menos votado) e depois verificar todos os eleitos (por QP [336] e por Média [177]) e então  pesquisar os "Não eleito" e os "Suplente" dentre os 513 mais votados.
   E depois pesquisamos entre todos os 9.683 candidatos aqueles que foram eleitos, mas ficaram abaixo da votação dos 513 primeiros.
   Como exemplo cito os casos dos Deputados ANTONIO JOSÉ AGUIAR ALBUQUERQUE do PP eleito por média pelo Estado de SP e da Deputada SILVIA NOBRE LOPES eleita por média pelo Estado do AP.
   O Deputado Antonio José figura entre os 513 mais votados na posição geral 99 (é o eleito por média com mais votos entre os eleitos por média, fez 115.456 votos) e a Deputada Silvia não figura entre os 513 mais votados e é a última entre os eleitos por média figurando na posição geral 2203 com 5.435 votos, sendo uma das que entraram, mas não tiveram votação suficiente em votos corridos.
   
   E entre os eleitos por QP cito o Deputado NIKOLAS FERREIRA DE OLIVEIRA do PL eleito por QP pelo Estado de MG e do Deputado ANTONIO CARLOS NICOLETTI eleito por QP pelo Estado de RR.
   O Deputado Nikolas é o mais votado entre todos e entre os eleitos por QP e figura na posição geral 1 com 1.492.047 votos e o Deputado Antonio Carlos não figura entre os 513 mais votados e é o último entre os eleitos por QP figurando na posição geral 1481 com 10.969 votos, sendo um dos que entraram, mas não tiveram votação suficiente em votos corridos.

   Então, dos 513, 421 tiveram votação suficiente e entraram na vaga e 92 tiveram votação suficiente, mas não entraram na vaga.
   Não utilizei acima o termo "eleitos" por uma questão didática, utilizei "entraram na vaga" e "não entraram na vaga".

Figura 01 - Total de 513 nos votos corridos.

   Na Figura 01 deve-se descontar o cabeçalho, por isso o número no início marca 514.

Figura 02 - Cabeçalho.

   Dos 513 mais votados, o último (quingentésimo décimo terceiro) teve 62.445 votos (Figura 01). Como a planilha do Excel foi ordenada por ordem decrescente, do mais votado para o menos votado, não se fez necessário levar em conta os candidatos abaixo dessa votação, pois, para o cálculo em questão somente nos interessam os 513 mais votados em votos corridos em relação aos que entraram na vaga (421) e aos que não entraram (92).

   O que nos dá um total percentual de 17,93% (92 de 513) de candidatos a Deputado Federal na eleição de 2022 que tiveram votação suficiente em votos corridos, mas não entraram na vaga.

Figura 03 - Total de candidatos, menos 1 por causa do cabeçalho: total 9.683.

   Agora vamos entender o que significa "Eleito por média" e "Eleito por QP".
   Os dados abaixo estão atualizados já para a eleição de 2024, pois o TSE alterou o cálculo das sobras de vagas em relação a eleição de 2022, porém, para o cálculo presente esta alteração não tem influência.

Quociente eleitoral
   O quociente eleitoral é calculado dividindo-se a quantidade de votos válidos para determinado cargo pelo número de vagas para aquele cargo.

Figura 04 - Quociente eleitoral.

Quociente partidário
   O quociente partidário define o número de vagas a que cada partido terá direito. Esse cálculo é feito dividindo-se a quantidade de votos válidos para determinado partido ou federação pelo quociente eleitoral. Em eleições gerais, a conta é feita separadamente para caga cargo (deputado estadual ou deputado federal).

Figura 05 - Quociente partidário.


Média
   E como é feito o cálculo da média de cada partido político? É preciso dividir a quantidade de votos válidos que o partido recebeu para determinado cargo pelo quociente partidário (que corresponde ao número de vagas obtidas pelo partido) acrescido de 1.
Se houver apenas uma vaga a ser preenchida, o partido que obtiver a maior média fica com a vaga da sobra.

Figura 06 - Média.

   Se estiver sobrando mais de uma vaga, essa operação é repetida até que todas as vagas sejam preenchidas, entre os partidos que obtiveram votos equivalentes a pelo menos 80% do quociente eleitoral e candidatos ou candidatas com votação nominal mínima de pelo menos 20% do quociente eleitoral. Nesse caso, se um partido já obteve uma vaga pelo cálculo da média, para disputar as próximas sobras, na hora da divisão o número de vagas obtidas por média por esse partido deve ser somado ao número de vagas que ele obteve originalmente, acrescido de 1. Assim:

Figura 07 - Média 1.

   Se mesmo assim ainda sobrarem vagas, as cadeiras serão distribuídas aos partidos que apresentarem as maiores médias, independentemente de terem atingido a cláusula de desempenho.

Figura 08 - Média 2.


Suplentes
   Por fim, a última chance que um candidato ou candidata a vereador, deputado estadual ou deputado federal tem de assumir o mandato é ser eleito suplente e ser um dos mais votados dentro do seu partido. Caso ocorra a vacância, ou seja, aconteça algo e o mandato fique vago, o 1º suplente do partido ou federação do eleito e empossado assumirá o mandato e tomará posse em seu lugar.

   Para ser eleito suplente, basta que o seu partido ou federação tenha conseguido eleger pelo menos um representante — todos os outros candidatos do mesmo partido ou federação que não foram eleitos se tornam automaticamente suplentes e passam a figurar em uma lista por ordem de votação. Quando é aberta uma vaga, o suplente do partido ou federação que teve mais votos é chamado. Nesse caso, não é preciso ter atingido nenhuma votação mínima.

   Maiores informações sobre os cálculos vocês podem encontrar nos links abaixo, nas referências.
  O escopo do presente texto foi comprovar que dos 513 Deputados Federais em 2022, computando-se votos corridos do primeiro ao quingentésimo décimo terceiro, 421 entraram na vaga (tiveram votação suficiente e foram eleitos) e 92 não entraram na vaga (tiveram votação suficiente, mas não foram eleitos).

REFERÊNCIAS

domingo, 21 de abril de 2024

Por que o Socialismo?


“Será aconselhável que um não especialista em assuntos econômicos e sociais manifeste pontos de vista sobre o tema 'socialismo'? Por várias razões, eu acredito que sim.”

   Eu como Einstein, começo este texto da mesma maneira e com a mesma frase do ensaio “Por que Socialismo?” de Albert Einstein, disponível aqui:

https://monthlyreview.org/2009/05/01/why-socialism/.

   O texto de Einstein foi publicado em 1949, sendo que em 1920 Ludwig von Mises, também em um ensaio, já havia publicado “O Cálculo Econômico sob o Socialismo”, disponível em:

https://mises.org.br/article/1141/o-calculo-economico-sob-o-socialismo#:~:text=Na%20economia%20socialista%20que%20Mises,privada%20dos%20meios%20de%20produ%C3%A7%C3%A3o.

   Em seu ensaio, Mises (apesar de ser Liberal) destruiu  a tal economia planificada/planejada:

"Portanto, o princípio básico da troca poderá operar livremente em um estado socialista, dentro dos limites permitidos. E a troca nem sempre precisará se desenvolver na sua forma direta. As mesmas bases que sempre sustentaram as trocas indiretas continuarão existindo em um estado socialista, trazendo vantagens para aqueles que incorrerem nelas. Donde se segue que o estado socialista também irá permitir o uso de um meio de troca universal -- isto é, o dinheiro. Sua função será fundamentalmente a mesma tanto na sociedade socialista quanto na competitiva; em ambas, ele serve como meio universal de troca. 
No entanto, a significância do dinheiro em uma sociedade em que os meios de produção são controlados pelo estado será diferente daquela em que os meios de produção são propriedade privada. Com efeito, a significância será incomparavelmente menor, uma vez que o material disponível para troca será mais limitado, já que as trocas estarão confinadas apenas aos bens de consumo. Ademais, exatamente pelo fato de os bens de produção jamais se tornarem objeto de troca, será impossível determinar seu valor monetário. Sob esse aspecto, o dinheiro jamais poderá determinar, em um estado socialista, o valor dos bens de produção da mesma forma que ele o faz em uma sociedade competitiva. No socialismo, portanto, o cálculo em termos monetários será impossível."

    Depois, no livro Ação Humana, Mises sacramentou o estrago na tal "economia planejada" mostrando que economia planificada é o “triângulo redondo”, ou seja, é impossível e somente leva à miséria e ao sofrimento da maioria:

“O paradoxo do "planejamento" é que, em uma economia planejada, é impossível planejar.  É impossível se fazer planejamento econômico onde não há um livre mercado determinando os preços. De um lado, se não há liberdade para a determinação dos preços, é impossível saber a genuína demanda dos consumidores. De outro, se não há preços livres, não há como fazer um cálculo econômico sensato.

Se não há preços livres, é impossível fazer cálculo de custos. Sem cálculo de custos, é impossível estimar lucros e prejuízos. Sem se estimar lucros e prejuízos, é impossível fazer qualquer investimento racional. E sem investimentos racionais, é impossível atender às genuínas demandas da população.

E daí tem-se a escassez generalizada.

Uma economia planejada ou dirigida pode ser tudo, menos economia. É apenas um sistema de tatear no escuro. Não permite uma escolha racional de meios que tenham em vista alcançar objetivos desejados.

Aquilo que os socialistas e intervencionistas chamam de "planejamento consciente" significa, na realidade, a eliminação de toda a ação consciente e proposital.”

   Talvez Einstein não tivesse lido Mises, contudo, isso coloca Mises como inteligência superior à de Einstein, pelo menos no tocante à economia.

   Posso dar vários exemplos da realidade de que a tal “economia planificada’ sempre foi uma fraude, uma crueldade planejada para colocar os trabalhadores na miséria e no sofrimento. Apesar de sua obviedade, nunca é demais citar o experimento fracassado de Lênin na URSS que começou em 1917. Até hoje temos o exemplo de Cuba onde a escassez é generalizada, além de vários outros países socialistas/comunistas como Índia, África do Sul, etc.

   No Brasil tivemos o governo Sarney (1985-1990), um excelente exemplo real da tal “economia planificada” onde a inflação chegou a 80% ao mês. O pessoal mais antigo lembrará dos tais “fiscais do Sarney”, o que é um belo exemplo da tentativa (fraudulenta e frustrada) de Oskar Lange de refutar Mises. Depois veio Hayek. Hayek percebeu que Lange cometeu vários erros.

   “No socialismo de Lange, teria de haver um exército de controladores (fiscais) para verificar os cálculos feitos pelos dirigentes das empresas. Porém, o que exatamente motivaria os dirigentes das empresas e das filiais?  O que os impediria de trapacear?  Ademais, os resultados desses cálculos teriam de ser comparados com cálculos contrafatuais que deveriam ser realizados posteriormente a fim de se determinar se os chefes das empresas haviam de fato escolhido a melhor combinação possível de fatores de produção.  Tudo isso exigiria um imenso estado burocrático.”; disponível em:

https://mises.org.br/article/1141/o-calculo-economico-sob-o-socialismo#:~:text=Na%20economia%20socialista%20que%20Mises,privada%20dos%20meios%20de%20produ%C3%A7%C3%A3o.

   Deixo agora para o leitor, sobre esse período do governo Sarney, um trecho do livro “Você foi Enganado, Mentiras, Exageros e Contradições dos últimos Presidentes do Brasil” de Chico Otávio e Cristina Tardáguila (leitura fortemente recomendada); páginas 97 e 98:

“O país estava eufórico – o governo, a população e até mesmo a imprensa. Poucas semanas depois do lançamento do plano econômico, a Rede Globo decidiu encampar o projeto. O então todo-poderoso José Bonifácio de oliveira Sobrinho, o Boni, que comandava todas as áreas de programação da emissora, debruçou-se sobre uma mesa e criou não só uma campanha telivisiva, como também um forte slogan: “Tem que dar certo!”. Na época, Boni não hesitou em convocar nomes de grande  apelo popular para defender o Cruzado. A apresentadora Xuxa Meneghel, por exemplo, tinha acabado de estrear seu programa infantil, o Xou da Xuxa, Usava marias-chiquinhas e chamava as crianças de “baixinhos”. Na TV, abraçada a um urso de pelúcia, pedia que eles lembrassem às mães da importância de pedir a nota fiscal nos mercados. A atriz Lucélia Santos fazia um sucesso estrondoso como protagonista da novela Sinhá Moça, exibida às 18 horas na emissora. No comercial de que participou, dizia com firmeza:

- O pão nosso de cada dia, o café, o leite... Tudo tem que andar dentro da tabela. Não pague nem um centavo a mais e comece bem o seu dia. Tem que dar certo!”

Até a economista portuguesa naturalizada brasileira Maria da Conceição Tavares, crítica ferrenha de planos econômicos anteriores, deixou-se contaminar pela proposta de combate à inflação. Em entrevista à TV, emocionou-se ao dizer que estava “muito contente” com a equipe econômica de Sarney, pois ela ajudava “o governo a reencontrar seu rumo”. Para Maria da Conceição, o Plano Cruzado era um “programa sério” que dava ao brasileiro a oportunidade de ter esperanças novamente.”

   E aí temos o “imenso estado burocrático”, todos vivendo do dinheiro de imposto que sai picado do bolso do cidadão e o cidadão não nota porque o cidadão vira um escravo pagador de impostos vivendo na "igualdade"... mas sempre tem uns mais iguais do que os outros. E é óbvio que a Maria da Conceição Tavares - uma espécie de Olavo de Carvalho de saias no tocante à oratória e ao cigarro -, elogiaria uma medida socialista dessas. É assim que se socializa um país, passo a passo (o socialismo Fabiano, aliás, é o único que existe), pois o próprio Einstein afirma (com razão) em seu ensaio que:

“Contudo é preciso lembrar que uma economia planejada ainda não é socialismo. Uma economia planejada pode ser acompanhada por uma escravização completa do indivíduo. A realização do socialismo requer a solução de alguns problemas sociopolíticos extremamente difíceis: como é possível, em face da centralização abrangente do poder político e econômico, impedir que a burocracia se torne todo-poderosa e prepotente? Como se podem proteger os direitos do indivíduo e garantir com isso um contrapeso democrático ao poder da burocracia?”

   Uma “economia planificada” que, na realidade do "chão de fábrica", traduz-se basicamente em tabelamento de preços pelo governo é uma das características principais daquilo que se chama Socialismo, junto com forte imposto progressivo (alta carga tributária - segunda medida do Manifesto Comunista), são as duas características principais. Essas duas características praticamente definem se um determinado país é Socialista/Comunista, pois elas acarretam numa sucessão de fatores sociológicos que levam à concentração de dinheiro e poder nas mãos de poucas pessoas às custas da miséria e do sofrimento da esmagadora maioria.

   Em relação às duas perguntas de Einstein no trecho acima, a resposta é “Não”, no caso de socialismo/comunismo não é possível impedir que a burocracia se torne toda-poderosa e, por conseguinte, não tem como proteger os direitos do indivíduo. Sem Moral, em sistema nenhum de governo é possível as duas perguntas terem respostas favoráveis posto que não existe modelo perfeito de sociedade e nem sistema perfeito de governo. O que existe são uns modelos melhores do que outros e, ainda assim, depende de cada país e é sazonal ao longo do tempo.

   República, Monarquia, Parlamentarismo, República Parlamentarista, Democracia, Aristocracia, Tirania, Semipresidencialismo, etc; incluindo sistemas financeiros, econômicos, sociológicos, administrativos, etc; todos eles esbarram na Moral, basta alguém trapacear mesmo no melhor dos modelos que ele desmorona como um castelo de cartas. Como exemplo cito de novo o Brasil que, até 1889, era Monarquia e deram um golpe (trapacearam) e transformou-se em República e a coisa não melhorou em nada, ao contrário. Caso hoje o Brasil voltasse a ser Monarquia, também não mudaria em nada. O problema é a baixeza intelectual e moral da população. Decai a inteligência, decai a moral e vice-versa, não importando qual decai primeiro, uma vem de arrasto da outra.

   Não sou Liberal, nem Libertário, nem Positivista, nem Socialista, nem Capitalista, nem Comunista, etc, sou um ser humano.

   Aliás, quero que essas “teorias econômicas”,  analisadas como um todo, explodam-se, pois todas elas na história da humanidade sempre desconsideram a Moral.

   Por exemplo, um Liberal muitas vezes se auto-define como “Liberal na economia e Conservador nos costumes”. É um mero chavão, mas tem muitos que acreditam nisso. Esta é uma mentalidade liberal/positivista, em se tratando daquele positivismo de Augusto Comte.

   Liberal na economia e conservador nos costumes, porém, você sempre será logrado nos costumes, o prejuízo financeiro sempre vem depois. No lado positivista, a economia é a parte técnica e os costumes são a parte ideológica, que é desconsiderada por eles. Exemplo: temos dois ou mais sócios numa empresa e lá pelas tantas um sócio passa a perna no(s) outro(s); isso são costumes, ele mentiu, enganou o(s) outro(s). Ideologicamente ele passou uma idéia errada a respeito do caráter dele.

   Todo Liberal/Positivista sempre será enganado nos costumes, o prejuízo econômico/financeiro vem, inexoravelmente, depois. Aí parte-se para a briga no Poder Judiciário, ou seja, o Estado (daí o Estado 'burrocrático' é bom) intervindo nas Relações Sociais porque as relações Sociais não tiveram Moral, porém, se a sociedade de um modo geral não tem Moral, como o Poder Judiciário - que faz parte da sociedade - poderá ter?

     Por isso que certos autores dizem que "liberal é putinha de comunista".

   Einstein até pode ser considerado um gênio, até pode ter sido colocado como um gênio pela grande propaganda (tipo um Chê Guevara intelectual), mas não podemos nos esquecer que, além de ter sido um Socialista (e Socialismo, sempre, sempre, sempre, leva ao Comunismo), Einstein foi aquele que em entrevista ao George Sylvester Viereck publicada no The Saturday Evening Post em 1929, disse em resposta à pergunta de George “Você culpa o Kaiser pela ruína da Alemanha?”, ao que Einstein respondeu:

   "- O Kaiser teve boas intenções. Ele muitas vezes tem os instintos corretos. Suas intuições com frequência foram mais inspiradas do que as razões elaboradas de seu ministério de Relações Exteriores. Infelizmente, ele sempre estava cercado por conselheiros precários."

   Provavelmente ele falava do Kaiser Guilherme II que dispensou Otto Von Bismarck em 1890 por propor leis anti-socialistas e que depois, Guilherme II, levou o mundo à primeira guerra mundial. E Einstein se dizia pacifista.

   Todo aquele que se diz socialista/comunista é um burro - astucioso maligno - mentiroso, fingido e criminoso.

   Agora lembrei de Bill Gates ao defender o socialismo fazendo toda uma enrolação com o  clima, disponível em https://www.socialismocriativo.com.br/bill-gates-surpreende-o-mundo-ao-afirmar-so-o-socialismo-e-capaz-de-salvar-o-clima-o-setor-privado-e-incapaz/.

   Em pesquisa rápida no socialista Google você encontrará essa entrevista em  outros sites.

   Lembrei-me também do Fórum Econômico mundial no qual Xi Jinping é o palestrante de honra há anos, sendo que Klaus Schwab ressaltou em 2018 e vem confirmando ao longo desses anos de FEM que: "A China é o modelo de sociedade que queremos para o mundo".

   Parece-me estranho tantas pessoas com dinheiro e poder defenderem o Socialismo/Comunismo que pretende ser uma ideologia que diz combater pessoas com dinheiro e poder. Eles combatem a si próprios?!?

   Nesta lista podemos colocar Klaus Schwab, George Soros, Xi Jinping, Elon Musk, Rockefeller, Rothschild e mais algumas famílias de banqueiros que controlam o sistema financeiro mundial e, por conseguinte, controlam praticamente todos os conglomerados empresariais internacionais. Isso é praticamente um governo mundial onde a ONU é o órgão burocrático.
     Devemos atentar para a definição da coisa: "concentração de dinheiro e poder nas mãos de poucas pessoas às custas da miséria e do sofrimento da esmagadora maioria"; a partir daí vem o nome e, neste caso, pouco importa se é capitalismo, comunismo, socialismo, neoliberalismo, cristianismo, judaísmo, islamismo, etc, dê o nome que quiser, mas olhe para a realidade e se pergunte: é certo ou errado?

 

Referências 

https://www.jstor.org/stable/10.5749/j.ctttsbzm

file:///C:/Users/Arist%C3%B3teles/Desktop/Einstein/Quando%20Mises%20destruiu%20o%20socialismo_%20100%20anos.mhtml

https://mises.org.br/article/2398/por-que-uma-economia-dirigida-sempre-ira-fracassar

https://www.marxists.org/portugues/einstein/1949/05/socialismo.htm

https://monthlyreview.org/2009/05/01/why-socialism/

https://mises.org.br/article/1141/o-calculo-economico-sob-o-socialismo#:~:text=Na%20economia%20socialista%20que%20Mises,privada%20dos%20meios%20de%20produ%C3%A7%C3%A3o.

https://www.socialismocriativo.com.br/bill-gates-surpreende-o-mundo-ao-afirmar-so-o-socialismo-e-capaz-de-salvar-o-clima-o-setor-privado-e-incapaz/


Einstein Socialista. Organização: Hugo Albuquerque. Editora Autonomia Literária, 2023.

Você foi Enganado: mentiras, exageros e contradições dos últimos presidentes do Brasil. Chico Otávio e Cristina Tardáguila. Editora Intrínseca, 2018.


domingo, 14 de abril de 2024

Arquivo de Configuração apache2.conf para PHP FPM/FastCGI


# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.

# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
# /etc/apache2/
# |-- apache2.conf
# | `--  ports.conf
# |-- mods-enabled
# | |-- *.load
# | `-- *.conf
# |-- conf-enabled
# | `-- *.conf
# `-- sites-enabled
# `-- *.conf
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
#   together by including all remaining configuration files when starting up the
#   web server.
#
# * ports.conf is always included from the main configuration file. It is
#   supposed to determine listening ports for incoming connections which can be
#   customized anytime.
#
# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
#   directories contain particular configuration snippets which manage modules,
#   global configuration fragments, or virtual host configurations,
#   respectively.
#
#   They are activated by symlinking available configuration files from their
#   respective *-available/ counterparts. These should be managed by using our
#   helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
#   their respective man pages for detailed information.
#
# * The binary is called apache2. Due to the use of environment variables, in
#   the default configuration, apache2 needs to be started/stopped with
#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
#   work with the default configuration.


# Global configuration
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the Mutex documentation (available
# at <URL:http://httpd.apache.org/docs/2.4/mod/core.html#mutex>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
ServerRoot "/etc/apache2"
#ServerName exemplo.com.br
#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
#Mutex file:${APACHE_LOCK_DIR} default

#
# The directory where shm and other runtime files will be stored.
#

DefaultRuntimeDir ${APACHE_RUN_DIR}

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 180

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 600

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 9


# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log

#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
LogLevel warn

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

# Include list of ports to listen on
Include ports.conf

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory "/">
Options None
AllowOverride None
Require all denied
</Directory>

<Directory "/usr/share">
AllowOverride None
Require all denied
</Directory>

<Directory "/var/www/">
Options None
AllowOverride None
DirectoryIndex index.py index.php indez.pl index
Require all denied
        <FilesMatch ".+\.(phtml|htm|html|asp|py|pl)$">
                SetHandler "proxy:unix:/run/php/php8.3-fpm.sock|fcgi://localhost"
        </FilesMatch>
<LimitExcept GET POST HEAD>
            Require all denied
</LimitExcept>
</Directory>

#
#<Directory /srv/>
# Options Indexes FollowSymLinks
# AllowOverride None
# Require all granted
#</Directory>

<Directory "/var/www/exemplo">
    Options +SymLinksIfOwnerMatch +ExecCGI -Indexes -MultiViews
    AllowOverride None
    DirectoryIndex index.py index.php indez.pl index
    Require all granted
    <Files "*.php">
        #Allow from all
        Require valid-user
        Allow from 127.0.0.1
        #Allow from 12.123.123.123
        Satisfy Any
    </Files>
    <Files "index.py">
        Require all granted
    </Files>
    <LimitExcept GET POST HEAD>
        Require all denied
    </LimitExcept>
    #IndexIgnore *.php *.js *.css *.html *.log *.sql *.pdf *.swf *.rtf *.doc *.odt *.asp *.py
    #RewriteRule ^arquivo\.php$ arquivos/arquivo.php
    RewriteEngine on
    #ReWriteRule ^About_us$ About_us.html [NC]
    RewriteBase "/"
    #RewriteRule "\.js"   "-" [F]
    #RewriteRule "\.css"   "-" [F]
    # Evitar que outros utilizem as imagens consumindo banda
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?exemplo.com.br [NC]
    RewriteRule \.(jpg|jpeg|png|gif|webp|ico)$ - [NC,F,L]
    #
    # Remover extensão dos arquivos (exemplo: /arquivo.php para /arquivo)
    # A extensões devem ser removidas no html também, por exemplo,
    # 'arquivo.php' ou 'arquivo.asp', etc, deve ficar somente 'arquivo', senão bloqueia o POST.
    RewriteCond %{THE_REQUEST} ^[A-Z]{2,}\s([^.]+)\.py [NC]
    RewriteRule ^ %1 [R,L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.py -f
    RewriteRule ^(.*?)/?$ $1.py [L]
    #
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.asp [NC]
    RewriteRule ^ %1 [R,L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.asp -f
    RewriteRule ^(.*?)/?$ $1.asp [L]
    #
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
    RewriteRule ^ %1 [R,L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^(.*?)/?$ $1.php [L]
    # Esta regra logo abaixo leva para o example.com da IANA
    #RewriteRule ^(.*)$ www.exemplo.com.br/$1 [NC]
    # Ocultam pasta do caminho da URL, os caminhos no html devem ser alterados também
    RewriteRule "^index_pasta(.*)$" "pasta/pasta.py" [L]
    RewriteRule "^tabelaspasta(.*)$" "pasta/tabelaspasta.py" [L]
    RewriteRule "^loginpasta(.*)$" "pasta/loginpasta.asp" [L]
    RewriteRule "^index_logado_prof(.*)$" "pasta/index_logado_prof.asp" [L]
    RewriteRule "^cad_usu_pasta(.*)$" "pasta/cad_usu_pasta.asp" [L]
    #
    # Bloqueio de bots
    RewriteCond %{HTTP_USER_AGENT} MJ12bot [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} AhrefsBot [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} SEMrushBot [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} Bytespider [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} DotBot [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} MauiBot [NC]
    RewriteCond %{HTTP_USER_AGENT} (gumgum-bot|postmanruntime|ag_dm_spider|scrapy|chimebot) [NC]
    RewriteRule .* - [F,L]
</Directory>

<Directory "/var/www/html">
Options None
AllowOverride None
DirectoryIndex None
Require all denied
<LimitExcept GET POST HEAD>
            Require all denied
</LimitExcept>
</Directory>

# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#
# AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
    Require all denied  
    Satisfy All
</FilesMatch>
#
<Files "index.php">
    Require all granted
    # Order Allow,Deny
    # Allow from all
</Files>
#
<FilesMatch "^\.">
    Require all denied
    Satisfy All
</FilesMatch>
#
<DirectoryMatch "^(.*/)*\..*">
    Require all denied
    Satisfy All
</DirectoryMatch>
#
<LocationMatch "^(.*/)\..*">
    Require all denied
    Satisfy All
</LocationMatch>
#
# Apache2 Tunning
#<IfModule mpm_prefork_module>
#       # Número de processos de servidor filho criados na inicialização:
#       StartServers              4
#       # Número mínimo de processos de servidor filho ociosos:
#       MinSpareServers          20
#       # Número máximo de processos de servidor filho ociosos:
#       MaxSpareServers          40
#       # Número máximo de conexões que serão processadas simultaneamente:
#       MaxRequestWorkers       200
#       # Limita o número de conexões que um servidor filho individual manipulará durante sua vida útil:
#       MaxConnectionsPerChild 4500
#</IfModule>
#
<IfModule mpm_event_module>
        # Define o limite superior do número de processos (padrão 16):
        ServerLimit             10
        # Número de processos de servidores filhos criados na inicialização (padrão 3):
        StartServers            3
        # Número mínimo de processos de servidor filho ociosos:
##       MinSpareServers          20
        # Número máximo de conexões que serão processadas simultaneamente (padrão 256):
        MaxRequestWorkers       250
        # Número mínimo de threads ociosas em todo o servidor (padrão 75):
        MinSpareThreads         75
        # Número máximo de processos de servidor filho ociosos:
##      MaxSpareServers          40
        # Número máximo de threads ociosas em todo o servidor (padrão 250):
        MaxSpareThreads         200
        # Define o número de threads criadas por processo filho (padrão 25):
        ThreadsPerChild         25
        # Define o valor máximo para ThreadsPerChild (padrão 64):
        ThreadLimit             64
        # Limita o número de conexões que um processo individual de servidor filho manipulará durante sua vida útil:
        MaxConnectionsPerChild  4480
        # Define o limite de conexões simultâneas por processo (padrão 2):
        AsyncRequestWorkerFactor 2
</IfModule>
#

# The following directives define some format nicknames for use with
# a CustomLog directive.
#
# These deviate from the Common Log Format definitions in that they use %O
# (the actual bytes sent including headers) instead of %b (the size of the
# requested file), because the latter makes it impossible to detect partial
# requests.
#
# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
# Use mod_remoteip instead.
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
#
AddType fcgid(73|74|80|81|82|83)-script .php .phtml .htm .html .asp .py .pl
AddType application/x-httpd-php .php .phtml .htm .html .asp .py .pl
AddType application/x-httpd-php-source .php .php8
AddType application/wasm .wasm
#
#AddHandler fcgid(73|74|80|81|82|83)-script .php .phtml .htm .html .asp .py .pl
AddHandler application/x-httpd-php .php .phtml .htm .html .asp .py .pl
#AddHandler application/x-httpd-php-source .php .php3 .php4 .php5 .php6 .php7 .php8
#AddHandler application/wasm .wasm
#
AddHandler fcgid(73|74|80|81|82|83)-script .fcgi .php .phtml .htm .html .asp .py .pl
#FcgidConnectTimeout 20
#FcgidMaxRequestLen 10485760
#FcgidMaxProcessesPerClass 10
#FcgidIOTimeout 100
#
<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
#
ErrorDocument 400 "Requisição mal feita pelo cliente!"
#ErrorDocument 400 /cgi-bin/crash-recover
ErrorDocument 400 https://www.exemplo.com.br/errors.html
#
# Na diretiva 401 não pode usar URI absoluta.
#ErrorDocument 401 /errors.html
ErrorDocument 401 "Necessita Autorização!"
#ErrorDocument 401 /cgi-bin/crash-recover
ErrorDocument 401 /bazinga
#ErrorDocument 401 /subscription_info.html
#
ErrorDocument 403 "Acesso não permitido, estamos de olho!"
#ErrorDocument 403 Forbidden!
#ErrorDocument 403 /cgi-bin/crash-recover
#ErrorDocument 403 /errors/forbidden.py?referrer=%{escape:%{HTTP_REFERER}}
ErrorDocument 403 https://www.exemplo.com.br/bazinga
#
#ErrorDocument 404 /errors/bad_urls.php
ErrorDocument 404 "Página não encontrada!"
##ErrorDocument 404 /cgi-bin/crash-recover
ErrorDocument 404 https://www.exemplo.com.br/bazinga
#
ErrorDocument 408 "Excedeu o tempo da requisição!"
#ErrorDocument 408 /cgi-bin/crash-recover
ErrorDocument 408 https://www.exemplo.com.br/errors.html
#
ErrorDocument 500 "Deu um problema no Servidor!"
#ErrorDocument 500 /cgi-bin/crash-recover
ErrorDocument 500 https://www.exemplo.com.br/errors.html
#ErrorDocument 500 ttps://example.com/cgi-bin/server-error.cgi
#
ErrorDocument 501 "O Servidor não suporta essa função!"
#ErrorDocument 501 /cgi-bin/crash-recover
ErrorDocument 501 https://www.exemplo.com.br/errors.html
#
# 1xx – Solicitações informativas
# 2xx – Solicitações bem-sucedidas
# 3xx – Redirecionamentos
# 4xx – Erros do lado do cliente
# 5xx – Erros do lado do servidor
#
# 400 Bad request
# 401 Authorization required
# 403 Forbidden
# 404 Not Found
# 405 Method not implemented
# 407 Proxy authentication required
# 408 Request time-out
# 500 Internal server error
# 501 Not implemented
# 502 Bad gateway
# 503 Service unavailable (many requests)
# 504 Gateway time-out
# 505 HTTP version not supported
#
# 200 URL encontrada e transmissão concluída com sucesso.
# 400 Solicitação (request) incompreensível, protocolo inexistente ou tipo incompatível.
# 404 Não foi encontrada a URL solicitada.
# 405 O servidor não suporta o método solicitado.
# 500 Erro desconhecido de natureza do servidor.
# 503 Capacidade máxima do servidor alcançada.
# De 200 até 299: Requisições bem sucedidas
# De 300 até 399: Informações
# 301 - Move Permanently
# 302 - Move Temporarily
# 305 - Use Proxy
# De 400 até 499: Erros de solicitação (request)
# De 500 até 599: Erros do servidor e/ou programação
ServerTokens ProductOnly
ServerSignature Off
TraceEnable Off
#
<IfModule mod_headers.c>
  # Add security and privacy related headers
  # Header always set Access-Control-Allow-Origin "https://www.exemplo.com.br/"
  Header set Content-Security-Policy "upgrade-insecure-requests;"
  Header always set Permissions-Policy "accelerometer=(),autoplay=(),camera=(),encrypted-media=(),fullscreen=*,gyroscope=(),interest-cohort=(),magnetometer=(),microphone=(),midi=(),sync-xhr=*,usb=(),xr-spatial-tracking=(),geolocation=*"
  Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
  Header always edit Set-Cookie (.*) "$1; HttpOnly; Secure"
  Header set X-Content-Type-Options "nosniff"
  Header set X-XSS-Protection "1; mode=block"
  Header set Referrer-Policy "strict-origin, strict-origin-when-cross-origin"
  Header always set X-Frame-Options "SAMEORIGIN"
  SetEnv modHeadersAvailable true
</IfModule>
#
<IfModule security2_module>
    Include /etc/modsecurity/crs/*.conf
    Include /etc/modsecurity/modsecurity.conf
</IfModule>
#
# Mod Status
# Você pode acessar as estatísticas do servidor usando um navegador da Web para acessar a página http://your.server.name/server-status:
#<Location "/server-status">
#    SetHandler server-status
#    Require host www.exemplo.com.br
#    Require all granted
#</Location>
#
AddDefaultCharset UTF-8
#LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
#LoadModule proxy_fcgi_module /usr/lib/apache2/modules/mod_proxy_fcgi.so
# Habilite os módulos:
# a2enmod expires
# a2enmod rewrite
# a2enmod status
# a2enmod mpm_prefork          # para php-fpm precisa desabilitar
# a2enmod headers
# a2enmod ssl
# a2dismod php8.3              # disable modphp (opcional)
# a2dismod mpm_prefork         # para php-fpm, precisa trocar para mpm_event
# a2enmod mpm_event            # enable mpm_event
# a2enmod proxy_fcgi setenvif  # enable proxy_fcgi, precisa para php-fpm
# a2enconf php8.3-fpm          # enable php8.3-fpm
# a2enmod proxy
# a2enmod status
# apt-get install libapache2-mod-evasive
# apt-get install libapache2-mod-security2
# IPv6 2a02:4780:14:2d67::1
# ttps://securityheaders.com/
#
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
#
# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
#

Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário

 

EXPLICAÇÃO DA ARITMÉTICA BINÁRIA

Esta é uma tradução livre do artigo do filósofo Leibniz que pode ser acessado no link ao final na versão em Inglês, sendo que procurei manter o mais próximo da versão em Inglês.
Acredita-se que Leibniz foi o primeiro a utilizar o sistema binário em meados de 1700 (o artigo foi publicado em 1703), alguns dizem que Leibniz foi o inventor do sistema binário, porém, há controvérsias.
O que se sabe é que este artigo de Leibniz é o primeiro documento de que se tem notícia sobre o sistema binário como o conhecemos, onde o próprio Leibniz menciona as figuras chinesas de Fuxi datadas de mais de 4 mil anos atrás.

EXPLICAÇÃO DA ARITMÉTICA BINÁRIA QUE USA APENAS OS CARACTERES 0 E 1 COM ALGUMAS OBSERVAÇÕES SOBRE SUA UTILIDADE E SOBRE A LUZ QUE LANÇA SOBRE AS ANTIGAS FIGURAS CHINESAS DE FUXI

O cálculo normal da aritmética é feito de acordo com a progressão de dezenas. São usados dez caracteres, que são 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, que significam zero, um e os números sucessivos até nove, inclusive. E então, ao chegar a dez, recomeça-se escrevendo dez (10); dez vezes dez ou cem (100); dez vezes cem ou mil (1000); dez vezes mil ou 10 mil (10000) e assim por diante.


Mas em vez da progressão de dezenas, durante muitos anos usei a progressão mais simples de todas, que procede de dois em dois, tendo descoberto que é útil para o aperfeiçoamento da ciência dos números. Assim não utilizo outros caracteres exceto 0 e 1 e ao chegar a dois, começo de novo. É por isso que dois é aqui expresso por "10" e duas vezes dois, ou quatro, por "100", duas vezes quatro, ou oito, por "1000", duas vezes oito, ou dezesseis, por "10000", e assim por diante. Veja a Tabela de Números que pode ser estendida até onde for desejado.

Um olhar torna evidente a razão de uma célebre propriedade da progressão geométrica por dois em números inteiros, propriedade esta que sustenta que se tivermos apenas um desses números para cada grau podemos compor a partir deles todos os outros números inteiros abaixo do duplo do mais alto grau.


Pois aqui é como se disséssemos, por exemplo, que 111, ou 7, é a soma de quatro, dois e um, e que 1101, ou 13, é a soma de oito, quatro e um. Esta propriedade permite aos avaliadores pesar todos os tipos de massas com poucos pesos e pode servir na cunhagem para fornecer vários valores com poucas moedas. Estabelecer esta expressão de números nos permite realizar com muita facilidade todo tipo de operações.


E todas essas operações são tão fáceis que não haveria necessidade de adivinhar ou experimentar nada, como tem de ser feito na divisão comum. Não haveria mais necessidade de aprender nada de cor como acontece no cálculo comum onde é preciso decorar, por exemplo, que 6 e 7 juntos são 13 e que 5 multiplicado por 3 dá 15 de acordo com a Tabela "um vezes um é um" que é chamada Pitagórica(1). Mas aqui, tudo isso é encontrado e provado a partir da fonte, como fica claro nos exemplos anteriores sob os sinais meia-lua e círculo com ponto.

Contudo, não estou de forma alguma recomendando esta forma de contar a fim de introduzi-la no lugar da prática comum de contar até dez. Pois, além de estarmos acostumados com isso, não temos necessidade de decorar o que já aprendemos. A prática de contar até dez é mais curta e os números não são tão longos. E se estivéssemos acostumados a avançar por doze ou dezesseis, haveria ainda mais vantagem. Mas o cálculo por dois, isto é, por 0 e 1, como compensação pelo seu comprimento, é a forma mais fundamental de cálculo para a ciência e oferece novas descobertas que são então consideradas úteis, mesmo para a prática de números e especialmente para geometria.
A razão para isto é que, à medida que os números são reduzidos aos princípios mais simples, como 0 e 1, uma ordem maravilhosa torna-se aparente em todo o processo. Por exemplo, na própria Tabela dos Números fica claro em cada coluna que ela é regida por ciclos que sempre recomeçam. Na primeira coluna é 01, na segunda 0011, na terceira 00001111, na quarta 0000000011111111 e assim por diante. E pequenos zeros foram colocados na tabela para preencher a lacuna no início da coluna e para enfatizar melhor esses ciclos. Além disso, foram traçadas linhas dentro da tabela, o que mostra que o que está contido nas linhas sempre ocorre novamente abaixo delas. E acontece ainda que números quadrados, números cúbicos e outras potências, também números triangulares, números piramidais e outros números de figuras têm ciclos semelhantes de modo que as tabelas deles podem ser escritas imediatamente sem qualquer cálculo. E esta tarefa, demorada no início, mas que então fornece os meios para tornar o cálculo econômico e prosseguir até o infinito por meio de regras é infinitamente vantajosa.

O que é surpreendente neste cálculo é que esta aritmética de 0 e 1 contém o mistério das linhas de um antigo rei e filósofo chamado Fuxi(2), que se acredita ter vivido há mais de 4.000 anos e a quem os chineses consideram como o fundador de seu império e de suas ciências. Existem várias figuras lineares que lhe são atribuídas, todas elas remontando a esta aritmética, mas basta dar aqui a "Figura das Oito Cova", como é chamada, que se diz fundamental, e juntar a elas a explicação que é óbvia, desde que se note, em primeiro lugar, que uma linha inteira (-) significa unidade, ou 1, e em segundo lugar, que uma linha quebrada (--) significa zero, ou 0.



Os Chineses perderam o significado de "Cova" ou "Lineações de Fuxi" talvez há mais de mil anos e escreveram comentários sobre o assunto em que procuraram não sei que significados distantes, de modo que a sua verdadeira explicação vêm dos europeus. Eis como: há pouco mais de dois anos enviei ao Reverendo Padre Bouvet(3), célebre jesuíta francês que vive em Pequim, o meu método de contar por 0 e 1 e nada mais foi necessário para fazê-lo reconhecer que meu método foi a chave que o lembrou das figuras de Fuxi. Escrevendo-me em 14 de novembro de 1701, enviou-me a grande figura deste príncipe filosófico, que vai até 64, e não deixa mais margem para duvidar da veracidade da nossa interpretação de modo que se pode dizer que este Padre decifrou o enigma de Fuxi com a ajuda do que eu havia comunicado a ele. E como estas figuras são talvez o mais antigo monumento da ciência que existe no mundo, esta restituição do seu significado após tão grande intervalo de tempo parecerá ainda mais curiosa.

A concordância entre os números de Fuxi e minha Tabela de Números é mais óbvia quando os zeros iniciais são fornecidos na Tabela; parecem supérfluos, mas são úteis para mostrar melhor os ciclos da coluna, assim como lhes forneci pequenos anéis para distingui-los dos zeros necessários. E este acordo deixa-me com uma opinião elevada sobre a profundidade das meditações de Fuxi, uma vez que o que nos parece fácil agora não o foi naqueles tempos distantes. A aritmética binária ou diádica é, com efeito, muito fácil hoje em dia, exigindo pouca reflexão uma vez que é grandemente auxiliada pelo nosso modo de contar, do qual, ao que parece, apenas o excesso é removido. Mas esta aritmética comum por dezenas não parece muito antiga e pelo menos os Gregos e os Romanos a ignoravam e foram privados de suas vantagens. Parece que a Europa deve a sua introdução a Gerbert, que se tornou Papa sob o nome de Silvestre II(4), que a herdou dos Mouros da Espanha.

Ora, como se acredita na China que Fuxi é mesmo o autor dos caracteres chineses, embora estes tenham sido muito alterados em épocas posteriores, o seu ensaio sobre aritmética leva-nos a concluir que algo considerável poderia mesmo ser encontrado nestes caracteres no que diz respeito aos números e ideias se alguém pudesse descobrir os fundamentos da escrita chinesa, tanto mais que se acredita na China que ele teve consideração pelos números ao estabelecê-los. O Reverendo Padre Bouvet está fortemente inclinado a insistir neste ponto e é muito capaz de o conseguir de várias maneiras. No entanto, não sei se alguma vez houve uma vantagem nesta escrita Chinesa semelhante àquela que necessariamente tem de haver no projeto da Característica I que é que todo raciocínio derivável de noções poderia ser derivado dos caracteres dessas noções por uma forma de cálculo que seria um dos meios mais importantes de ajudar a mente humana.

NOTAS:

1. Leibniz está aqui se referindo à tabuada de multiplicação (Tabuada).
2. Uma figura mitológica, que se diz ter vivido no terceiro milênio a.C.
3. Joachim Bouvet (1656-1730), um missionário jesuíta francês que passou a maior parte da sua vida adulta na China. Ele e Leibniz corresponderam-se entre 1697 e 1707.
4. No seu “Discurso sobre a teologia natural dos chineses” (1716), Leibniz repetiu a sua afirmação de que Gerbert (ou seja, Gerbert d'Aurillac), que foi papa de 999 a 1003, introduziu o sistema decimal para a Europa cristã. Veja Leibniz, Writings on China , trad. e Ed. Daniel J. Cook e Henry Rosemont Jr. (Chicago: Tribunal Aberto, 1994), p135. A afirmação de Leibniz está errada; embora se acredite tradicionalmente que Gerbert introduziu os algarismos arábicos na Europa cristã, ele não introduziu o sistema decimal.

https://www.leibniz-translations.com/binary.htm