Wszystkie wyniki moich wyszukiwań mają coś wspólnego z hostname lub uname -n. Poszukałem instrukcji dla obu, szukając podstępnych opcji, ale bez powodzenia.

Próbuję znaleźć odpowiednik scutil --get ComputerName OSX w systemach Linux . W systemie Mac OS X nazwa komputera jest używana jako czytelny dla człowieka identyfikator komputera; jest ona wyświetlana na różnych ekranach zarządzania ( np. w zarządzaniu zapasami, zdalnym dostępie opartym na Bonjour itp.) .) i służy jako domyślna nazwa hosta (po przefiltrowaniu do obsługi spacji itp.).

Komentarze

  • Mogę się mylić, ale definiując nazwę komputera, ponieważ jego nazwa sieciowa oznacza, że nie ' nie ma ustalonej nazwy, prawda? Kiedy instalujesz Linuksa lub OSX na komputerze, zazwyczaj wybierasz nazwę dla tego komputera (jest to domyślna nazwa sieci, jak zakładam). Na przykład mój laptop może nazywać się " FooBar ", ale kiedy łączę się z siecią w pracy, otrzymuję nazwę hosta taką jak " machine42.work.localnetwork ".
  • @StephenKitt Dokładnie, czy to ma inną nazwę w systemach Linux?
  • @ Sh3ljohn jakim celom nazwa komputera służy osx? Nie ' nie sądzę, że ' nie ma żadnego odpowiednika w systemie Linux.
  • Czy podałeś jakąś nazwę inną niż nazwa hosta podczas instalacji tego komputera? Spróbuj wyszukać tę nazwę w / etc: grep -ri 'name' /etc
  • @Bibek_G Chciałbym użyć tego do zidentyfikowania komputera, na którym pracuję, z mojego oprogramowania . Identyfikator UUID jest niewystarczający, ponieważ na tym samym dysku może być zainstalowanych kilka systemów operacyjnych ', które z kolei działają na tym samym komputerze.

Odpowiedź

Najbardziej zbliżonym odpowiednikiem czytelnej dla człowieka (i wybranej przez człowieka) nazwy komputera z systemem Linux jest domyślna nazwa hosta przechowywana w /etc/hostname. W niektórych (nie wszystkich) dystrybucjach Linuksa ta nazwa jest wprowadzana podczas instalacji jako nazwa komputera (ale z ograniczeniami sieciowej nazwy hosta, w przeciwieństwie do nazwy komputera w systemie Mac OS X).

Komentarze

  • Ale ten plik jest często używany do ustawiania hostname i uname -n, a @ Sh3ljohn wyraźnie pożądane aby uniknąć wyjścia tych dwóch poleceń.

Odpowiedź

Możesz użyć sudo dmidecode | grep -A3 "^System Information" polecenie. To polecenie odczytuje informacje z systemu BIOS i sprzętu. Przykład z mojego komputera:

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

Źródła: [1]

Komentarze

  • Nie ' nie sądzę, że tego właśnie szukam; wymaga to uprawnień administratora i zapewnia informacje o sprzęcie, a nie o nazwie wybranej przez użytkownika w momencie instalowania systemu operacyjnego na tym komputerze.
  • nazwa wybrana przez użytkownika? brzmi to dla mnie jak nazwa hosta.
  • Przepraszam, źle zrozumiałem. I tak zostawię odpowiedź. Jedyną nazwą wybraną przez użytkownika używającego dystrybucji Linuksa, które znam, jest nazwa hosta.
  • @Bibek_G Dlatego mogę ' t znaleźć odpowiedź na moje pytanie, na OSX to dwie różne rzeczy. Szukam nazwy, którą wprowadziłem podczas instalowania Linuksa na tej maszynie, która, jak zakładam, byłaby domyślną nazwą sieci.
  • @jschlichtholz Oczywiście ta odpowiedź może być przydatna dla kogoś innego, ale ponieważ powiedział do Bibek_G, szukam wtedy, jaka może być domyślna nazwa sieci.

Odpowiedź

Ściśle mówiąc , w Linuksie nie ma czegoś takiego jak niezwiązana z siecią „nazwa komputera” i właściwie nie widzę celu nazywania komputerów, które nie są w sieci.

Powód, dla którego twój komputer ma różne ciągi znaków w /etc/hostname, /etc/hosts i uname -n jest to, że protokół DHCP ma możliwość podania nazwy hosta z adresem IP do nowego hosta. „machine42.work.localnetwork” wygląda dokładnie tak, jak nazwa, którą wybrałby serwer DHCP. Ten ciąg jest następnie zapisywany i zwracany przez wywołania gethostname .

Zobacz też:

Jak zmienić nazwę komputera? (tl; dr echo computername > /etc/hostname) – to „s co się stanie, gdy wybierzesz nazwę podczas instalacji.

Jak zmienić nazwę hosta bez ponownego uruchamiania? (tl; dr hostname computername) – tak się dzieje, gdy otrzymasz dzierżawę DHCP z nazwą hosta.

Komentarze

  • " Ściśle mówiąc, nie ma czegoś takiego jak niezwiązane z siecią " nazwa komputera " w systemie Linux " – Nie ' czy to zależy od usługi? Na przykład myślę, że odpowiednikiem systemu Windows jest nazwa NetBIOS. Jest to przyjazna nazwa bez części domeny i może różnić się od części hosta nazwy domeny (w pełni kwalifikowana lub nie).
  • Nazwa NetBIOS jest nadal nazwą sieciową, nawet jeśli ' różni się od nazwy domeny.
  • tools.ietf.org/html/rfc1178 odradza aby użyć nazwy domeny jako nazwy swojego komputera. Jeden komputer może udostępniać serwer dla wielu nazw domen. W tym przypadku nazwa hosta może dostarczyć tylko jeden z serwerów.

Odpowiedź

Pozostałe odpowiedzi mówią, że nie ma Odpowiednik Linuksa, chociaż tak naprawdę jest. Nazywa się to " Ładna nazwa hosta ". Aby go uzyskać, uruchom następujące polecenie:

 hostnamectl --pretty  

Komentarze

  • hostnamectl wymaga SystemD. Ładne informacje są przechowywane w /etc/machine-info
  • +1 Myślę, że to powinna być wybrana odpowiedź. — Wikipedia mówi: " Nazwa hosta to nazwa domeny, która ma powiązany rekord DNS. " Połącz to z tools.ietf.org/html/rfc1178, które radzą NIE używać nazwy domeny dla nazwy swojego komputera. Oznacza to, że nie należy również używać nazwy hosta jako nazwy komputera. Co się dzieje, gdy jeden komputer próbuje obsługiwać dwie sieci w tym samym czasie? W tym przypadku nazwa hosta czy ' nie może być nazwą hosta dla nich obu. Nazwa hosta jest wyraźnie przeciążona, próbuje być zarówno nazwą hosta DNS, jak i nazwą komputera w miejscu t w tym samym czasie.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *