Fedora의 새 버전에서 호스트 이름을 변경하는 작업은 명령. 또한 최근에이 방법으로 Arch Linux에서 호스트 이름을 성공적으로 변경했습니다. 그러나 실행할 때 :

 [root@localhost ~]# hostnamectl set-hostname --static paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --transient paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --pretty paragon.localdomain  

재부팅 후에 변경 사항이 보존되지 않습니다 (많은 사람들의 주장과 달리). 무엇이 잘못 되었나요?

  • 정말 /etc/hostname 수동으로 수정하고 싶지 않습니다.

또한 이것이 완전히 스톡 페도라라는 점에 유의해야합니다. 아직 핵심 앱을 설치하지도 않았습니다.

댓글

  • 또한 문제와 관련된 유사한 정보가 있습니다. ask.fedoraproject.org/en/question/37413/ … &이 항목 : dbaora.com/install-fedora-20
  • 실제로 이것은 제 정보원 중 하나입니다. 그러나 해당 페이지에서 추출 할 수있는 솔루션이 작동하지 않았습니다 …
  • 얼마나 최근에이 시스템을 설치 / 설정 했습니까? 설치 이후 문제가 있었습니까? 또한 hostnamectl 명령에 오류가 있습니까? 뭔가 게시 된 버그질라 버그에 대한 링크가 최선의 단서 인 것 같습니다.
  • 2014 년 10 월 1 일에 설치 한 이후로 hostnamectl 명령이 실행되지 않았습니다. 작동하지만 이제는 작동합니다.
  • 허용 된 솔루션에 연결된 버그는 불행한시기였습니다. 그들은 ' 업스트림에서 수정했으며 향후 사용자를 위해 작동 할 것입니다.

답변

호스트 이름을 설정하는 명령은 확실히 hostnamectl입니다.

root ~ # hostnamectl set-hostname --static "YOUR-HOSTNAME-HERE" 

다음은이 기능을 좀 더 설명하는 추가 소스입니다. 제목은 올바른 호스트 이름 설정-Amazon EC2에서 Fedora 20 입니다.

추가적으로 hostnamectl의 맨 페이지 :

HOSTNAMECTL(1) hostnamectl HOSTNAMECTL(1) NAME hostnamectl - Control the system hostname SYNOPSIS hostnamectl [OPTIONS...] {COMMAND} DESCRIPTION hostnamectl may be used to query and change the system hostname and related settings. This tool distinguishes three different hostnames: the high-level "pretty" hostname which might include all kinds of special characters (e.g. "Lennart"s Laptop"), the static hostname which is used to initialize the kernel hostname at boot (e.g. "lennarts-laptop"), and the transient hostname which is a default received from network configuration. If a static hostname is set, and is valid (something other than localhost), then the transient hostname is not used. Note that the pretty hostname has little restrictions on the characters used, while the static and transient hostnames are limited to the usually accepted characters of Internet domain names. The static hostname is stored in /etc/hostname, see hostname(5) for more information. The pretty hostname, chassis type, and icon name are stored in /etc/machine-info, see machine-info(5). Use systemd-firstboot(1) to initialize the system host name for mounted (but not booted) system images. 

SELinux가 hostnamectl 액세스를 차단하는 Fedora 21에 버그가 있습니다. , 제목 : Bug 1133368-SELinux는 systemd-hostnam이 파일 호스트 이름에 대한 액세스를 “연결 해제”하는 것을 방지합니다 .

이 버그 관련이있는 것 같습니다. SELinux 컨텍스트가 설치시 /etc/hostname 파일에 제대로 적용되지 않는 문제가 있습니다. 이는 hostnamectl 도구에서 /etc/hostname 파일을 조작 할 수 없음을 나타냅니다. 동일한 스레드에서이 해결 방법을 제공했습니다.

$sudo restorecon -v /etc/hostname 

참고 : 해당 패치는 Anaconda (설치 도구)에 적용되어 향후 신규 사용자를 위해이 문제가 해결 될 것입니다.

Answer

이에 대한 가능한 원인은 DHCP 클라이언트입니다. 일반적인 dhcpcd를 사용하는 경우 해결책은 /etc/dhcpcd.conf에 다음 줄을 추가하는 것입니다.

nohook hostname 

이렇게하면 dhcpcd가 시스템 호스트 이름을 변경하는 스크립트를 호출하지 않습니다.

기본적으로 dhcpcd는 존재하는 모든 후크를 실행합니다. /lib/dhcpcd/dhcpcd-run-hooks (경로가 다를 수 있음) 시스템에서). nohook를 사용하면 특정 항목이 비활성화됩니다.

댓글

  • 21 및 rawhide 설치, /etc/dhcpd.conf가 존재하지 않습니다. 또한 systemctl status dhcpcdnot-found (Reason: No such file or directory)

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다