Utilizza lo schermo GNU come login "shell"

Qual è il modo migliore per distriggersre automaticamente lo schermo quando si apre una nuova shell, sia per login, xterm o per qualunque altra cosa?

Vedo la raccomandazione più comune è quella di mettere exec screen nel file rc o login / profile del shell normale, ma per esempio, tcsh, le shell di login eseguono .login ultimo, mentre le shell non di login leggono .cshrc last. Se posso installare il file exec screen in .cshrc, le shell di login non genereranno il file .login e, se lo metto in .login, le shell non di login non verranno visualizzate. Suppongo che ci siano problemi simili con altre conchiglie.

Un modo è:

 # if $STY is not set... if [ -z "$STY" ]; then exec screen -ARR fi 

Si noti che questo è scritto per bash , ma dovrebbe essere simile anche per csh . .cshrc a .cshrc da eseguire per tutte le conchiglie.


Un altro modo: puoi semplicemente impostare lo screen come shell di login in /etc/passwd stesso e mettere questa row nel tuo ~/.screenrc : (Correggi il path, naturalmente.)

  defshell / bin / csh 

Ma questo può rompere i programmi che eseguono la shell di login definita in /etc/passwd per vari comandi.

( Modifica: non dimenticare di aggiungere schermo a /etc/shells )

Vecchia domanda, ma googling per la stessa cosa mi ha portto qui ecco una risposta per chiunque altro che inciampa su questa pagina.

La cosa migliore che ho trovato finora è byobu se la tua distro lo ha. Viene con un'opzione da eseguire all'account di login e controlla più schermi contemporaneamente.

Puoi disinserire e disconnettersi in una posizione, quindi accedere alla stessa session in un'altra posizione.

Trovo lo schermo è ottimo da usare per eseguire i processi del server ma byobu è ottimo per le cose quotidiane.

Come si utilizza chsh:

chsh /usr/bin/screen

Questo imposta la shell di login predefinita in / etc / passwd. (potresti anche tu)