Acesso SSH
Shell remoto, transferência de arquivos, debug
O SSH vem desativado por padrão por segurança. Ative-o pelo menu do EmulationStation e depois conecte-se a partir do seu computador.
Ativar SSH
Alternar no ES
EmulationStation → ** ** (Start) → System Settings → Network → Enable SSH → ON.
O ArchR cria /storage/.cache/services/sshd.conf (o arquivo trigger que a unit do systemd observa) e depois executa systemctl start sshd.
Opcional: ativar a cada boot
Mesmo menu, deixe a opção ligada. O arquivo trigger persiste, então sshd.service inicia no boot via ConditionPathExists=.
Encontre o IP do dispositivo
Em ES → System Information o IP é exibido. Ou via ssh a partir de qualquer dispositivo na mesma LAN:
ping archr.localO mDNS publica archr.local automaticamente (Avahi).
Conectar
ssh root@archr.local
# ou pelo IP:
ssh root@192.168.x.xCredenciais padrão:
usuário root
senha archrTroque a senha após o primeiro login bem-sucedido. A senha padrão é pública, qualquer pessoa na LAN consegue adivinhá-la.
passwdAutenticação por chave (recomendado)
# no seu computador
ssh-copy-id root@archr.localDepois desative a autenticação por senha no dispositivo (já logado via SSH):
sudo sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart sshdTransferência de arquivos
O scp (cópia única) é o jeito mais simples de mover arquivos. ROMs, save-states, screenshots:
# enviar uma ROM
scp game.sfc root@archr.local:/storage/roms/snes/
# baixar todos os screenshots
scp root@archr.local:'/storage/screenshots/*' ~/Pictures/r36s-screenshots/
# enviar um diretório
scp -r ~/roms/psx root@archr.local:/storage/roms/Para sincronização contínua, use rsync, ele ignora arquivos que não mudaram:
rsync -avh --delete ~/roms/snes/ root@archr.local:/storage/roms/snes/Para acesso gráfico, seu gerenciador de arquivos provavelmente suporta sftp://root@archr.local/storage/roms/.
Dicas de SSH
EmulationStation atrapalhando. O ES bloqueia o framebuffer, você não consegue rodar um programa X/wayland via SSH. Mas dá para parar o ES e rodar uma ferramenta pontual:
sudo systemctl stop emustation
# agora você pode rodar coisas
sudo systemctl start emustationTarefas longas (scrape, rsync de TBs, etc.). Use screen ou nohup para que sobrevivam a desconexões de SSH:
screen -S scrape
skyscraper -p snes
# Ctrl-A D para desconectar. Reconecte depois com: screen -r scrapeInspecionando o boot. Os logs ficam em /var/log/boot.log (não no journalctl, o journald é volátil). O trace do autostart fica em /storage/.boot_last_step somente quando o boot anterior travou.
Scripts de bench. /flash/bench.sh <cenário> [duração] coleta PSI / freq / temp / vmstat pela duração informada em /storage/bench-results/. Útil para reportar regressões de performance.
Desativar SSH
Mesmo menu, alterne para OFF. O arquivo trigger é removido e o sshd.service para. O próximo boot não o inicia.
Notas de segurança
- Risco em LAN pública: com as credenciais padrão e SSH ligado, qualquer um no mesmo WiFi pode logar. Troque a senha.
- Tailscale/ZeroTier: se você ativar uma VPN, seu dispositivo fica alcançável por qualquer um na mesma VPN, a mesma orientação vale.
- Port forwarding: não redirecione a porta 22 para o seu handheld no roteador de casa. A instalação padrão não é endurecida para a internet pública.
- Desativar root:
sudo passwd -l rootse você preferir que ninguém logue como root via SSH. O usuárioarchrtemsudopara quando precisar de comandos elevados.