![콘솔에 연결되어 있는지 확인하는 방법](https://linux55.com/image/211679/%EC%BD%98%EC%86%94%EC%97%90%20%EC%97%B0%EA%B2%B0%EB%90%98%EC%96%B4%20%EC%9E%88%EB%8A%94%EC%A7%80%20%ED%99%95%EC%9D%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
네트워크 유지 관리를 수행하기 전에 콘솔에 연결되어 있는지 확인할 수 있는 안정적인 방법을 찾고 싶습니다.
지금까지 나는 이것을 발견했습니다 :
$ tty | grep /dev/tty
/dev/tty2 # Connected on the console
$ ssh localhost tty | grep /dev/tty
$ # Remotely connected
이것이 믿을만한 방법인가?
답변1
그냥 실행 tty
하면 연결되어 있는지 알려줍니다.ㅏ콘솔 - 로컬 가상 콘솔일 수도 있고 의사 터미널일 수도 있습니다. 예를 들어:
ssh -t localhost tty
/dev/pts/9
플래그 -t
는 "tty 할당"을 의미합니다.기본대화형 SSH 세션의 동작.
따라서 "내가 tty에 연결되어 있나요?"라고만 물어볼 수는 없습니다.할 수 있는tty
명령에 의해 반환된 장치 에 따라 결정이 내려집니다. 그것은 다음과 같습니다:
case "$(tty)" in
/dev/tty[0-9])
echo "I am on a local console."
;;
/dev/ttyS[0-9]|/dev/ttyACM[0-9]|/dev/ttyUSB[0-9])
echo "I am on a serial console."
;;
*)
echo "I am not on a local console"
esac