Difference between revisions of "Computador Pessoal Linux"

From absortowiki

m (→‎Configurações de Ambiente de Trabalho: hibernando a máquina sem privilégios)
Line 114: Line 114:
 
ls /usr/share/zoneinfo # para ver quais as timezones disponíveis - talvez seja necessário navegar dentro das pastas para encontrar a timezone que se aplique a sua região
 
ls /usr/share/zoneinfo # para ver quais as timezones disponíveis - talvez seja necessário navegar dentro das pastas para encontrar a timezone que se aplique a sua região
 
sudo ln -sf /usr/share/zoneinfo/Continente/Local /etc/localtime # cria o symlink para a timezone desejada
 
sudo ln -sf /usr/share/zoneinfo/Continente/Local /etc/localtime # cria o symlink para a timezone desejada
 +
</syntaxhighlight>
 +
 +
 +
======Hibernando Sem Privilégios======
 +
 +
Essas configurações servem especificamente para hibernar a máquina, mas com
 +
os mesmos passos é possível desligá-la ou reiniciá-la, simplesmente adaptando os comandos.
 +
 +
Todos os comandos devem ser rodados com privilégios adminstrativos.
 +
 +
'''Importante:''' Não recomendável configurar um servidor dessa maneira já que um usuário sem privilégios poderia desligar repetidamente um servidor (''Denial Of Service'').
 +
 +
# Adicionamos um grupo chamado hibernate editando com seu editor favorito o arquivo <code>/etc/group</code>:
 +
<syntaxhighlight lang=bash>
 +
hibernate:x:510:absorto
 +
</syntaxhighlight>
 +
 +
# Encontramos onde o binário responsável pelo comando está, no meu caso <code>/usr/sbin/hibernate</code>:
 +
<syntaxhighlight lang=bash>
 +
# which hibernate
 +
/usr/sbin/hibernate
 +
</syntaxhighlight>
 +
 +
# Alteramos as permissões e posse do binário:
 +
<syntaxhighlight lang=bash>
 +
# chown root:hibernate /usr/sbin/hibernate
 +
# chmod 750
 +
# chmod u+s hibernate
 +
<syntaxhighlight lang=bash>
 +
 +
# Testamos hibernar a máquina sem privilégios:
 +
<syntaxhighlight lang=bash>
 +
$ hibernate -n
 
</syntaxhighlight>
 
</syntaxhighlight>

Revision as of 12:34, 24 October 2021

Computador Pessoal Linux

Instalando

Ambientes de Trabalho

Configurações de Ambiente de Trabalho

Habilitando "Tap-to-Click" no Trackpad

Para todos os passos será necessário poderes administrativos. Primeiro, copiamos o arquivo 40-libinput.conf de /usr/share/X11/xorg.conf.d/ para /etc/X11/xorg.conf.d/

Em seguida, editamos o arquivo que acabamos de copias, adicionando a opção "Tapping" "on" na seção de touchscreen, da seguinte forma:

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "on"
EndSection

Depois basta reiniciar o sistema.

Bluetooth

Em novas versões do Linux, conectar-se à um dispostivo usando Bluetooth deveria ser uma tarefa simples. No entanto, nem sempre é assim tão fácil. Se você ainda não tiver instalado no seu sistema, instale o Bluez5 para interagir com dispositivos Bluetooth através da linha de comando. Uma vez instalado, conectamos com o cliente através da linha de comando. Note que os comandos que vamos rodar estão nas linhas que iniciam com [bluetooth] enquanto as outras linhas representam as respostas esperadas para o comando rodado:

$ bluetoothctl
[bluetooth]# devices
device 01:02:AB:01:CD:02 device-name
[bluetooth]# pair 01:02:AB:01:CD:02
Attempting to pair to 01:02:AB:01:CD:02
[bluetooth]# trust 01:02:AB:01:CD:02
Changing 01:02:AB:01:CD:02 trust succeeded
[bluetooth]# connect 01:02:AB:01:CD:02
Attempting to connect to 01:02:AB:01:CD:02
[CHG] Device 01:02:AB:01:CD:02 Connected: yes
Connection successful
Bluetooth - Resolução de Problemas
  • No default control available

