• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB II LANDASAN TEORI"

Copied!
13
0
0

Teks penuh

(1)

BAB II

LANDASAN TEORI

2.1 SISTEM OPERASI

Sistem operasi adalah penghubung antara pengguna dan perangkat keras komputer. Fungsi sistem operasi ialah menyediakan lingkungan layanan bagi pengguna untuk menjalankan program dengan nyaman dan efisien. (Abraham Silverschatz, Galvin, Gagne, 2012)

Berikut adalah konsep yang menggambarkan level sistem operasi bekerja :

Gambar 1 Konsep Sistem Operasi

Sumber: http://stackoverflow.com/questions/11579669/what-operating-system-concepts-should-every-programmer-be-aware-of

Ada beberapa fungsi utama yang menjadi tanggung jawab sistem operasi, yaitu :

1. Manajemen proses, 2. Manajemen memori,

3. Manajemen sistem berkas, dan 4. Manajemen masukan/keluaran.

(2)

2.1.1 Manajemen Proses

Proses didefinisikan sebagai program yang sedang dieksekusi. Menurut Silberschatz proses tidak hanya sekedar suatu kode program (text section), melainkan meliputi beberapa aktivitas yang bersangkutan seperti program counter dan stack. Sebuah proses juga melibatkan stack yang berisi data sementara (parameter fungsi/metode, return address, dan variabel lokal) dan data section yang menyimpan variabel-variabel global.

2.1.2 Manajemen Memori

Memori adalah pusat kegiatan pada sebuah komputer, karena setiap proses yang akan dijalankan harus melalui memori terlebih dahulu. CPU mengambil instruksi dari memori sesuai yang ada pada program counter. Instruksi memerlukan proses memasukkan/menyimpan ke alamat di memori. Tugas sistem operasi adalah mengatur peletakan banyak proses pada suatu memori. Pada bagian ini kita akan membahas berbagai cara untuk mengatur memori. Algoritma untuk manajemen memori ini bervariasi dari yang menggunakan pendekatan primitif pada mesin sampai pemberian halaman dan strategi segmentasi. Memori harus dapat digunakan dengan baik, sehingga dapat memuat banyak proses dalam suatu waktu.

2.1.3 Manajemen Sistem Berkas

Berkas adalah kumpulan informasi yang berhubungan, sesuai dengan tujuan pembuat berkas tersebut. Umumnya berkas merepresentasikan program dan data. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.). Sistem operasi mengimplementasikan konsep abstrak dari berkas dengan mengatur media penyimpanan massa, misalnya tapes dan disk.

Sistem operasi bertanggung-jawab dalam aktivitas yang berhubungan dengan manajemen berkas:

 Pembuatan dan penghapusan berkas.  Pembuatan dan penghapusan direktori.  Mendukung manipulasi berkas dan direktori.

(3)

Melakukan backup berkas ke media penyimpanan yang permanen (non-volatile).

2.1.4 Manajemen Masukan/Keluaran

Sistem ini sering disebut dengan device manager. Menyediakan device driver yang umum sehingga operasi Masukan/Keluaran dapat seragam (membuka, membaca, menulis, menutup). Komponen Sistem Operasi untuk sistem Masukan/Keluaran:

 Penyangga : menampung sementara data dari/ke perangkat Masukan/Keluaran.

Spooling : melakukan penjadwalan pemakaian Masukan/Keluaran sistem supaya lebih efisien.

 Menyediakan driver: untuk dapat melakukan operasi rinci untuk perangkat keras Masukan/Keluaran tertentu.

Secara garis besar keempat aspek manajemen itulah yang merupakan tanggung jawab dari sebuah sistem operasi komputer. (Silverschatz dkk, 2012).

2.2 LINUX

Linux dalam istilah sederhana, sebuah sistem operasi. Linux adalah perangkat lunak pada komputer yang memungkinkan aplikasi dan pengguna komputer untuk mengakses perangkat pada komputer untuk melakukan fungsi yang diinginkan. Sistem operasi menyampaikan instruksi dari aplikasi, misalnya, prosesor komputer. Prosesor melakukan tugas yang diperintahkan, kemudian mengirimkan kembali hasilnya ke aplikasi melalui sistem operasi. Linux sama seperti Windows dan OS X, sebuah sistem operasi komputer. Dalam perkembangannya saat ini linux sudah banyak digunakan dalam komputasi seperti di Bursa Efek New York, perangkat ponsel dan super komputer. (Linux foundation).

Linux diciptakan oleh Linux Torvalds pada tanggal 25 Agustus 1991. Sebagai sistem operasi yang bersifat kode terbuka. Linux memiliki filosofi sebagai berikut :

