저는 몇 줄을 추가하기 위해 호스트 파일에 액세스해야하는 Python 응용 프로그램을 가지고 있습니다. 모든 것은 내 테스트 파일에서 작동했지만 프로그램에서 실제로/etc/hosts에있는 호스트 파일을 수정하라고 명령했을 때 IOError 13이 발생했습니다. 이해할 경우 내 앱에 루트 권한이 없습니다.IOError : 13, Python을 통해/etc/hosts에 쓸 때 'Permission denied'가 발생했습니다.
제 질문은이 문제를 어떻게 우회 할 수 있습니까? 사용자에게 비밀번호를 묻는 방법이 있습니까? Windows 컴퓨터에서 앱을 실행하는 경우 프로세스가 달라질까요? 또한,
f = open("/etc/hosts", "a")
f.write("Hello Hosts File!")
나는 최종 제품에 대한 py2app 및 py2exe에를 사용하여 계획 :
여기에 문제의 코드입니다. 그들은 나를 위해 루트 권한 문제를 처리할까요? 당신이 sudoers
목록에있는 경우
감사합니다. 이것은 내가 필요한 것에 가깝습니다. 스크립트는 그래픽이지만 인증을 위해 문자열을 시스템에 전달하는 방법이 있습니까? 사용자 유형을 터미널에 넣는 것을 피하고 싶습니다. – Parker
제안대로 gksu를 실행하면 사용자에게 GUI 대화 상자가 나타납니다. 일반 "sudo"를 실행하면 터미널에서 프롬프트됩니다. – steveha
죄송합니다, 나는 어떤 이유로 그것을 잡지 못했습니다. 하지만, 나는 GKSU가 없다. QT와 비슷한 것이 무엇인지 아십니까? – Parker