Ho un server in esecuzione in modalità multiutente che è collegato a una tastiera e un monitor. Su un computer separato, desidero eseguire SSH sul server ed eseguire un programma che acquisisce l'input dalla tastiera e stampa il testo sul monitor. La tastiera e il monitor non saranno mai utilizzati per altri scopi.Come posso acquisire eventi di tastiera e utilizzare un monitor come display di testo su Linux?
Al momento, all'avvio del server, sul monitor viene visualizzata una schermata di accesso (di testo). So che posso scrivere sul corrispondente dispositivo /dev/tty
. Tuttavia, anche la tastiera scrive nello stesso punto.
Come posso acquisire eventi di tastiera e utilizzare un monitor come display di testo su Linux?
Potrei mancare alcune delle nozioni di base sull'interfaccia hardware su Linux. Cosa devo sapere?
Funzionando dal tempo di taglie - Se qualcuno vuole carne questo fuori ulteriormente sarò premio di conseguenza:
ho fatto quanto segue per evitare che tutti i programmi d'accesso a partire da:
systemctl mask [email protected]
systemctl mask systemd-logind
systemctl mask [email protected]
allora sono si esegue il mio programma quando richiesto con:
openvt -c 1 -f /path/to/my/program
Questa sarebbe una soluzione pienamente soddisfacente, tranne che per quel fastidioso -f
. Che cosa è in esecuzione su tty1
? C'è qualcosa che posso fare per fermarlo? Dovrei fermarlo?
In particolare, questa soluzione fa soddisfare tutte le mie esigenze - Per quanto ho capito, mi prendo il tty e quindi ottenere l'accesso al suo stdin (la ricezione di uscita dalla tastiera) e stdout (stampa per monitorare).
Perché non basta che sshd esegua il programma appropriato all'accesso? –
Puoi elaborare? Non vedo la connessione tra "come avviare il programma" e "come fa il programma a raggiungere i suoi obiettivi". – ToBeReplaced
Oh, capisco. La tastiera e il monitor con cui si desidera interfacciarsi sono collegati al * server *. Ecco a cosa serve "openvt". –