Bagaimana cara mendapatkan nama komputer (bukan nama hostnya)?


19

Semua hasil pencarian saya akhirnya ada hubungannya dengan hostnameatau uname -n. Saya mencari manual untuk keduanya, mencari opsi yang licik, tetapi tidak berhasil.

Saya mencoba mencari yang setara dengan OSX scutil --get ComputerNamedi sistem Linux. Pada Mac OS X, nama komputer digunakan sebagai pengenal yang dapat dibaca manusia untuk komputer; itu ditampilkan di berbagai layar manajemen ( misalnya pada manajemen inventaris, akses jarak jauh berbasis Bonjour, ...) dan berfungsi sebagai nama host default (setelah pemfilteran untuk menangani spasi, dll.).


Saya mungkin salah, tetapi mendefinisikan nama komputer sebagai nama jaringannya berarti tidak memiliki nama tetap, bukan? Ketika Anda menginstal Linux atau OSX pada mesin, Anda biasanya memilih nama untuk komputer itu (yang merupakan nama jaringan standar yang saya asumsikan). Misalnya laptop saya mungkin dinamai "FooBar" tetapi ketika saya terhubung ke jaringan di tempat kerja saya mendapatkan nama host seperti "machine42.work.localnetwork".
Sheljohn

@StephenKitt Tepat, apakah ini memiliki nama lain di sistem Linux?
Sheljohn

4
@ Sh3ljohn apa tujuan computername adalah melayani osx? Saya tidak berpikir ada yang setara dalam sistem linux.
Bibek_G

Apakah Anda memberi nama selain nama host saat menginstal komputer itu? Coba cari nama itu di / etc:grep -ri 'name' /etc
ptman

@Bibek_G Saya ingin menggunakan ini untuk mengidentifikasi mesin tempat saya menjalankan perangkat lunak milik saya. UUID tidak cukup karena mungkin ada beberapa OS yang diinstal pada disk yang sama yang pada gilirannya dijalankan pada mesin yang sama.
Sheljohn

Jawaban:


31

Persamaan terdekat dengan nama yang dapat dibaca manusia (dan pilihan manusia) untuk komputer yang menjalankan Linux adalah nama host default yang disimpan di /etc/hostname. Pada beberapa (tidak semua) distribusi Linux, nama ini dimasukkan selama instalasi sebagai nama komputer (tetapi dengan batasan nama host jaringan, tidak seperti nama komputer Mac OS X).


Tetapi file ini sering digunakan untuk mengatur hostnamedan uname -n, dan @ Sh3ljohn secara eksplisit ingin menghindari output dari kedua perintah itu.
roaima

17

Sebenarnya, tidak ada yang namanya "nama komputer" yang tidak terkait jaringan di Linux, dan saya benar-benar gagal melihat tujuan penamaan komputer yang tidak ada di jaringan.

Alasan mengapa komputer Anda memiliki string yang berbeda /etc/hostname, /etc/hostsdan uname -nprotokol DHCP memiliki fasilitas untuk memberikan nama host bersama dengan alamat IP ke host baru. "machine42.work.localnetwork" terlihat persis seperti nama yang akan dipilih oleh server DHCP. String ini kemudian disimpan dan dikembalikan melalui gethostnamepanggilan.

Lihat juga:

Bagaimana cara mengubah nama komputer? (tl; dr echo computername > /etc/hostname) - itulah yang terjadi ketika Anda memilih nama selama instalasi.

Bagaimana cara mengubah nama host tanpa restart? (tl; dr hostname computername) - itulah yang terjadi ketika Anda mendapatkan sewa DHCP dengan nama host.


"Sebenarnya, tidak ada yang namanya" nama komputer "yang tidak berhubungan dengan jaringan di Linux" - Apakah itu tidak bergantung pada layanan? Sebagai contoh, saya pikir setara Windows adalah nama NetBIOS. Ini nama yang ramah tanpa bagian domain, dan mungkin berbeda dari bagian host dari nama domain (memenuhi syarat atau tidak).

Nama NetBIOS masih merupakan nama jaringan, meskipun berbeda dengan nama domain.
Dmitry Grigoryev

16

Anda bisa menggunakan sudo dmidecode | grep -A3 '^System Information'perintah. Perintah ini membaca informasi dari BIOS dan perangkat keras. Contoh dari mesin saya:

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

Sumber: [1]


Saya tidak berpikir inilah yang saya cari; ini memerlukan hak admin dan memberi Anda informasi tentang perangkat keras, bukan tentang nama yang dipilih pengguna pada saat Anda menginstal OS pada mesin itu.
Sheljohn

13
nama yang dipilih pengguna? itu terdengar seperti nama host bagi saya.
Bibek_G

2
Maaf, saya salah. Saya akan meninggalkan jawabannya. Satu-satunya nama yang dipilih pengguna menggunakan distribusi Linux yang saya tahu adalah nama host.
jschlichtholz

@Bibek_G Inilah sebabnya saya tidak dapat menemukan jawaban untuk pertanyaan saya, di OSX ini adalah dua hal yang berbeda. Saya mencari nama yang saya masukkan ketika saya menginstal Linux pada mesin itu, yang saya anggap sebagai nama jaringan default.
Sheljohn

@ jschlichtholz Tentu saja, jawaban ini mungkin berguna bagi orang lain, tetapi seperti yang saya katakan kepada Bibek_G, saya mencari apa yang mungkin menjadi nama jaringan default saat itu.
Sheljohn
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.