답변:
어떤 텍스트 편집기를 사용하고 있습니까? 루트 사용자이고 비밀번호를 알고있는 경우 터미널에서 다음 중 하나를 시도하십시오.
sudoedit /etc/dhcp/dhcpd.config
nano
서버 와 같은 터미널 기반 편집기를 사용 하거나 서버에 ssh하는 경우gksudo <text editor here> /etc/dhcp/dhcpd.config
다음과 같은 GUI 기반 편집기를 사용하는 경우 gedit
두 경우 모두 요청시 먼저 루트 비밀번호를 제공해야합니다.
Ubuntu 14.04 이상에서는 gksudo
기본적으로 설치되지 않습니다. gksu
패키지 sudo apt-get install gksu
를 받으려면 소프트웨어 센터에서 또는를 통해 패키지 를 설치 해야합니다.
Ubuntu 17.10에서 Wayland는 기존 X 서버 대신 기본값이며 루트로 그래픽 편집기를 실행하기가 어렵습니다. Waydo에서 suk를 사용하여 gksu / gksudo 또는 그래픽 응용 프로그램을 시작하지 않는 이유를 참조하십시오 . 자세한 내용은.
우분투 18.04에서는 gksudo
공식 저장소에서 사용할 수 없습니다. 사용 sudo -H <text editor>
대신에, 또는 프로토콜 :admin://
gedit admin:///etc/dhcp/dhcpd.config
root가 얻을 수있는 경우를 생각할 수 없습니다 permission denied
.
12.04에서는 다음과 같이 할 수 있습니다 : alt+ 다음 f2과 gksudo
같은 상자에 입력하십시오 :
이와 같은 상자가 gedit
나타나면 입력 하고 클릭하십시오 ok.
클릭 Open:
파일을 찾으십시오.
끝난
경고 : 이유로 인해 수퍼 유저 / 루트가 있습니다. 실수로 중요하지 않은 물건을 실수로 잘못하거나 구조에 넣지 않도록합니다. 루트로 편집 한 모든 것이 편집하려는 올바른 파일이고 구문이 완벽하다는 것을 매우 조심해야합니다. 다른 도구를 편집 할 수있는 경우 해당 도구를 사용하는 것이 좋습니다. 예를 들어, 수동 편집 대신 visudo
터미널 명령을 사용하십시오 /etc/sudoers
.
엉망이 될 수있는 일부 파일은 복구하기 쉽습니다. 다른 것들은 비교적 복잡하거나 복구 콘솔과 많은 명령 줄을 사용해야합니다.
예. 복구 콘솔 명령 줄은 이것 보다 조금 더 무섭게 보입니다 . 조심해.
root
파일을 사용하여 파일을 변경할 수 chattr
없거나 디스크가 읽기 전용 인 경우 권한이 거부 될 수 있습니다 .
현재 쉘이 몇 가지 다른 방법으로 루트로 실행 중인지 테스트 할 수 있습니다.
~/ > whoami
paul
~/ > sudo whoami
root
~/ > id
uid=1000(paul) gid=1000(paul) groups=1000(devs),4(adm),20(dialout),24(cdrom),…
~/ > sudo id
uid=0(root) gid=0(root) group=0(root)
다른 답변은 루트 권한으로 에스컬레이션하는 좋은 방법을 제공하므로 반복하지 않습니다. 가정 당신은 있는 루트 당신은 여전히 파일을 편집 할 수 없습니다 /etc/dhcp/dhcpd.config
- 다음 매우 아마 누군가 또는 어떤 프로그램이 사용한 chattr
파일을 변경할 수 있도록 프로그램을.
로부터 위해 chattr 매뉴얼 페이지 :
'i'속성이있는 파일은 수정할 수 없습니다. 파일을 삭제하거나 이름을 바꿀 수 없으며이 파일에 대한 링크를 만들 수 없으며 파일에 데이터를 쓸 수 없습니다. 수퍼 유저 또는
CAP_LINUX_IMMUTABLE
기능을 소유 한 프로세스 만이 속성을 설정하거나 지울 수 있습니다.
당신은을 사용하여 찾을 수 있습니다 lsattr
lsattr /etc/dhcp/dhcpd.config
실제로 불변이라면 다음과 같이 끌 수 있습니다.
chattr -i /etc/dhcp/dhcpd.config
환경 변수 1을 통해 즐겨 사용하는 (그래픽!) 텍스트 편집기와 함께 sudo -e
또는 별명 sudoedit
을 사용할 수 있습니다 .VISUAL
VISUAL=gedit sudo -e /path/to/some-config-file.cfg
어느 것이
VISUAL=gedit sudoedit /path/to/some-config-file.cfg
물론 당신은 당신이 좋아하는 다른 편집기, 예를 들어, 사용 leafpad
, kate
또는를 subl
.
일부 편집기 는 현재 실행중인 경우에도 항상 새 인스턴스를 시작 하는 명령 줄 옵션을 제공합니다 . sudoedit
편집 된 파일에 변경 사항을 적용하기 위해 편집기 프로세스가 종료 될 때까지 기다리 므로 동일한 편집기의 다른 인스턴스가 실행중인 경우에 필요할 수 있습니다.
VISUAL='gedit -s'
.VISUAL='kate -n'
합니다.pkexec
(파일을 편집해야합니다. 수퍼 유저로서이 답변이 해결하려는 정확한 내용).sudo -H
등 의 구성 파일 액세스 권한을 엉망으로 만듭니다 .root
수용 가능하게 보이고 작동하지 않을 수 있는 사용자 의 사용자 응용 프로그램 구성 데이터로 되돌아 가지 않습니다.1 EDITOR
또는 SUDO_EDITOR
너무 작동하지만 우선 순위가 낮거나 각각 더 전문화되어 있습니다. 자세한 내용은 매뉴얼 페이지 를 참조하십시오.
사용 cp /etc/dhcp/dhcpd.config /$HOME/dhcpd.config.backup
하고 안전하게 백업하기 위해gksu gedit /etc/dhcp/dhcpd.config
gedit
선택한 편집기로 교체
당신은 이런 프롬프트를 얻을 것입니다
여기에 비밀번호를 입력하십시오.
새 창이 열리고 여기에서 구성을 편집 할 수 있습니다.
문제가 발생하면 홈 폴더의 백업에서 복원 할 수 있습니다.
Linux가 권한을 처리하는 방법 때문에 "권한이 거부되었습니다".
$HOME
폴더의 모든 것은 사용자에게 속한 반면 거의 모든 것은 루트에 속합니다.
/etc/dhcp/dhcpd.conf
액세스하려는 파일이 뿌리 속하고 대부분의 파일은 /etc/
보안상의 이유로 기본적으로 루트에 속한다.
권한을 높여서이 파일을 편집 할 수 있습니다.
이렇게하려면 여러 가지 방법이 있습니다.
사용 su
스위치 사용자를 의미합니다. 속성이 없으면 루트 계정으로 전환하는 명령으로 작동하지만 전환하려는 사용자의 비밀번호를 입력해야합니다. 루트는 기본적으로 Ubuntu에 비밀번호가 없으므로 (루트 계정을 효과적으로 비활성화) 루트 비밀번호를 설정하지 않으면 작동하지 않으므로 권장하지 않습니다.
를 사용 sudo
하면 하나의 명령에 대한 권한 만 높아집니다. 이것은 일반적으로 같은 CLI 텍스트 편집기와 같은 명령 줄 응용 프로그램에만 사용됩니다 vim
, nano
등
를 gksu
사용하면 단 하나의 명령에 대해서만 권한이 높아지지만 sudo
GUI 텍스트 편집기와 같은 그래픽 프로그램에는 사용 되지 gedit
않습니다. 암호 입력을 용이하게하기 위해 그래픽 프롬프트를 사용합니다.
sudo < editor > < filelocation >
예 :
sudo -H gedit etc/dhcp/dhcpd.config