![리디렉션 연산자 후에 sudo nt를 전달합니다.](https://linux55.com/image/1707/%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98%20%EC%97%B0%EC%82%B0%EC%9E%90%20%ED%9B%84%EC%97%90%20sudo%20nt%EB%A5%BC%20%EC%A0%84%EB%8B%AC%ED%95%A9%EB%8B%88%EB%8B%A4..png)
중복 가능성:
sudo 권한이 거부되었지만 su가 권한을 부여했습니다.
다음을 사용하여 파일에 새 값을 에코하려고 합니다.
sudo echo 4096 > /proc/sys/fs/file-max
발생하는 오류는 Permission Denied입니다. 하지만 루트 사용자와 동일한 작업을 수행하면 성공합니다. 왜 이런 일이 발생하는지 알 수 있나요? 또는 sudo가 ">" 연산자를 전달하지 않는다고 말할 수 있습니다.
답변1
sudo는 > 연산자를 볼 수 없기 때문에 전달하지 않습니다. 쉘은 > 문자를 해석하고 sudo는 에코 4096만 봅니다. 이는 사용자 ID로 /proc/sys/fs/file-max를 열려고 하는 쉘이 실패했음을 의미합니다.
해결책:
% echo 4096 | sudo dd of=/proc/sys/fs/file-max
% sudoedit /proc/sys/fs/file-max