<Sebelumnya | Konten | Selanjutnya>
Sistem Linux adalah platform hebat untuk menawarkan layanan jaringan. Di bagian ini, kami akan mencoba memberikan gambaran umum tentang server dan aplikasi jaringan yang paling umum.
10.3.1. Jenis server
10.3.1.1. Server mandiri
Menawarkan layanan kepada pengguna dapat didekati dengan dua cara. Daemon atau layanan dapat berjalan dalam mode mandiri, atau dapat bergantung pada layanan lain yang akan diaktifkan.
Layanan jaringan yang banyak dan/atau terus digunakan, biasanya berjalan dalam mode mandiri: mereka adalah daemon program independen yang selalu berjalan. Mereka kemungkinan besar dimulai pada waktu boot sistem, dan mereka menunggu permintaan pada titik koneksi atau port tertentu yang mereka atur untuk didengarkan. Ketika permintaan datang, itu diproses, dan mendengarkan berlanjut sampai permintaan berikutnya. Server web adalah contoh umum: Anda ingin tersedia 24 jam sehari, dan jika terlalu sibuk, server harus membuat lebih banyak instance mendengarkan untuk melayani pengguna secara bersamaan. Contoh lain adalah arsip perangkat lunak besar seperti Sourceforge atau cermin Tucows Anda, yang harus menangani ribuan permintaan FTP per hari.
Contoh layanan jaringan mandiri di komputer rumah Anda mungkin adalah bernama (nama daemon), server nama caching. Layanan mandiri memiliki prosesnya sendiri yang berjalan, Anda dapat memeriksa kapan saja menggunakan ps:
bob:~> ps auxw | grep bernama
bernama 908 0.0 1.0 14876 5108 ? S Mar14 0:07 bernama -u bernama
bob:~> ps auxw | grep bernama
bernama 908 0.0 1.0 14876 5108 ? S Mar14 0:07 bernama -u bernama
Namun, ada beberapa layanan yang dapat Anda gunakan di PC Anda, meskipun tidak ada proses server yang berjalan untuk layanan tersebut. Contohnya adalah layanan FTP, layanan penyalinan aman, atau layanan jari. Layanan tersebut memiliki Internet Daemon (inetd) mendengarkan di tempat mereka.
10.3.1.2. (x) inetd
Di PC rumah Anda, keadaan biasanya sedikit lebih tenang. Anda mungkin memiliki jaringan kecil, misalnya, dan Anda mungkin harus mentransfer file dari satu PC ke PC lain dari waktu ke waktu, menggunakan FTP atau Samba (untuk konektivitas dengan mesin MS Windows). Dalam kasus tersebut, memulai semua layanan yang hanya Anda perlukan sesekali dan menjalankannya sepanjang waktu akan membuang-buang sumber daya. Jadi dalam pengaturan yang lebih kecil, Anda akan menemukan daemon yang diperlukan bergantung pada program pusat, yang mendengarkan semua port layanan yang menjadi tanggung jawabnya.
Super-server ini, daemon layanan Internet, dimulai pada waktu inisialisasi sistem. Ada dua implementasi umum: inetd dan xinetd (daemon layanan Internet yang diperluas). Satu atau yang lain biasanya berjalan di setiap sistem Linux:
bob:~> ps -ef | ambil inet
root 926 1 0 Mar14 ? 00:00:00 xinetd-ipv6 -staylive -reuse \
-pidfile /var/run/xinetd.pid
bob:~> ps -ef | ambil inet
root 926 1 0 Mar14 ? 00:00:00 xinetd-ipv6 -staylive -reuse \
-pidfile /var/run/xinetd.pid
Layanan yang menjadi tanggung jawab daemon Internet, tercantum dalam file konfigurasinya,
/etc/inetd.conf, Untuk inetd, dan di direktori /etc/xinetd.d untuk xinetd. Layanan yang biasanya dikelola termasuk berbagi file dan layanan cetak, SSH, FTP, telnet, daemon konfigurasi Samba, layanan bicara dan waktu.
Segera setelah permintaan koneksi diterima, server pusat akan memulai sebuah instance dari server yang diperlukan. Jadi, dalam contoh di bawah ini, ketika pengguna bob memulai sesi FTP ke host lokal, daemon FTP berjalan selama sesi aktif:
bob:~> ps tambahanw | grep ftp
bob 793 0.1 0.2 3960 1076 poin/6 S 16:44 0:00 ncftp localhost
ftp 794 0.7 0.5 5588 2608 ? SN 16:44 0:00 ftpd: