Jumat, 30 Desember 2016

Automated Tasks

Automated Tasks

        Di Linux, tugas dapat dikonfigurasi untuk menjalankan secara otomatis dalam jangka waktu tertentu, pada tanggal yang ditentukan, atau ketika beban sistem rata-rata di bawah jumlah tertentu. Red Hat Enterprise Linux adalah pra-dikonfigurasi untuk menjalankan tugas-tugas sistem yang penting untuk menjaga sistem diperbarui. Misalnya, database slocate digunakan oleh perintah locate diperbarui setiap hari. Seorang administrator sistem dapat menggunakan tugas otomatis untuk melakukan backup periodik, memonitor sistem, menjalankan script kustom, dan banyak lagi.


Cron

Cron adalah daemon yang dapat digunakan untuk menjadwalkan pelaksanaan tugas berulang sesuai dengan kombinasi waktu, hari bulan, bulan, hari dalam seminggu, dan minggu.
Cron mengasumsikan bahwa sistem ini terus menerus. Jika sistem ini tidak pada saat tugas dijadwalkan, itu tidak dijalankan.To schedule one-time tasks
Untuk menggunakan layanan cron, paket RPM vixie-cron harus diinstal dan layanan crond harus menjalankan. Untuk menentukan apakah paket tersebut terinstal, gunakan rpm -q vixie-cron perintah. Untuk menentukan apakah layanan ini berjalan, menggunakan status  crond perintah / sbin / service.

Configuring Cron Tasks

File konfigurasi utama untuk cron, / etc / crontab, berisi baris berikut:
SHELL=/bin/bash 
PATH=/sbin:/bin:/usr/sbin:/usr/bin 
MAILTO=root HOME=/  
# run-parts 
01 * * * * root run-parts /etc/cron.hourly 
02 4 * * * root run-parts /etc/cron.daily 
22 4 * * 0 root run-parts /etc/cron.weekly 
42 4 1 * * root run-parts /etc/cron.monthly

Empat baris pertama adalah variabel yang digunakan untuk mengkonfigurasi lingkungan di mana tugas-tugas cron dijalankan. Variabel SHELL memberitahu sistem yang lingkungan shell untuk digunakan (dalam contoh ini shell bash), sedangkan variabel PATH mendefinisikan jalur yang digunakan untuk menjalankan perintah. Output dari tugas cron diemail ke username didefinisikan dengan variabel MAILTO. Jika variabel MAILTO didefinisikan sebagai string kosong (MAILTO = ""), email tidak dikirim. Variabel RUMAH dapat digunakan untuk mengatur direktori home untuk menggunakan ketika menjalankan perintah atau skrip.

Setiap baris di / etc / crontab merupakan tugas dan memiliki format berikut:

minute   hour   day   month   dayofweek   command
  • minute — any integer from 0 to 59
  • hour — any integer from 0 to 23
  • day — any integer from 1 to 31 (must be a valid day if a month is specified)
  • month — any integer from 1 to 12 (or the short name of the month such as jan or feb)
  • dayofweek — any integer from 0 to 7, where 0 or 7 represents Sunday (or the short name of the week such as sun or mon)
  • command — the command to execute (the command can either be a command such as ls /proc >> /tmp/proc or the command to execute a custom script)

Untuk salah satu nilai di atas, tanda bintang (*) dapat digunakan untuk menentukan semua nilai yang valid. Sebagai contoh, tanda bintang untuk nilai bulan berarti menjalankan perintah setiap bulan dalam batasan nilai-nilai lainnya.

Sebuah tanda hubung (-) antara bilangan bulat menentukan berbagai bilangan bulat. Misalnya, 1-4 berarti bilangan bulat 1, 2, 3, dan 4.

Sebuah daftar nilai dipisahkan oleh koma (,) menetapkan daftar. Misalnya, 3, 4, 6, 8 menunjukkan empat bilangan bulat tertentu.

Garis miring (/) dapat digunakan untuk menentukan nilai langkah. Nilai integer dapat dilewati dalam jangkauan dengan mengikuti berbagai dengan / <bilangan bulat>. Misalnya, 0-59 / 2 dapat digunakan untuk mendefinisikan setiap menit di bidang menit. nilai langkah juga dapat digunakan dengan tanda bintang. Misalnya, nilai * / 3 dapat digunakan dalam bidang bulan untuk menjalankan tugas setiap bulan ketiga.

