다음 명령을 실행하려고 합니다.
grep -q NDDSHOME /etc/environment || echo 'NDDSHOME="/opt/rti_connext_dds-6.0.1"' >> /etc/environment
그러나 권한 거부 오류가 발생했습니다.
bash: /etc/environment: Permission denied
이 문제를 어떻게 해결할 수 있나요?
답변1
/etc/environment
허가 없이 시스템 파일에 쓰려고 합니다.
전체 명령을 루트로 실행합니다.
sudo -s
grep -q NDDSHOME /etc/environment || echo 'NDDSHOME="/opt/rti_connext_dds-6.0.1"' >> /etc/environment
>>
또는 추가가 루트로 실행되는지 확인하십시오 (여기서는 tee
파일에 추가로 대체한 다음 삭제합니다).표준 출력측면):
grep -q NDDSHOME /etc/environment || echo 'NDDSHOME="/opt/rti_connext_dds-6.0.1"' | sudo tee -a /etc/environment >/dev/null
답변2
이것은 작동합니다:
grep -q NDDSHOME /etc/environment || ( echo 'NDDSHOME="/opt/rti_connext_dds-6.0.1"' | sudo tee -a /etc/environment )
파일은 루트가 소유하므로 루트에 추가할 수는 없습니다.