내 시스템에 로그인하고 입력하면 sudo -l
다음과 같이 표시됩니다.
$ sudo -l
Matching Defaults entries for user1 on WINNING:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User user1 may run the following commands on WINNING:
(root) NOPASSWD: sudoedit
/var/www/html/test/*/*/layout.html
해당 경로에서 레이아웃 HTML 파일을 편집하려고 하면 다음과 같은 결과가 나타납니다.
$ sudoedit cupoftee/templates/layout.html
sudoedit: no tty present and no askpass program specified
왜 편집을 허락하지 않으시나요? 내가 뭐 잘못 했어요?
답변1
명령은 sudo -l
말한다
User user1 may run the following commands on WINNING:
(root) NOPASSWD: sudoedit
/var/www/html/test/*/*/layout.html
이는 다음 sudoedit
과 같은 모든 경로에서 사용할 수 있음을 의미합니다.
/var/www/html/test/*/*/layout.html
주문,
sudoedit cupoftee/templates/layout.html
패턴과 일치하지 않는 경로를 호출하므로 sudoedit
작업을 수행할 수 없습니다.
대신에
sudoedit /var/www/html/test/cupoftee/templates/layout.html
참고: 이것이 편집하려는 파일의 올바른 절대 경로인지는 알 수 없습니다.