(4)

 Bebas untuk menggunakan program untuk tujuan apapun

 Bebas untuk mempelajari konsep bekerja program dan melakukan perubahan kode sesuai yang kita inginkan

 Bebas untuk mendistribusikan program, sehingga dapat membantu orang lain

 Bebas untuk mendistribusikan program yang telah kita ubah versinya kepada orang lain.

Linux menjadi pilihan banyak orang karena sifatnya yang gratis dan kode terbuka. Gratis berarti kita tidak perlu mengeluarkan biaya untuk membelinya dan membayar lisensi pemakaian. Bersifat kode terbuka mengizinkan pengguna untuk mempelajarinya, dan melakukan modifikasi sesuai dengan kebutuhan. Selain itu, linux cukup stabil ketika digunakan dalam sistem operasi server.

Dengan sifatnya yang terbuka, hal ini membuat banyak orang/komunitas melakukan modifikasi terhadap kernel linux. Alhasil banyak berkembang distribusi linux di dunia. Modifikasi yang dilakukan bermacam-macam sesuai dengan keinginan dari masing-masing pengembang. Berikut adalah beberapa varian distribusi linux yang berkembang saat ini :

 Ubuntu Linux  Linux Mint  Debian  Fedora

 OpenSUSE

Saat ini sudah berkembang juga versi komersil dari linux. Seperti Redhat Enterprise Linux dan SUSE Linux. Keduanya menghadirkan versi komersil untuk dukungan pengembangan, pembaharuan sistem serta dukungan teknis. Hal ini menjadi pilihan tersendiri bagi pengguna bisnis. Para pebisnis tentunya menginginkan bahwa ketika mereka mengadopsi linux untuk penggunaan komputer baik untuk keperluan desktop dan server mendapatkan dukungan penuh sehingga mampu menyelesaikan kemungkinan permasalahan yang terjadi. Dengan

(5)

demikian jaminan kepastian bisnis tetap terjaga dalam kondisi apapun dan kapanpun.

2.3 LINUX DEBIAN

Linux Debian merupakan salah satu varian dari sistem operasi open source berbasis linux. Debian dihasilkan dari Debian Project yang merupakan kumpulan pengembang-pengambang perangkat lunak yang bergabung dalam satu komunitas. Mereka mengembangkan sistem operasi bersifat open source (kode terbuka) yang dapat digunakan oleh siapapun baik perorangan maupun organisasi. Nama Debian merupakan gabungan dari nama Debra Lynn dan Ian Murdock, menjadi Debian. Debian pertama kali rilis pada tanggal 16 Agustus tahun 1993. Rilis tersebut saat Ian Murdock menjadi pemimpin pertama dari Debian Project. Sampai pada tahun 2016, versi terakhir Debian yaitu 8 yang dapat diunduh secara langsung di website resmi debian atau dari server-server mirror yang bekerjasama dengan Debian Project.

Gambar 2 Logo Debian

Debian setidaknya memiliki tiga versi rilis dalam setiap proyek pemeliharaan, yaitu :

Stable

Versi ini merupakan versi yang didukung penuh oleh debian untuk pembaruan dan pengembangan sistem.

Testing

Versi ini berisikan paket-paket program dalam masa pengujian dan akan menjadi versi stable jika dianggap stabil.

(6)

Unstable

Berisikan versi yang hanya dalam tahap pengembangan oleh para pengembang internal debian.

Sejak pertama kali rilis pada tahun 1993, saat ini versi stabil Debian ialah versi 8 (Jessie).

Gambar 3 Debian Release Timeline

2.4 SERVER

Menurut O’brien (2011:190) lebih spesifik menyatakan bahwa, “Server adalah komputer yang mendukung aplikasi dan telekomunikasi dalam jaringan, serta pembagian peralatan software, dan database di antara berbagai terminal kerja dalam jaringan.Sebuah klien akan mengirimkan sebuah permintaan (request) ke server dan selanjutnya server akan memproses permintaan tersebut. Setelah server selesai memproses permintaan, maka akan mengirimkan balik hasilnya ke klien. Hal ini berlaku bagi setiap klien yang mengirimkan permintaan ke server.

Server harus memiliki spesifikasi yang lebih tinggi dari klien. Hal ini dikarenakan server akan melayani semua permintaan dari semua kliennya. Spesifikasi yang tinggi meliputi cpu, memori, pita jaringan (bandwith) dan media

(7)

penyimpanan (storage). Dengan spesifikasi tersebut diharapkan server dapat melayani permintaan-permintaan dari klien dengan baik dan cepat.

