검색 결과가 모두 hostname 또는 . 나는 두 가지 모두에 대한 설명서를 찾아 보면서 교활한 옵션을 찾았지만 운이 없었다.

Linux 시스템에서 OSX의 scutil --get ComputerName에 해당하는 것을 찾으려고합니다. . Mac OS X에서 컴퓨터 이름은 사람이 읽을 수있는 컴퓨터 식별자로 사용되며 다양한 관리 화면 ( 예 : 인벤토리 관리, Bonjour 기반 원격 액세스, .. .) 기본 호스트 이름으로 사용됩니다 (공백 등을 처리하기 위해 필터링 한 후).

댓글

  • 내가 틀렸을 수 있지만 이름을 정의합니다. 네트워크 이름으로 컴퓨터의 이름은 고정 이름이 ' 없음을 의미합니다. 그렇죠? 컴퓨터에 Linux 또는 OSX를 설치할 때 일반적으로 해당 컴퓨터의 이름 (내가 가정하는 기본 네트워크 이름)을 선택합니다. 예를 들어 내 노트북의 이름은 " FooBar " 일 수 있지만 직장에서 네트워크에 연결하면

    machine42.work.localnetwork ".

  • @StephenKitt 정확히, 이것은 Linux 시스템에서 다른 이름이 있습니까?
  • @ Sh3ljohn osx는 컴퓨터 이름이 어떤 용도로 사용됩니까? ' 리눅스 시스템에 이에 상응하는 이름이 ' 없다고 생각합니다.
  • 다른 이름을 지정 했습니까? 해당 컴퓨터를 설치할 때 호스트 이름? / etc에서 해당 이름을 검색해보십시오. grep -ri 'name' /etc
  • @Bibek_G이 이름을 사용하여 내 소프트웨어에서 실행중인 컴퓨터를 식별하고 싶습니다. . 동일한 디스크에 여러 OS '가 설치되어 동일한 시스템에서 실행될 수 있으므로 UUID가 충분하지 않습니다.

Answer

Linux를 실행하는 컴퓨터에서 사람이 읽을 수 있고 사람이 선택한 이름과 가장 가까운 이름은 . 일부 (전부는 아님) Linux 배포판에서이 이름은 설치 중에 컴퓨터의 이름으로 입력됩니다 (그러나 Mac OS X의 컴퓨터 이름과는 달리 네트워크 호스트 이름 제약이 있음).

설명

  • 하지만이 파일은 hostnameuname -n를 설정하는 데 자주 사용되며 @ Sh3ljohn은 명시 적으로 원했습니다. 이 두 명령의 출력을 피하려면

Answer

명령. 이 명령은 BIOS 및 하드웨어에서 정보를 읽습니다. 내 컴퓨터의 예 :

System Information Manufacturer: LENOVO Product Name: 20BHA06YGB Version: ThinkPad W540 

출처 : [1]

댓글

  • '이게 제가 찾고있는 것이라고 생각하지 않습니다. 이를 위해서는 관리자 권한이 필요하며 해당 시스템에 OS를 설치할 때 사용자가 선택한 이름이 아니라 하드웨어에 대한 정보를 제공합니다.
  • 사용자가 선택한 이름? 호스트 이름처럼 들리는군요.
  • 죄송합니다. 틀 렸습니다. 어쨌든 대답을 남기겠습니다. 내가 아는 Linux 배포판을 사용하여 사용자가 선택한 유일한 이름은 호스트 이름입니다.
  • @Bibek_G 이것이 제가 ' 내 질문에 대한 답을 찾을 수없는 이유입니다. OSX는 두 가지 다른 것입니다. 해당 컴퓨터에 Linux를 설치할 때 입력 한 이름을 찾고 있습니다.이 이름이 기본 네트워크 이름이라고 가정합니다.
  • @jschlichtholz 물론이 답변은 다른 사람에게 유용 할 수 있지만 저와 마찬가지로 Bibek_G에게 말하면서 기본 네트워크 이름이 무엇인지 찾고 있습니다.

답변

엄격히 말하면 , Linux에는 네트워크와 관련이없는 “컴퓨터 이름”과 같은 것이 없으며 실제로 네트워크에없는 컴퓨터 이름을 지정하는 목적을 알지 못합니다.

컴퓨터에 다른 문자열이있는 이유 /etc/hostname, /etc/hostsuname -n에서 DHCP 프로토콜에는 호스트 이름을 제공하는 기능이 있습니다. 새 호스트에 대한 IP 주소로. “machine42.work.localnetwork”는 DHCP 서버가 선택하는 이름과 똑같습니다. 이 문자열은 저장되고 gethostname 호출에 의해 반환됩니다.

참조 :

컴퓨터 이름은 어떻게 변경하나요? (tl; dr echo computername > /etc/hostname)-그게 전부입니다. 설치 중에 이름을 선택하면 어떻게됩니까?

다시 시작하지 않고 호스트 이름을 변경하려면 어떻게해야합니까? (tl; dr hostname computername)-호스트 이름이있는 DHCP 임대를받을 때 발생합니다.

댓글

  • " 엄격하게 말하자면 네트워크와 관련이없는 것은 없습니다. " 컴퓨터 이름 " Linux " -지원하지 않음 ' 서비스에 의존하지 않습니까? 예를 들어 Windows에 해당하는 이름은 NetBIOS 이름이라고 생각합니다. 도메인 부분이없는 친숙한 이름이며 도메인 이름의 호스트 부분과 다를 수 있습니다 (정규화 된 여부).
  • NetBIOS 이름은 여전히 네트워크 이름입니다. = “b24cc0cad8″>

는 도메인 이름과 다릅니다.

  • tools.ietf.org/html/rfc1178 은 권장하지 않습니다. 컴퓨터 이름에 도메인 이름을 사용합니다. 한 컴퓨터에서 여러 도메인 이름에 대한 서버를 제공 할 수 있습니다. 이 경우 호스트 이름은 서버 중 하나만 제공 할 수 있습니다.
  • 답변

    다른 답변은 실제로는 있지만 Linux에 해당합니다. " 예쁜 호스트 이름 "이라고합니다. 다음 명령을 실행하여 가져옵니다.

     hostnamectl --pretty  

    댓글

    • hostnamectl에는 SystemD가 필요합니다. 예쁜 정보는 /etc/machine-info
    • 에 저장됩니다.

    • +1이 답변이 선택되어야한다고 생각합니다. — Wikipedia는 다음과 같이 말합니다. " 호스트 이름은 연결된 DNS 레코드가있는 도메인 이름입니다. "이를 권장하는 tools.ietf.org/html/rfc1178과 결합합니다. 컴퓨터 이름에 도메인 이름을 사용하지 마십시오. 즉, 컴퓨터 이름에 호스트 이름을 사용해서는 안됩니다. 단일 컴퓨터가 동시에 두 개의 네트워크를 실행하려고하면 무엇을 제공합니까?이 경우 호스트 이름 ' 둘 다의 호스트 이름이 될 수 없습니다. 호스트 이름은 분명히 오버로드되어 DNS 호스트 이름과 컴퓨터 이름을 모두 사용하려고합니다. 그는 같은 시간에.

    답글 남기기

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