Alle resultatene av søkene mine har til slutt å gjøre med hostname
eller uname -n
. Jeg slo opp håndboken for begge, på jakt etter lure alternativer, men ikke lykke.
Jeg prøver å finne et ekvivalent med OSX «s scutil --get ComputerName
på Linux-systemer . På Mac OS X brukes datamaskinnavnet som en menneskelig lesbar identifikator for datamaskinen. Den vises på forskjellige administrasjonsskjermbilder ( f.eks. på lagerstyring, Bonjour-basert ekstern tilgang, .. .) og fungerer som standard vertsnavn (etter filtrering for å håndtere mellomrom osv.).
Kommentarer
Svar
Det nærmeste ekvivalenten med et lesbart (og menneskelig valgt) navn for en datamaskin som kjører Linux, er standard vertsnavn lagret i /etc/hostname
. På noen (ikke alle) Linux-distribusjoner blir dette navnet oppgitt under installasjonen som datamaskinens navn (men med begrensninger på nettverksnavnet, i motsetning til Mac OS Xs datamaskinnavn).
Kommentarer
- Men denne filen brukes ofte til å angi
hostname
oguname -n
, og @ Sh3ljohn ønsket eksplisitt for å unngå utdata fra disse to kommandoene.
Svar
Du kan bruke sudo dmidecode | grep -A3 "^System Information"
kommando. Denne kommandoen leser informasjon fra BIOS og maskinvaren. Eksempel fra maskinen min:
System Information Manufacturer: LENOVO Product Name: 20BHA06YGB Version: ThinkPad W540
Kilder: [1]
Kommentarer
- Jeg tror ikke ' t tror dette er det jeg leter etter; dette krever administratorrettigheter og gir deg informasjon om maskinvaren, ikke om et brukervalgt navn da du installerte operativsystemet på den maskinen.
- brukervalgt navn? det høres ut som vertsnavn for meg.
- Beklager, jeg fikk feil. Jeg vil legge igjen svaret uansett. Det eneste brukervalgte navnet ved hjelp av Linux-distribusjonene jeg kjenner er vertsnavnet.
- @Bibek_G Dette er grunnen til at jeg ' ikke kan finne svaret på spørsmålet mitt, på OSX dette er to forskjellige ting. Jeg leter etter navnet jeg skrev inn da jeg installerte Linux på den maskinen, som jeg antar ville være standard nettverksnavn.
- @jschlichtholz Selvfølgelig kan dette svaret være nyttig for noen andre, men som jeg sa til Bibek_G, jeg ser etter hva som kan være standard nettverksnavnet da.
Svar
Strengt tatt , det er ikke noe som heter nettverksrelatert «datamaskinnavn» i Linux, og jeg klarer faktisk ikke å se hensikten med å navngi datamaskiner som ikke er i nettverket.
Årsaken til at datamaskinen din har forskjellige strenger i /etc/hostname
, /etc/hosts
og uname -n
er at DHCP-protokollen har fasiliteter for å gi et vertsnavn sammen med IP-adresse til en ny vert. «machine42.work.localnetwork» ser ut akkurat som et navn DHCP-serveren vil velge. Denne strengen lagres deretter og returneres av gethostname
samtaler.
Se også:
Hvordan endrer jeg datamaskinnavnet? (tl; dr echo computername > /etc/hostname
) – at «s hva skjer når du velger et navn under installasjonen.
Hvordan endrer jeg vertsnavnet uten omstart? (tl; dr hostname computername
) – det er det som skjer når du får en DHCP-leieavtale med et vertsnavn.
Kommentarer
- " Strengt tatt er det ikke noe som heter nettverksrelatert " datamaskinnavn " i Linux " – Gjør ikke ' t avhenger det av tjenesten? For eksempel tror jeg Windows-ekvivalenten er NetBIOS-navnet. Det er det vennlige navnet uten domenedelene, og det kan være forskjellig fra vertsdelen av et domenenavn (fullt kvalifisert eller ikke).
- NetBIOS-navnet er fortsatt et nettverksnavn, selv om det ' er forskjellig fra et domenenavn.
- tools.ietf.org/html/rfc1178 anbefaler IKKE å bruke et domenenavn for navnet på datamaskinen din. Én datamaskin kan tilby en server for flere domenenavn. I dette tilfellet kan vertsnavnet bare levere en av serverne.
Svar
De andre svarene sier at det er nei Linux-ekvivalent, selv om det faktisk er det. Det kalles " Ganske vertsnavn ". Kjør følgende kommando for å få det:
hostnamectl --pretty
Kommentarer
-
hostnamectl
krever SystemD. Den fine informasjonen er lagret i/etc/machine-info
- +1 Jeg synes dette burde være det valgte svaret. — Wikipedia sier: " Et vertsnavn er et domenenavn som har en tilknyttet DNS-post. " Kombiner dette med tools.ietf.org/html/rfc1178 som anbefaler IKKE å bruke et domenenavn til navnet på datamaskinen din. Dette betyr at man heller ikke skal bruke et vertsnavn for navnet på datamaskinen din. Hva gir når en enkelt datamaskin prøver å kjøre to nettverk samtidig? I dette tilfellet vertsnavnet kan ' ikke være vertsnavnet for dem begge. vertsnavnet er tydelig overbelastet, og prøver å være både et DNS-vertsnavn og et maskinnavn på t han samme tid.
grep -ri 'name' /etc