Alle resultaten van mijn zoekopdrachten hebben uiteindelijk iets te maken met hostname
of uname -n
. Ik heb de handleiding voor beide opgezocht, op zoek naar stiekeme opties, maar geen geluk.
Ik probeer een equivalent te vinden van OSX “s scutil --get ComputerName
op Linux-systemen Op Mac OS X wordt de computernaam gebruikt als een door mensen leesbare identificatie voor de computer; deze wordt weergegeven in verschillende beheerschermen ( bijv. over voorraadbeheer, op Bonjour gebaseerde externe toegang, … .) en dient als de standaard hostnaam (na filteren om spaties enz. af te handelen).
Opmerkingen
Antwoord
Het beste equivalent van een door mensen leesbare (en door mensen gekozen) naam voor een computer met Linux is de standaard hostnaam die is opgeslagen in /etc/hostname
. Op sommige (niet alle) Linux-distributies wordt deze naam tijdens de installatie ingevoerd als de naam van de computer (maar met beperkingen voor de netwerkhostnaam, in tegenstelling tot de computernaam van Mac OS X).
Opmerkingen
- Maar dit bestand wordt vaak gebruikt om
hostname
enuname -n
in te stellen, en @ Sh3ljohn expliciet gewild om de uitvoer van deze twee opdrachten te vermijden.
Antwoord
Je zou de commando. Deze opdracht leest informatie uit het BIOS en de hardware. Voorbeeld van mijn computer:
System Information Manufacturer: LENOVO Product Name: 20BHA06YGB Version: ThinkPad W540
Bronnen: [1]
Reacties
- Ik denk niet ‘ niet dat dit is wat ik zoek; dit vereist beheerdersrechten en geeft u informatie over de hardware, niet over een door de gebruiker gekozen naam op het moment dat u het besturingssysteem op die machine installeerde.
- door de gebruiker gekozen naam? dat klinkt als hostnaam voor mij.
- Sorry, dat heb ik verkeerd begrepen. Ik laat het antwoord toch achter. De enige door de gebruiker gekozen naam met behulp van de Linux-distributies die ik ken is de hostnaam.
- @Bibek_G Dit is waarom ik ‘ het antwoord op mijn vraag niet kan vinden op OSX dit zijn twee verschillende dingen. Ik ben op zoek naar de naam die ik heb ingevoerd toen ik Linux op die machine installeerde, waarvan ik aanneem dat dit de standaard netwerknaam is.
- @jschlichtholz Natuurlijk kan dit antwoord nuttig zijn voor iemand anders, maar aangezien ik zei tegen Bibek_G, ik ben op zoek naar wat dan de standaard netwerknaam zou kunnen zijn.
Antwoord
Strikt genomen , bestaat er niet zoiets als een netwerk-niet-gerelateerde “computernaam” in Linux, en ik zie eigenlijk niet het doel van het benoemen van computers die zich niet op het netwerk bevinden.
De reden waarom uw computer verschillende strings heeft in /etc/hostname
, /etc/hosts
en uname -n
is dat het DHCP-protocol faciliteiten heeft om een hostnaam op te geven met IP-adres naar een nieuwe host. “machine42.work.localnetwork” ziet er precies zo uit als een naam die de DHCP-server zou kiezen. Deze string wordt vervolgens opgeslagen en geretourneerd door gethostname
aanroepen.
Zie ook:
Hoe verander ik de computernaam? (tl; dr echo computername > /etc/hostname
) – dat is wat gebeurt er als je een naam kiest tijdens de installatie.
Hoe verander ik de hostnaam zonder opnieuw op te starten? (tl; dr hostname computername
) – dat is wat er gebeurt als je een DHCP-lease krijgt met een hostnaam.
Reacties
- ” Strikt genomen bestaat er niet zoiets als netwerk-niet-gerelateerd ” computernaam ” in Linux ” – Doesn ‘ Is het afhankelijk van de service? Ik denk bijvoorbeeld dat het Windows-equivalent de NetBIOS-naam is. Het is de beschrijvende naam zonder de domeinonderdelen en het kan verschillen van het hostgedeelte van een domeinnaam (volledig gekwalificeerd of niet).
- NetBIOS-naam is nog steeds een netwerknaam, zelfs als deze ‘ is anders dan een domeinnaam.
- tools.ietf.org/html/rfc1178 adviseert NIET om een domeinnaam te gebruiken voor de naam van uw computer. Eén computer kan een server bieden voor meerdere domeinnamen. In dit geval kan de hostnaam slechts één van de servers leveren.
Answer
De andere antwoorden zeggen dat er geen is Linux-equivalent, ook al is dat er eigenlijk. Het wordt de ” Mooie hostnaam ” genoemd. Voer de volgende opdracht uit om het op te halen:
hostnamectl --pretty
Reacties
-
hostnamectl
vereist SystemD. De mooie informatie wordt opgeslagen in/etc/machine-info
- +1 Ik denk dat dit het gekozen antwoord zou moeten zijn. — Wikipedia zegt: ” Een hostnaam is een domeinnaam waaraan een DNS-record is gekoppeld. ” Combineer dit met tools.ietf.org/html/rfc1178 die adviseert GEEN domeinnaam gebruiken voor de naam van uw computer. Dit betekent dat u ook geen hostnaam moet gebruiken voor de naam van uw computer. Wat geeft het wanneer een enkele computer twee netwerken tegelijk probeert te draaien? In dit geval de hostnaam kan ‘ niet de hostnaam voor beide zijn. hostnaam is duidelijk overbelast, en probeert zowel een DNS-hostnaam als een machinenaam te zijn op t hij dezelfde tijd.
grep -ri 'name' /etc