Ao conectar ao cliente através da linha de comando (bluetoothctl) não conseguimos listar os dispositivos disponíveis, recebendo essa mensagem como resposta.

Provavelmente o dispositivo de rádio da máquina responsável pelas conexões de Bluetooth está bloqueado. Para desbloquear é simples:

$ sudo rfkill
ID TYPE      DEVICE                 SOFT         HARD
 1 wlan      dell-wifi      desbloqueado desbloqueado
 2 bluetooth dell-bluetooth    bloqueado desbloqueado
 3 wlan      phy0           desbloqueado desbloqueado
$ sudo rfkill unblock 2
  • Failed to Pair

Ao tentar parear com o dispositivo através do cliente, obtemos a resposta Failed to pair: org.bluez.Error.AlreadyExists. Apesar do erro não ser muito amigável, ele significa que você provavelmente já pareou com esse dispositivo em algum momento, bastando agora apenas se conectar a ele.

[bluetooth]# pair 74:45:CE:26:FC:B1
Attempting to pair with 74:45:CE:26:FC:B1
Failed to pair: org.bluez.Error.AlreadyExists
  • Waiting to connect to bluetoothd...

Se você não consegue se conectar ao agente/cliente de Bluetooth na linha de comando, o serviço de Bluetooth pode estar desativado ou bloqueado. Primeiro vamos tentar habilitar o serviço e iniciá-lo:

$ sudo systemctl enable bluetooth.service
$ sudo systemctl start bluetooth

Tendo passado esses comandos, tentaremos conectar ao cliente de Bluetooth mais uma vez com o comando bluetoothctl. Se a mensagem for a mesma, Waiting to connect to bluetoothd..., talvez seja necessário adicionar o módulo de Bluetooth ao Kernel e reiniciar o serviço com os seguintes comandos:

$ sudo modprobe btusb
$ sudo systemctl restart bluetooth
Alterando a Timezone

Para alterar a timezone usada na sua máquina em distribuições Debian basta usar a ferramenta timedatectl que permite ver a timezone atual, listar as timezones disponíveis e alterar a timezone.

timedatectl # mostra a timezone usada atualmente
timedatectl list-timezones # lista as timezones disponíveis
sudo timedatectl set-timezone <Continente/Lugar>

Se você está em uma distro que não oferece essa ferramenta, ainda assim é possível alterar sua timezone, mas o processo é um pouco mais complexo. A configuração de timezone nada mais que um symlink em /etc/localtime para um binário que identifica a timezone, localizado em /usr/share/zoneinfo. Então, para repetir os passos acima em uma distro sem a ferramente timedatectl basta usar os seguintes comandos:

ls -l /etc/localtime # irá mostrar para qual timezone o symlink está apontando
ls /usr/share/zoneinfo # para ver quais as timezones disponíveis - talvez seja necessário navegar dentro das pastas para encontrar a timezone que se aplique a sua região
sudo ln -sf /usr/share/zoneinfo/Continente/Local /etc/localtime # cria o symlink para a timezone desejada


Hibernando Sem Privilégios

Essas configurações servem especificamente para hibernar a máquina, mas com os mesmos passos é possível desligá-la ou reiniciá-la, simplesmente adaptando os comandos.

Todos os comandos devem ser rodados com privilégios adminstrativos.

Importante: Não recomendável configurar um servidor dessa maneira já que um usuário sem privilégios poderia desligar repetidamente um servidor (Denial Of Service).

  1. Adicionamos um grupo chamado hibernate editando com seu editor favorito o arquivo /etc/group:
hibernate:x:510:absorto
  1. Encontramos onde o binário responsável pelo comando está, no meu caso /usr/sbin/hibernate:
# which hibernate
/usr/sbin/hibernate
  1. Alteramos as permissões e posse do binário:
# chown root:hibernate /usr/sbin/hibernate
# chmod 750
# chmod u+s hibernate
<syntaxhighlight lang=bash>

# Testamos hibernar a máquina sem privilégios:
<syntaxhighlight lang=bash>
$ hibernate -n