Cara menjadwalkan tugas menggunakan perintah at di linux

Cara menjadwalkan tugas menggunakan perintah at di linux

Mempelajari bagaimana jadwal dan kelola tugas menggunakan program AT

Persyaratan

  • Root Izin Untuk Memulai Daemon ATD
  • Memasang program AT

Kesulitan

MUDAH

Konvensi

  • # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root
    langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
  • $ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Perkenalan

Selama administrasi suatu sistem, mampu menjadwalkan tugas untuk eksekusi nanti, ini adalah satu kemampuan penting: untuk melakukan cadangan database misalnya, atau mungkin untuk menjalankan skrip pemeliharaan. Kurang dikenal dari cron atau Anacron, itu pada Program Mari kita lakukan ini dengan cara yang cukup mudah: dalam tutorial ini kita akan belajar bagaimana menggunakannya dan bagaimana perbedaannya dari program yang disebutkan di atas.

Apa yang ada?

Tidak seperti Cron, yang memungkinkan kami menjalankan tugas secara teratur, pada memberi kami kemampuan untuk menjalankan perintah atau skrip pada tanggal dan jam tertentu, atau setelah interval waktu tertentu. Menit, jam, berhari -hari atau minggu dapat digunakan sebagai unit. Bahkan mungkin untuk menggunakan "kata kunci" tertentu sebagai tengah malam atau Teatiime (yang sesuai dengan jam 4 sore).



Menginstal di

Jika tidak diinstal secara default, pada harus tersedia di hampir semua repositori distribusi.

Untuk menginstalnya di fedora, jalankan saja:

# DNF menginstal di

Di Rhel atau Centos Yum masih merupakan manajer paket default:

# yum instal di

Di Debian atau Ubuntu:

# instal apt-get at

Di Archlinux:

# PACMAN -S AT

Memulai daemon

Setelah program yang diinstal, kita harus memulai atd daemon dan akhirnya mengaktifkannya jika kita ingin diluncurkan secara otomatis saat boot. Di sini saya akan menganggap penggunaan SystemD sebagai sistem init. Perintah harus dieksekusi dengan hak istimewa root:

# Systemctl Enable - -NOW ATD.melayani

Menjadwalkan pekerjaan dari prompt AT

Dengan segala sesuatu di tempatnya, sekarang kita dapat menggunakan pada. Mari kita misalkan kita ingin menjalankan perintah 1 menit dari sekarang. Sintaks yang benar adalah:

$ sekarang + 1 menit

Untuk menjalankan perintah yang sama pada pukul 4 sore, tiga hari dari sekarang, sebaliknya, kami akan menjalankan:

$ jam 4 sore + 3 hari

Setelah baris di atas dieksekusi, pada Prompt akan muncul, menunggu kami memasukkan perintah untuk dieksekusi setelah interval waktu yang ditentukan:



$ sekarang + 1 menit di> echo "hello world"> tes.txt at> job 4 at sel 19 Des 11:29:00 2017 

Untuk keluar pada prompt kita harus menekan Ctrl+d Kombinasi kunci. Pada titik ini kami akan memberikan ringkasan tugas yang dijadwalkan, yang akan menunjukkan kepada kami ID Pekerjaan (4 dalam hal ini) dan tanggal di mana ia akan dieksekusi.

Sama seperti sebuah contoh, kami memasukkan perintah sepele untuk menunjukkan caranya pada Pekerjaan. Satu menit dari sekarang, string "Hello World" akan ditulis ke uji file.txt, yang akan dibuat secara otomatis jika belum ada.

Jadwalkan eksekusi skrip

Alih -alih menentukan perintah yang akan dieksekusi, secara interaktif, dari prompt, kami dapat menginstruksikan pada untuk menjalankan skrip atau program yang ada hanya dengan meneruskannya sebagai argumen ke -F bendera atau, sebagai alternatif, dengan menggunakan < operator pengalihan. Oleh karena itu, dengan asumsi kami ingin menjalankan skrip yang ada di direktori kerja kami saat ini, kami akan menjalankan:

# Menggunakan bendera -f khusus $ sekarang + 1 menit -f skrip.SH

# Menggunakan < redirection operator $ at now + 1 minute < script.sh

Mengelola pekerjaan yang dijadwalkan

Untuk mengantri, memeriksa atau menghapus pekerjaan yang dijadwalkan, kami dapat menggunakan perintah khusus seperti ATRM Dan atq atau lari pada Dengan bendera tertentu, yang terakhir hanya alias untuk yang pertama. Misalnya, katakanlah kami ingin mendapatkan daftar semua pekerjaan yang tertunda yang dijadwalkan oleh pengguna kami:

 $ atq 4 Sel 19 Des 11:29:00 2017 A EGDOC 

Perintah di atas, jika diluncurkan sebagai root, akan menampilkan tugas yang dijadwalkan oleh semua pengguna di sistem.

Untuk menghapus pekerjaan yang antri, kami bisa menggunakan ATRM atau lari pada dengan bendera yang setara: -R atau -D. Pekerjaan yang akan dihapus harus direferensikan dengan nomornya. Dalam kasus di atas, karena itu kami akan menjalankan:

 $ atrm 4

Kesimpulan

Meskipun lebih sederhana dari cron atau Anacron, itu pada Program dapat sangat berguna dalam situasi tertentu: untuk menjalankan program dengan penundaan tertentu atau ketika Anda tahu persis waktu di mana tugas harus dieksekusi. Referensi manual untuk informasi lebih lanjut, dan tambahkan alat kecil ini ke kotak alat Anda, itu pasti akan berguna.

Tutorial Linux Terkait:

  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Perintah Linux: 20 perintah terpenting teratas yang Anda butuhkan untuk…
  • Perintah Linux Dasar
  • SQLite Linux Tutorial untuk Pemula
  • Ubuntu 22.04 Sistem Pencadangan dan Pulihkan
  • Cara mencetak pohon direktori menggunakan linux
  • File Konfigurasi Linux: 30 Teratas Paling Penting
  • Can Linux mendapatkan virus? Menjelajahi kerentanan Linux…