Sebuah server umumnya hanya melayani dan memproses sebuah layanan. Layanan yang ditangani dapat berupa permintaan halaman web, file sharing, dan lain sebagainya. Pembagian fungsi layanan ini disesuaikan dengan kebutuhan dan infrastruktur yang ada. Namun tidak memungkiri jika sebuah server dapat melayani beberapa layanan sekaligus dalam satu perangkat keras. Pada umumnya hal ini dikonfigurasi pada server yang memiliki beban kerja minimal.

Ada beberapa macam server berdasarkan fungsi yang dilayaninya : 1. Fax Server

Fax server berfungsi untuk melayani permintaan fax bagi klien. Setiap pengiriman fax yang dilakukan oleh klien akan melalui server ini terlebih dahulu. Untuk selanjutnya Fax Server yang akan memproses dan mengirimkan fax ke tujuan.

2. FTP Server

FTP singkatan dari File Transfer Protocol. Sebuah protokol jaringan yang berfungsi untuk melayani permintaan pertukaran file khususnya. FTP Client akan mengambil file-file yang ditempatkan di FTP Server untuk disimpan ke lokal.

3. Mail Server

Mail server berfungsi untuk melayani kebutuhan surat menyurat secara elektronik (email). Sebelum server melayani kebutuhan ini, harus dikonfigurasi sebuah domain (nama) untuk identitas email nantinya seperti domain test.com. Setiap pengguna yang dibuat akan menjadi anak domain dengan awalan simbol @ (at), misal [email protected].

4. Database Server

Database server berfungsi sebagai penyedia dan pengelola basis data. Semua yang berhubungan dengan basis data akan dilayani oleh server ini. 5. Proxy Server

Akses internet yang dimiliki oleh organisasi/instansi tentunya akan dibagikan kepada semua user yang berada dalam organisasi/instansi

(8)

tersebut. Hal ini merupakan fungsi dari proxy server yang akan meneruskan permintaan akses internet dari dan ke klien.

6. Web Server

Web server berfungsi untuk melayani permintaan halaman web terhadap suatu alamat internet. Klien akan mengirimkan permintaan akses halaman web ke server dan server akan mengirimkan halaman yang diminta oleh klien.

7. File Server

Server ini berfungsi sebagai media penyimpanan data pengguna. Pada umumnya data yang disimpan di server ini akan diakses oleh banyak pengguna (sharing). Dengan adanya server ini, penyimpanan menjadi terpusat untuk data-data yang bersifat publik akses.

8. DNS Server

Domain Name Server (DNS) berfungsi untuk mentranslasi sebuah IP Address menjadi sebuah nama. Misalkan sebuah laman memiliki IP Address 1.1.1.1 dan akan ditranslasikan menjadi sebuah nama misal test.com. Pengguna lebih mudah mengingat nama bila dibandingkan angka. Karena itulah dibutuhkan sebuah DNS Server untuk memudahkan operasional dari sebuah server dijaringan.

9. DHCP Server

Dynamic Host Configuration Protocol (DHCP) berfungsi untuk memberikan alamat IP Address kepada sebuah klien secara dinamis. Pengguna tidak perlu mengeset sendiri IP Address miliknya, namun sebaliknya IP Address akan dialokasian oleh server ini.

2.5 BACKUP

Backup dilakukan dengan menyalin suatu data ke media penyimpanan lain dan menyalin balik ketika pada waktu tertentu. Data tersebut bisa berupa file dokumen, gambar, video, audio, sistem operasi, atau software/program tertentu.

(9)

Backup menjamin data yang kita miliki tetap ada dalam kondisi apapun dengan melakukan restorasi. Banyak hal yang dapat terjadi terhadap sebuah data seperti kerusakan, kehilangan, dan pencurian. Kerusakan perangkat keras media penyimpanan secara langsung akan berdampak pula pada data yang disimpan didalamnya. Dampaknya bisa berupa kerusakan dan kehilangan data sebagian atau seluruhnya. Dalam hal pencurian, faktor keamanan sistem menjadi pemicu utama data dapat dicuri oleh orang yang tidak bertanggung jawab.

Pada umumnya data disimpan disebuah hardisk. Data utama secara struktur disimpan didalamnya. Backup menyalin data utama tersebut ke media penyimpanan lain yang dapat berupa hardisk, optikal disk (cd/dvd), tape, flash disk.

Mode backup yang dilakukan dapat dikategorikan menjadi 3:

1. Full

Mode backup ini menyalin seluruh data utama ke media penyimpanan lain. Mode ini pada umumnya dilakukan pada saat prose backup pertama kali dilakukan.

