![">>"를 사용하여 /etc/locale.gen으로 파이프 - sudo 권한이 거부됨](https://linux55.com/image/179981/%22%26gt%3B%26gt%3B%22%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%2Fetc%2Flocale.gen%EC%9C%BC%EB%A1%9C%20%ED%8C%8C%EC%9D%B4%ED%94%84%20-%20sudo%20%EA%B6%8C%ED%95%9C%EC%9D%B4%20%EA%B1%B0%EB%B6%80%EB%90%A8.png)
다음 명령을 실행하려고 합니다.
$ sudo echo ko_KR.UTF-8 UTF-8 >> /etc/locale.gen
그러나 나는 그것을 이해한다 permission denied
. 이상하게도 sudo를 사용하면 비밀번호를 묻지도 않습니다.
그러나 내가 입력하면
$ su
# echo ko_KR.UTF-8 UTF-8 >> /etc/locale.gen
효과가있다.
나는 두 개의 Manjaro 설치에서 이것을 시도했습니다. 동일한 문제입니다. 이 su
방법이 효과가 있는 동안 가이드를 작성하려고 하므로 간단하게 유지하고 싶었습니다.
내가 뭘 잘못하고 있는지 아는 사람 있나요? 예상치 못한 bash 구문을 수행하고 있는 것 같습니다.
감사해요!
답변1
알아 냈어 -
쉘은 프로세스가 아닌 배관을 담당합니다. sudo echo
bash 편집 권한을 부여하지 않습니다 /etc
. 제가 찾은 해결 방법은 다음과 같습니다.
echo ko_KR.UTF-8 UTF-8 | sudo tee -a /etc/locale.gen
이제 sudo 권한(tee)이 있는 항목에 출력을 공급하면 echo
파일에 쓰기만 됩니다.
누구든지 이 작업을 수행하는 더 쉬운 방법을 찾으면 이를 정답으로 표시하겠습니다. :)