Setiap baris yang dimulai dengan tanda pagar (#) adalah komentar dan tidak diproses.

Seperti ditunjukkan dalam file / etc / crontab, script run-bagian mengeksekusi skrip di /etc/cron.hourly/, /etc/cron.daily/, /etc/cron.weekly/, dan / etc / cron. bulanan / direktori pada setiap jam, harian, mingguan, atau bulanan masing-masing. File dalam direktori ini harus skrip shell.

Jika tugas cron diperlukan untuk dieksekusi pada jadwal selain per jam, harian, mingguan, atau bulanan, dapat ditambahkan ke direktori /etc/cron.d/. Semua file dalam direktori ini menggunakan sintaks yang sama seperti / etc / crontab
"Contoh Crontab" untuk contoh:

# record the memory usage of the system every monday  
# at 3:30AM in the file /tmp/meminfo 
30 3 * * mon cat /proc/meminfo >> /tmp/meminfo 
# run custom script the first day of every month at 4:10AM 
10 4 1 * * /root/scripts/backup.sh


Pengguna selain root dapat mengkonfigurasi tugas cron dengan menggunakan utilitas crontab. Semua crontab user-defined disimpan di / var / spool / cron / direktori dan dieksekusi menggunakan username pengguna yang menciptakan mereka. Untuk membuat crontab sebagai pengguna, login sebagai user yang dan ketik -e perintah crontab untuk mengedit crontab pengguna menggunakan editor ditentukan oleh variabel lingkungan VISUAL atau EDITOR. file menggunakan format yang sama seperti / etc / crontab. Ketika perubahan crontab disimpan, crontab disimpan sesuai dengan username dan ditulis ke file / var / spool / cron / username.

Cron daemon memeriksa file / etc / crontab, direktori /etc/cron.d/, dan / var / spool / cron / direktori setiap menit untuk setiap perubahan. Jika ada perubahan yang ditemukan, mereka dimuat ke dalam memori. Dengan demikian, daemon tidak perlu di-restart jika file crontab berubah.

Mengontrol Akses ke Cron

The /etc/cron.allow dan /etc/cron.deny file yang digunakan untuk membatasi akses ke cron. Format kedua file kontrol akses adalah salah satu nama pengguna pada setiap baris. Spasi tidak diperbolehkan dalam baik file. Cron daemon (crond) tidak harus direstart jika file kontrol akses yang dimodifikasi. File kontrol akses yang dibaca setiap kali pengguna mencoba untuk menambah atau menghapus tugas cron.

Root pengguna dapat selalu menggunakan cron, terlepas dari nama pengguna terdaftar dalam file akses kontrol.

Jika file cron.allow ada, hanya pengguna terdaftar di dalamnya diperbolehkan untuk menggunakan cron, dan file cron.deny diabaikan.

Jika cron.allow tidak ada, pengguna terdaftar di cron.deny tidak diizinkan untuk menggunakan cron

Starting and Stopping the Service

Untuk memulai layanan cron, gunakan perintah / sbin / service crond mulai. Untuk menghentikan layanan, gunakan perintah / sbin / service crond stop. Dianjurkan agar Anda memulai layanan pada saat boot.

Kamis, 29 Desember 2016

manajemen user pada linux

Management User Dan Group linux


Dalam sistem operasi Linux juga diperlukan yang namanya manajemen user dan group. Entah apapun distro dari linux tersebut (contoh: Debian, Ubuntu, Centos, atau Redhat).
Bayangkan jika dalam suatu perusahaan yang mempunyai ratusan karyawan dan mempunyai beberapa divisi didalamnya. Tentunya manajemen sangat diperlukan untuk hal ini agar lebih mudah dalam mengontrolnya apabila ada karyawan yang ingin membuat akun baru, mengganti password, atau ada karyawan yang resign dan akunnya mesti dihapus.
Dengan adanya manajemen user dan group pada linux ini, memudahkan kita dalam membagi setiap akun user pada tiap-tiap group menurut divisinya masing-masing.
Dan juga mengatur hak kepemilikan file pada tiap-tiap user menurut groupnya masing-masing. Dalam pembahasan ini akan dijelaskan bagaimana membuat, memodifikasi, serta menghapus user dan group di linux.
  •  Menciptakan User dan Group yang sama dengan nama user beserta nomor UID dan GID.
  • Terciptanya direktori dan file dibawah ini.
  • Informasi user dan group akan dicatat di file  /etc/passwd 
  • group di file  /etc/group
  •  dan password dari group dicatat di /etc/gshadow.
USER MANAGEMENT
Ada beberapa perintah atau command di linux yang berhubungan dengan user dan semua itu dapat dilihat di tabel dibawah ini.  Dalam contoh penggunaannya “user” diasumsikan bernama “lixid”
  1. Tabel 1.1 Command Management User

    CommandFungsi
    useraddMenambah user account
    userdelMenghapus user account
    usermodMengedit atribut account termasuk beberapa fungsi yang berhubungan dengan masa berlaku password.
    passwdUntuk melakukan setting password. Selain mengubah password user juga untuk mengontrol semua aspek tentang masa berlaku password
    chpasswdMembaca file yang berisi username danpassword dan update setiap password user
    chageMengubah masa berlaku password user.
    chfnMengubah informasi GECOS user
    chshMengubah shell default user
adduser.
Perintah menambahkan user sebagai contoh kita tambahkan lixid.
tampilan eksekusi perintah diatas.
# useradd lixid
[root@server1 ~]# passwd lixid
Changing password for user lixid
New password:
Re-type new password:
passwd: all authentication tokens updated successfully.

delete User.Delete user contoh command tanpa menghapus data home user dan spool mail.
Jika ingin menhapus keseluruhan data milik user.
usermod.Merubah Lokasi Home direktori user. Dengan syarat direktori harus sudah dibuah terlebih dahulu.
Mengunci user
Membebaskan user
passwd.Merubah password user
chpasswd.
Command yang satu ini sama  fungsinya untuk merubah password dalam batch mode dan dapat menerima input dari sebuah file. format merubah password setelah mengit command ini adalah   namauser:password
chage.
Command chage digunakan untuk mengatur masa aktif user dan password.  dalam contoh simple dibawah ini merubah masa expired password 30 hari dari tanggal terakhir password diubah. Contoh penggunaan chage bisa dilihat disini
Info awal.
Setelah diset masa expired password 30 hari  chage -M [Jumlah hari] [nama_user]
chfn.Merubah finger note atau inf
Hasilnya akan di save di file /etc/passwd
[root@server1 ~]# grep lixid /etc/passwd
lixid:x:500:500:syahrizal yunus,linuxid,secret,secret:/home/lixid:/bin/bash
Chsh.
Command ini untuk merubah shell default user, defaultnya setiap user menggunakan “/bin/bash” dimisalkan ada shell lain seperti korn shell kita memilih shell yang digunakan user cengan perintah ini. Tapi kita tidak membahas korn shell disini.  Dalam contoh ini membuat user tidak memiliki akses login walaupun sudah mengisikan password yang benar.
setelah user ini diubah maka user lixid tidak dapat login baik melalui shell ataupun ssh.
GROUP MANAGEMENT
List command linux di “Tabel 1.2” adalah command yang digunakan untuk management Group.
  1. Tabel 1.2 Command management Group

    CommandFungsi
    groupaddMenambah group, tetapi tidak menentukan user  pada  group  tersebut
    groupdelUntuk menghapus group
    groupmodMemodifikasi nama group atau GID, tetapi tidak mengubah keanggotaan group.
    groupmemsMemodifikasi list member group
    gpasswdMengubah keanggotaan group dan melakukan setting password untuk mengijinkan anggota selain group tersebut.
    grpckMemriksa integritas file /etc/group/ dan/etc/gshadow
groupadd.groupadd untuk menambahkan group.  Ketika group di tambahkan group tersebut dalam kondisi kosong.
hasilnya nama group tercatat di file “/etc/group”
groupdel.
groupdel berfungsi untuk menghapus nama group.
groupmod.
groupmod berfungsi mengedit nama, GID(group id) dan password dari group.
groupmems.
groupmems berfungsi memodifikasi list member group seperti add atau menghapus anggota.  Sebagai contoh menambahkan user lixid ke group lixid_group.
gpasswd.
gpasswd berfusngi untuk mengelola /etc/group, dan/etc/gshadow.  Maksudnya disini mengatur mana dari anggota dari group yang berfungsi sebagai user dan admnistrator, setting password group dll.
grpck.
grpck memperifikasi apakah ada kesalahan di dalam file /etc/group atau di /etc/gshadow.  Dalam contoh kasus ini group “linix_group” memiliki duplikasi di /etc/group.
1
2
3
4
[root@lixid ~]# grpck /etc/group
duplicate group entry
delete line 'lixid_group:x:501:lixid'? yes
grpck: the files have been updated

Sumber :
https://linuxid.co/management-user-dan-group-linux/
http://cubnetwork.com/manajemen-user-dan-group-di-linux/