![ssh "cmd"를 차단하는 .bashrc에 "sudo su"를 넣었습니다. 코드를 제거하지 않고 어떻게 수정할 수 있나요?](https://linux55.com/image/103529/ssh%20%22cmd%22%EB%A5%BC%20%EC%B0%A8%EB%8B%A8%ED%95%98%EB%8A%94%20.bashrc%EC%97%90%20%22sudo%20su%22%EB%A5%BC%20%EB%84%A3%EC%97%88%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%EC%BD%94%EB%93%9C%EB%A5%BC%20%EC%A0%9C%EA%B1%B0%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%88%98%EC%A0%95%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
내 작업을 용이하게 하기 위해. 나는 추가한다
cd $working_dir
sudo su
~/.bashrc
파일 에서 .
그런 다음 작업 디렉터리에 루트로 로그인할 수 있습니다.
그러나 ssh를 통해 원격으로 명령을 실행해야 할 때 차단됩니다(실행 su
하고 입력을 기다리는 것처럼 보이지만 쉘을 얻지 못합니다).
따라서 질문은 다음과 같습니다.
로그인할 때 디렉터리를 작업 디렉터리로 변경하고 자동으로 루트 권한을 갖고 ssh cmd를 차단하지 않으려면 어떻게 해야 합니까?
내가 사용하는 차단 프로세스 트리는 pstree -a
다음과 같습니다.
| `-sshd
| `-sshd
| `-kbash -c pstree\040-a
| `-sudo su
| `-su
| `-kbash
답변1
다음을 수행할 수 있습니다.
ssh -t root@your_server "cd /path_to_your_working_dir ; bash"
이 경우 쉘은 bash여야 합니다.