Apakah / etc / perkhidmatan di Linux / Unix?

File Perkhidmatan Linux Menyimpan Port yang Dikenali

Sistem operasi UNIX menyimpan apa yang disebut fail perkhidmatan di / etc / services. Ia menyimpan maklumat tentang pelbagai perkhidmatan yang boleh digunakan oleh aplikasi komputer di komputer. Di dalam fail itu ialah nama perkhidmatan, nombor port dan protokol yang digunakannya, dan mana-mana alias yang digunakan.

Nombor port dipetakan ke perkhidmatan tertentu seperti fail hos pada komputer Windows memetakan nama hos ke alamat IP . Walau bagaimanapun, fail perkhidmatan sistem operasi UNIX tidak termasuk alamat IP tetapi sebaliknya maklumat seperti sama ada perkhidmatan tersebut adalah TCP atau UDP dan nama-nama biasa yang boleh dilalui olehnya.

Penyunting teks mudah boleh digunakan untuk mengedit fail / etc / services, seperti Vim atau Kate.

Contoh Fail Perkhidmatan UNIX

Pada UNIX, peranan utama fail konfigurasi / etc / services adalah supaya program boleh melakukan getportbyname () soket panggilan dalam kod mereka untuk memahami apa port yang harus mereka gunakan. Sebagai contoh, daemon e-mel POP3 akan melakukan getportbyname (POP3) untuk mendapatkan nombor 110 yang dijalankan POP3.

Idea ini ialah jika semua daemon POP3 menggunakan getportbyname (), maka tidak kira apa pun daemon POP3 yang anda jalankan, anda boleh menyusun semula nombor portnya dengan mengedit / etc / services.

Nota: Tidak dapat digunakan untuk menggunakan fail perkhidmatan untuk mengetahui maksud nombor port. Sekiranya anda ingin mengetahui program-program yang digunakan oleh pelabuhan, anda harus menggunakan program lsof untuk mengetahui dengan tepat mana port yang terikat pada proses mana. Jika lsof berjalan tidak sesuai, maka anda harus menyelidik pelabuhan dalam rujukan yang lebih umum.

Semua fail perkhidmatan mengikuti sintaks yang sama seperti:

nama pelabuhan / protokol mencadangkan komen

Walau bagaimanapun, alias dan komen untuk setiap kemasukan pangkalan data tidak perlu, seperti yang anda lihat dalam contoh fail perkhidmatan ini:

$ kucing / etc / services # # Copyright 2008 Sun Microsystems, Inc. Semua hak terpelihara. # Penggunaan adalah tertakluk kepada syarat lesen. # #ident "@ (#) services 1.34 08/11/19 SMI" # # Perkhidmatan rangkaian, gaya internet # tcpmux 1 / tcp echo 7 / tcp echo 7 / udp discard 9 / tcp sink null null 9 / udp sink null null systat 11 / tcp pengguna siang hari 13 / tcp siang hari 13 / udp netstat 15 / tcp chargen 19 / tcp ttytst source chargen 19 / udp ttytst source ftp-data 20 / tcp ftp 21 / tcp ssh 22 / tcp # 25 / tcp mel masa 37 / tcp timserver time 37 / udp timserver name 42 / udp nameserver whois 43 / tcp nicname # usually to sri-nic swat 901 / tcp # Samba Web Adm.Tool servicetag 6481 / udp servicetag 6481 / tcp snmpd 161 / udp snmp # daemon snmp SMA $