2. Differential

Mode differential menyalin perbedaan/perubahan pada saaat data utama

dibackup terakhir kali di full backup dengan data utama yang ada saat ini.

Restorasi hasil backup ini memerlukan full backup terakhir dan backup dari differential itu sendiri.

3. Incremental

Proses backup ini hanya menyalin perbedaan data diantara data saat ini dengan full/differential backup terakhir.

Pada saat ini teknologi backup sudah sangat berkembang dengan pesat. Dahulu kala backup bisa dilakukan hanya dengan menyalin data utama yang statis ke media lain. Namun saat ini data yang dibackup sudah dapat berupa backup sistem operasi, file sistem, program/aplikasi baik dalam teknologi server fisik, virtual, maupun awan.

(10)

2.6 RSYNC

Rsync adalah tool untuk transfer dan sinkronisasi file atau tree (struktur

direktori dan file) secara satu arah, baik transfer lokal (di sistem yang sama) maupun remote (jaringan/internet). Rsync merupakan tools yang powerful karena bisa bertindak sebagai server sekaligus sebagai klien.

Rsync diciptakan oleh Andrew Tridgell dan Paul Mackerras pada tanggal 19 Juni 1996. Andrew Tridgell membahas mengenai desain, implementasi dan performa rsync pada bab 3 sampai bab 5 dalam tesisnya tahun 1999. Rsync menjadi paket standar dalam distribusi linux saat ini karena fleksibilitas, kecepatan dan adaptasi perintahnya.

Ada beberapa kelebihan yang dimiliki oleh rsync, diantaranya yaitu : 1. Fleksibel

Rsync bersifat fleksibel memungkinkan kita melakukan salinan data

secara rekursif pada sebuah direktori beserta seluruh isinya. Rsync juga memiliki kemampuan resume ketika prosesnya dihentikan sementara, sehingga ketika menjalankan kembali tidak perlu kembali pada proses awal sekali.

2. Ringan

Rsync merupakan tool kecil yang sangat ringan ketika dijalankan oleh

komputer.

Ada beberapa istilah yang perlu pahami dalam rsync, diantaranya : Client : klien yang menginisialisasi sinkronisaasi

Server : Proses remote rsycn yang dikoneksikan dengan klien. Daemon : Proses rsync yang berjalan di server, menunggu koneksi

yang datang dari klien. Dikenal pula dengan istilah service

Remote Shell : satu/beberapa proses yang menyediakan konektivitas antara server dan klien

Sender : server yang menjadi sumber data

(11)

Generator : proses yang menggenerasi identitas perubahan data dan mengatur data secara logikal

Ketika sebuah proses rsync berjalan di klien dan terkoneksi dengan server, maka secara logic terbentuk sebuah pipa atau socket jaringan. Melalui pipa/socket jaringan inilah proses sinkronisasi akan berjalan.

Rsync mendeskripsikan sebuah file tidak hanya berupa alamat/lokasi di media penyimpanan saja. Namun algoritmanya mendeskripsikan pula kepemilikan, mode, pengaksesan, ukuran dan perubahan waktu.

Sebuah desain protokol komunikasi yang baik, memiliki karakteristik sebagai berikut :

Setiap paket data yang dikirimkan selalu terdefinisi dengan sebuah header. Paket header berisikan tipe dana tau perintah tertentu.

 Setiap paket terdefinisikan dengan baik panjangnya.

2.7 CRON

Cron merupakan tool yang dapat digunakan untuk menjalankan perintah secara otomatis dan berulang. Setiap distribusi linux secara mendasar sudah menyediakan paket cron. Jadwal eksekusi perintah dapat dilakukan oleh cron berdasarkan satuan waktu tertentu. Paket bawaan cron sudah menyediakan beberapa pilihan , diantaranya perintah setiap jam, hari, minggu, dan juga bulan. Terlepas dari pilihan tersebut, kita dapat membuat sendiri/kostumisasi perintah sesuai kebutuhan yang ada.

Crontab adalah sebuah teks simpel yang berisikan daftar baris perintah yang akan dijalankan pada waktu tertentu. Crontab dapat dilakukan perubahan dengan utilitas teks. Setiap baris perintah yang ada di crontab, dikontrol penuh oleh servis cron. Dalam hal ini proses cron akan menjalankannya di balik layar (background). Setiap pengguna (user) di dalam sistem operasi linux memiliki file crontab masing-masing. Hal ini untuk memisahkan identitas proses yang akan berjalan

(12)

