Descobri a pouco tempo que meu antigo
Pavilion DM1 tem isso. Sabia que existia a tecnologia, mas achava que era somente em aparelhos mais caros. E não é, existe em vários notebooks HP, Lenovo, Dell, Toshiba etc. faz muito tempo, mas não em todos os modelos. A HP chama essa tecnologia de
HP 3D DriveGuard.
A função do acelerômetro é parar rapidamente as cabeças do HD mecânico quando houver movimentos bruscos com o aparelho ou até mesmo evitar perda de dados em caso de queda. Isso é uma "mão na roda" se você é meio estabanado, que nem eu.
Uso Debian e existe o pacote hdapsd, o qual se mostrou ineficiente. Ele identifica o acelerômetro, o dispositivo em "/dev/freefall" que é criado pelo módulo hp_accel, mas na hora de parar o HD, nada acontece.
Será usado o
hpfall, pois tenho um HP e os outros programas que implementam essa tecnologia não funcionaram aqui, ou exigem módulos adicionais ao kernel, ou estão com os projetos abandonados.
Creio que o hpfall é obra do pessoal do Arch
Linux. Achei ele lá e é realmente muito simples, tipo Arch (isso é um elogio).
Compilação
No notebook HP precisa verificar se os módulos "hp_accel" e "lis3lv02d" estão carregados. O lis3lv02d é o módulo encarregado pelo sensor. Em outro modelo, pode ser outro sensor/módulo:
# lsmod | grep hp_accel
Ou:
# dmesg | grep hp_accel
Foi usado o Git para clonar o diretório do aplicativo, o patch para aplicar um patch e o pacote "build-essential" para compilar o hpfall.
Então, precisa:
# apt-get install git build-essential patch
Depois:
# git clone https://github.com/srijan/hpfall.git
# git clone https://aur.archlinux.org/hpfall-git.git
Serão criados os diretórios "hpfall" e "hpfall-git". Então, copia-se os arquivos de "hpfall-git" para o "hpfall" e vamos ao diretório para "trabalhar":
# cp hpfall-git/* hpfall/
# cd hpfall
Aplica-se o patch:
# patch -R hpfall.c < log_to_syslog.patch
Compilar o hpfall:
# make
Instalação
E instalá-lo no sistema:
# install -Dm755 hpfall /usr/bin/hpfall
Em sistemas que usam o sysvinit (Slackware), basta indicar no "/etc/rc.d/rc.local" a localização do hpfall e pronto. Somente reiniciar o sistema, ou o "rc.local".
Sistemas que usam systemd (Debian 8):
# install -Dm644 hpfall.service /lib/systemd/system/hpfall.service
Iniciar e habilitar o hpfall com o sistema:
# systemctl start hpfall.service
# systemctl enable hpfall.service
Pronto.
Outras informações
Pode-se testar o acelerômetro com o comando:
# watch -n1 cat /sys/devices/platform/lis3lv02d/position
Ele retorna os eixos X,Y,Z no aparelho.
Esse texto é quase uma tradução adaptada para qualquer distribuição Linux, do que se encontra na ArchWiki do hpfall. Como o pessoal escreveu lá, você pode testar simulando uma queda da altura de uns 10 cm em cima de algo fofo, se estiver silêncio notará um clique e que o HD parou uns 3 segundos e o LED que indica o HD muda de cor (laranja aqui), logo volta ao normal. Simular segurando ele.
O hpfall grava suas ações no "/var/log/syslog". Como indica a imagem abaixo, ele realmente entra em ação, diferente do hdapsd, que estava instalado antes. Foi testado um e depois o outro. Não sei se pode haver conflito e, de qualquer jeito, não achei ideal dois programas que interferem dessa forma no HD rodar juntos.
Syslog indicando o hpfall em ação:
Saída do status do serviço no systemd:
Conclusão
Era isso e cuide do seu notebook.
O teste não é necessário, mas mesmo estabanado, tive que fazer, senão onde está a diversão?
Até!
Referência:
Hpfall - ArchWiki