
사용하려고 했지만 sudo cd name_of_dir
오류 메시지가 나타납니다.
sudo: cd: command not found
700 권한을 가진 다른 사용자가 소유한 디렉토리에 들어갈 수 있는 다른 방법이 있습니까?
답변1
sudo cd
cd
명령이 셸에 내장되어 있기 때문에 작동하지 않습니다 . 그래서 당신은 루트가 된 다음 이 명령을 실행한다고 말하고 있습니다. 루트가 되면 sudo 이후 명령어를 검색해 봤는데 cd
찾을 명령어 가 없습니다 .
사용하는 방법은 디렉터리를 소유한 사용자로 전환하는 것입니다. 권한은 700
"소유자가 읽고, 쓰고, 실행할 수 있음"을 의미합니다.
따라서 루트가 디렉토리를 소유한 경우 sudo -i
비밀번호를 사용하는 것이 cd {dir}
유일한 올바른 방법입니다. 다른 사람이 디렉터리를 소유하고 있는 경우에도 첫 번째 방법을 사용할 수 있지만 해당 사용자로 변경한 su {username}
다음 cd
해당 사용자로 사용할 수도 있습니다.
답변2
sudo -i
"루트 콘솔"을 연 다음
cd /path/to/directory
( cd
쉘 내장 명령이므로 sudo 대상이 될 수 없습니다)
답변3
루트 디렉토리를 열려면 루트 쉘을 실행할 수 있습니다. 예:
sudo su
# cd /root
답변4
다음을 통해 자신을 루트 사용자로 승격시킬 수도 있습니다.
sudo -s
그런 다음 다음과 같이 일반 사용자를 허용하지 않는 디렉토리로 CD를 이동할 수 있습니다.
cd /root
또는
cd /var/lib/
그런 다음 작업이 끝나면 다음을 입력하십시오.
exit
루트 사용자 권한을 로그아웃합니다.
&&
자신을 루트로 승격시키기 위해 아래와 같이 연산자 로 두 명령을 결합할 수도 있습니다 . 이 연산자는 현재 명령이 성공적으로 실행되고 그 후에만 다음 명령 실행이 허용되는 경우 실행 순서도 유지합니다.
sudo -s && cd /var/lib
또는
sudo -s && cd /root