nantinya. Dengan adanya pemisahan ini, maka dapat dikenali pengguna mana yang sedang menjalankan cron.

Selain itu terdapat level tertinggi dari proses cron yang dijalankan oleh akun root. Akun ini berfungsi untuk menjalankan administrasi proses cron. Kita dapat mengkonfigurasi hak akses pengguna yang diperbolehkan untuk menjalankan proses cron. Pembatasan ini dilakukan untuk memudahkan administrator dalam operasional server. Cron memiliki special string yang sudah tersedia, seperti berikut :

String Keterangan

@reboot Dijalankan sekali, saat sistem dinyalakan @yearly Dijalankan setiap tahun

@annually Dijalankan setiap tahun, sama seperti @yearly @monthly Dijalankan setiap bulan

@weekly Dijalankan setiap minggu @daily Dijalankan setiap hari

@midnight Dijalankan setiap hari, tengah malam @hourly Dijalankan setiap jam

Tabel 1 String Cron

Dengan special string di atas, kita dapat menyingkat baris perintah. Semakin sederhana kita mendefinisikannya, maka semakin mudah pula orang lain dapat mengerti. Setiap proses cron yang berjalan, akan menghasilkan tercatat di log file. Di dalam log file akan diinformasikan mengenai status cron yang kita jalankan. Apakah berhasil atau gagal.

2.8 SSH

SSH (Secure Shell) adalah seperangkat alat komunikasi jaringan yang secara kolektif berdasarkan protokol/standar terbuka yang dipandu oleh Internet Engineering Task Force (IETF). (Wale Soyinka, 2012).

Komunikasi jaringan pada awalnya bersifat Cleartext, berarti data tidak dilakukan enkripsi dijaringan. Hal ini tentunya sangat beresiko karena ketika

(13)

lain dapat melakukan packet sniffing. Dengan melakukan hal tersebut tentunya informasi akun dan sandi sudah didapatkan oleh orang yang melakukannya. Dengan demikian orang lain dapat memasuki sistem yang kita miliki. Banyak hal yang akan terjadi jika celah keamanan tersebut berhasil ditembus. SSH menjadi solusi untuk menjawab celah keamanan tersebut. Komunikasi yang dilakukan antara dua buah sistem akan dilakukan enkripsi. Jika ada orang lain yang melakukan sniffing, ia masih dapat melihat paket yang sudah dibungkus. Namun perlu melakukan ekstra usaha untuk mendekripnya.

SSH bergantung kepada sebuah teknologi yang dinamakan kriftografi. Prinsip kerja kriptograsi ini terdiri dari 2 kunci, publik dan privat. Masing-masing kunci bersifat unik. Kunci publik dapat kita sebarluaskan untuk orang lain, sedangkan kunci privat bersifat rahasia dan harus disimpan dengan baik.

Berikut analogi cara kerja ssh yang dilakukan oleh 2 buah sistem/pengguna ( Alice dan Bob) :

Gambar 4 Cara Kerja SSH

Gambar

Gambar 1 Konsep Sistem Operasi
Gambar 2 Logo Debian
Gambar 3 Debian Release Timeline
Tabel 1 String Cron
+2

Referensi

Dokumen terkait

Infeksi  bakteri anerobik biasanya ditemukan pada pasien yang pernah mengidap  penyakit inflamasi pelvik karena sudah diinvasi oleh bakteri sebelumnya sehingga pasien

Setelah diadakan evaluasi terhadap dokumen kualifikasi yang Saudara ajukan pada pekerjaan Pengadaan Jasa Konsultansi Perencanaan Pembangunan Gedung Kantor Pengadilan

[r]

Berikut dijelaskan makna gaul, makna bahagia, makna tidak menghargai waktu, makna tidak menghargai guru dan makna sanksi tidak memberikan efek jera bagi siswa

DARUSSALAM 1990.. Us£he untuk r.cneiptalwn kebersihan ling lwngan hidup. p ortisipDSi semua wa.rgn o8.syera!tat un - tuk nendukung pro~rem tersebut. Penelitian lni

Wongsonegoro pada tanggal 11 Desember 2018 dengan keluhan nyeri dan bengkak ekstremitas atas sinistra sebelah kiri sejak kurang lebih 3 jam SMRS karena jatuh terpeleset di lantai

Apabila cara yang digunakan dalam perawatan salah maka mesin tidak akan dapat dipakai dalam jangka waktu yang lama atau sesuai jam kerja mesin. Dari metode ini

KESEHATAN WANITA SEPANJANG SIKLUS KEHIDUPAN KESEHATAN WANITA SEPANJANG SIKLUS KEHIDUPAN