![다른 사용자로 파이프를 통해 bash에 연결하는 방법](https://linux55.com/image/50162/%EB%8B%A4%EB%A5%B8%20%EC%82%AC%EC%9A%A9%EC%9E%90%EB%A1%9C%20%ED%8C%8C%EC%9D%B4%ED%94%84%EB%A5%BC%20%ED%86%B5%ED%95%B4%20bash%EC%97%90%20%EC%97%B0%EA%B2%B0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
더 큰 문제에 대한 해결책으로 실험을 진행하고 있습니다. 실험을 하려면 rvm
쉘 없이 사용자로 설치해야 했습니다.
rvm을 설치하려면 다음 명령을 사용하십시오.
\curl -L https://get.rvm.io | bash
다른 사용자로 다음 명령을 어떻게 실행할 수 있습니까?
이것이 내가 하려는 일이지만 작동하지 않습니다.
sudo -u foo -H \curl -L https://get.rvm.io | bash
sudo -u foo -H which rvm
sudo: rvm: command not found
답변1
curl
또는 명령 이 아닌 사용자로 셸을 실행해야 합니다 which
.
이를 수행하는 방법에는 다음을 포함하여 여러 가지가 있습니다.
sudo -u user bash -c 'curl -L https://get.rvm.io | bash'
그리고
curl -L https://get.rvm.io | sudo -u user bash
이 작업을 대화형으로 수행하려면 옵션을 사용하여 유효한 쉘이 없다는 사실을 무시할 수 sudo
있습니다 -s
. 예를 들어:
# sudo -u user -s /bin/bash
$ whoami
user
$ exit