Alla resultat från mina sökningar har slutligen något att göra med hostname eller uname -n. Jag letade upp handboken för båda, letade efter lömska alternativ, men ingen tur.

Jag försöker hitta en motsvarighet till OSX ”s scutil --get ComputerName på Linux-system . På Mac OS X används datorns namn som en läsbar identifierare för datorn. Det visas på olika hanteringsskärmar ( t.ex. om lagerhantering, Bonjour-baserad fjärråtkomst, .. .) och fungerar som standardvärdnamn (efter filtrering för att hantera mellanslag osv.).

Kommentarer

  • Jag kan ha fel men definiera namnet på datorn eftersom dess nätverksnamn betyder att den inte ' inte har ett fast namn, eller hur? När du installerar en Linux eller OSX på en maskin väljer du vanligtvis ett namn för den datorn (vilket är det vanliga nätverksnamnet som jag antar). Till exempel kan min bärbara dator heta " FooBar " men när jag ansluter till ett nätverk på jobbet får jag ett värdnamn som " machine42.work.localnetwork ".
  • @StephenKitt Har detta exakt ett annat namn i Linux-system?
  • @ Sh3ljohn vilket syfte tjänar datornamn är osx? Jag tror inte ' där ' är motsvarande i Linux-system.
  • Gav du något annat namn än värdnamn när du installerar den datorn? Försök att söka efter det namnet i / etc: grep -ri 'name' /etc
  • @Bibek_G Jag vill använda det här för att identifiera den maskin som jag kör från en av mina programvaror . UUID är otillräckligt eftersom det kan finnas flera OS ' som är installerade på samma disk som i sin tur körs på samma maskin.

Svar

Den närmaste motsvarigheten till ett mänskligt läsbart (och mänskligt valt) namn för en dator som kör Linux är standardvärdnamnet lagrat i /etc/hostname. På vissa (inte alla) Linux-distributioner anges detta namn under installationen som datorns namn (men med begränsningar för nätverksvärdnamn, till skillnad från Mac OS X: s datornamn).

Kommentarer

  • Men den här filen används ofta för att ställa in hostname och uname -n, och @ Sh3ljohn ville uttryckligen för att undvika utdata från dessa två kommandon.

Svar

Du kan använda . Detta kommando läser information från BIOS och hårdvaran. Exempel från min maskin:

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

Källor: [1]

Kommentarer

  • Jag tror inte ' t tror att det är det jag letar efter; detta kräver administratörsrättigheter och ger dig information om hårdvaran, inte om ett användarvalt namn när du installerade operativsystemet på den maskinen.
  • användarvalt namn? det låter som värdnamn för mig.
  • Tyvärr, jag har gjort det fel. Jag lämnar svaret ändå. Det enda användarvalde namnet med de Linux-distributioner jag känner är värdnamnet.
  • @Bibek_G Det är därför jag ' inte kan hitta svaret på min fråga på OSX det här är två olika saker. Jag letar efter namnet jag angav när jag installerade Linux på den maskinen, vilket jag antar skulle vara standardnätverksnamnet.
  • @jschlichtholz Naturligtvis kan detta svar vara användbart för någon annan, men som jag sa till Bibek_G, jag letar efter vad som kan vara standardnätverksnamnet då.

Svar

Strikt taget , det finns inget sådant som nätverksrelaterat ”datornamn” i Linux, och jag ser faktiskt inte syftet med att namnge datorer som inte finns i nätverket.

Anledningen till att din dator har olika strängar i /etc/hostname, /etc/hosts och uname -n är att DHCP-protokollet har möjlighet att tillhandahålla ett värdnamn längs med IP-adress till en ny värd. ”machine42.work.localnetwork” ser ut precis som ett namn som DHCP-servern skulle välja. Denna sträng sparas och returneras av gethostname samtal.

Se även:

Hur ändrar jag datorns namn? (tl; dr echo computername > /etc/hostname) – att ”s vad händer när du väljer ett namn under installationen.

Hur ändrar jag värdnamnet utan omstart? (tl; dr hostname computername) – det är vad som händer när du får ett DHCP-avtal med ett värdnamn.

Kommentarer

  • " Strikt taget finns det inget sådant som nätverksrelaterat " datorns namn " i Linux " – Inte ' beror det inte på tjänsten? Till exempel tror jag att Windows-motsvarigheten är NetBIOS-namnet. Det är det vänliga namnet utan domändelarna, och det kan skilja sig från värddelen i ett domännamn (helt kvalificerat eller inte).
  • NetBIOS-namn är fortfarande ett nätverksnamn, även om det ' skiljer sig från ett domännamn.
  • tools.ietf.org/html/rfc1178 rekommenderar INTE att använda ett domännamn för namnet på din dator. En dator kan tillhandahålla en server för flera domännamn. I det här fallet kan värdnamn bara tillhandahålla en av servrarna.

Svar

De andra svaren säger att det inte finns något Linux-ekvivalent, även om det faktiskt finns det. Det kallas " Ganska värdnamn ". Kör följande kommando för att få det:

 hostnamectl --pretty  

Kommentarer

  • hostnamectl kräver SystemD. Den fina informationen lagras i /etc/machine-info
  • +1 Jag tycker att detta borde vara det valda svaret. — Wikipedia säger: " Ett värdnamn är ett domännamn som har en tillhörande DNS-post. " Kombinera detta med tools.ietf.org/html/rfc1178 som rekommenderar INTE att använda ett domännamn för namnet på din dator. Detta innebär att man inte heller ska använda ett värdnamn för namnet på din dator. Vad ger när en enda dator försöker köra två nätverk samtidigt? I det här fallet är värdnamnet kan ' inte vara värdnamn för dem båda. värdnamnet är tydligt överbelastat och försöker vara både ett DNS-värdnamn och ett maskinnamn vid t han samma gång.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *