Jak rozchodit tlačítka na Zyxel NAS326
Moderátor: Moderátoři
Jak rozchodit tlačítka na Zyxel NAS326
Dostala jsem od kolegy v práci Zyxel NAS326 s tím, že už pro něj není podpora. Chtěla jsem na něm rozběhnout NFS a použít ho jako úložiště. Jenže ten původní systém (linux) měl NFS jako instalovatelnou aplikaci a ta už nejde stáhnout. Podařilo se mi podle návodu na netu nainstalovat na něj Debian 6.6.2 (ARMHF) a rozchodit NFS. Přišla jsem tak ale o pár funkcí, které měl původní systém. Například zastavování disků při nečinnosti, ale hlavně nefungují tlačítka na panelu. NAS se tak nedá řízeně vypnout jinak, než že se na něj připojím přes ssh a dám shutdown. Potřebovala bych poradit, jak aspoň to POWER tlačítko rozchodit, aby se dal udělat shutdown tlačítkem jako původně. Na netu jsem našla návody, jak to nastavit pro systemd, ale tady systemd neběží. Poradí, prosím, někdo z místních linuxáků?
Kód: Vybrat vše
cd /dev/input
ls -lKód: Vybrat vše
sudo cat event0Případně zkusit jiná ta zařízení. Mně to vypisuje při tom event0.
Pro uspávání disků slouží příkaz hdparm, ale osobně používám zkompilovaný hd-idle https://github.com/adelolmo/hd-idle z Githubu.
Co se týče tlačítek, tak jestli něco existuje pro systemd, tak určitě je Debian se systemd pro ARMHF.
- Přílohy
-
NAS326.txt- (3.31 KiB) Staženo 81 x
Kód: Vybrat vše
#include <linux/input.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc, const char **argv)
{
FILE *file;
struct input_event event;
int result;
file = fopen("/dev/input/event0", "r");
if ( ! file )
{
fprintf(stderr, "Cannot open device.\n");
exit(1);
}
while ( 1 )
{
result = fread(&event, sizeof(event), 1, file);
if ( ! result ) continue;
printf("* %d %d %d\n", (int) event.type, (int) event.code, (int) event.value);
if ( event.type == EV_KEY && event.code == KEY_POWER && event.value )
{
printf("POWER\n");
}
}
fclose(file);
return 0;
}
Skusil by som nieco taketo:
Kód: Vybrat vše
cat /dev/input/event0 | xxd -g 1Kód: Vybrat vše
root@nas326:/dev/input# cat /dev/input/event0 | xxd -g 1
00000000: 21 6f 86 68 63 1d 0b 00 01 00 74 00 01 00 00 00 !o.hc.....t.....
00000010: 21 6f 86 68 63 1d 0b 00 00 00 00 00 00 00 00 00 !o.hc...........
00000020: 23 6f 86 68 0f cf 07 00 01 00 74 00 00 00 00 00 #o.h......t.....
00000030: 23 6f 86 68 0f cf 07 00 00 00 00 00 00 00 00 00 #o.h............
00000040: 28 6f 86 68 ef 35 06 00 01 00 74 00 01 00 00 00 (o.h.5....t.....
00000050: 28 6f 86 68 ef 35 06 00 00 00 00 00 00 00 00 00 (o.h.5..........
00000060: 29 6f 86 68 90 6a 09 00 01 00 74 00 00 00 00 00 )o.h.j....t.....
00000070: 29 6f 86 68 90 6a 09 00 00 00 00 00 00 00 00 00 )o.h.j..........Kód: Vybrat vše
#!/bin/bash
while true
do
head -c 16 /dev/input/event0 >data
type=$(od -A n -t u1 -N 1 -j 8 data)
code=$(od -A n -t u1 -N 1 -j 10 data)
value=$(od -A n -t u1 -N 1 -j 12 data)
echo $type $code $value
done
Teď se mi ještě v mc místo rámečků začaly zobrazovat textový znaky.
Kód: Vybrat vše
Left File Command Options Right
l<q ~ qqqqqqqqqqqqqqqqqqqqqqqqqqqq.[^]>kl<q ~ qqqqqqqqqqqqqqqqqqqqqqqqqqqq.[^]>k
x.n Name x Size xModify time xx.n Name x Size xModify time x
x/.. xUP--DIRxJun 29 18:37xx/.. xUP--DIRxJun 29 18:37x
x/.cache x 4096xJul 2 22:09xx/.cache x 4096xJul 2 22:09x
x/.config x 4096xJul 4 22:22xx/.config x 4096xJul 4 22:22x
x/.local x 4096xJul 2 22:09xx/.local x 4096xJul 2 22:09x
x/.nano x 4096xSep 24 2021xx/.nano x 4096xSep 24 2021x
x/.ssh x 4096xDec 12 2023xx/.ssh x 4096xDec 12 2023x
x .bash_history x 4368xJul 27 21:19xx .bash_history x 4368xJul 27 21:19x
x .bashrc x 570xJan 31 2010xx .bashrc x 570xJan 31 2010x
x .lesshst x 78xJul 27 21:29xx .lesshst x 78xJul 27 21:29x
x .profile x 906xJun 29 19:45xx .profile x 906xJun 29 19:45x
x .selected_editorx 74xJul 2 21:40xx .selected_editorx 74xJul 2 21:40x
x*myip.get x 113xJul 2 22:21xx*myip.get x 113xJul 2 22:21x
x*set_pers~addressx 814xSep 7 2019xx*set_pers~addressx 814xSep 7 2019x
x x x xx x x x
x x x xx x x x
tqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqutqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqu
xUP--DIR xxUP--DIR x
mqqqqqqqqqqqqqqqq 1306M / 1949M (67%) qjmqqqqqqqqqqqqqqqq 1306M / 1949M (67%) qj
Hint: Tab changes your current panel.
root@nas326:~# [^]
1Help 2Menu 3View 4Edit 5Copy 6RenMov 7Mkdir 8Delete 9PullDn10Quit