Linux'ta Uç Nokta için Microsoft Defender için güvenlik bilgileri güncelleştirmeleri zamanlama

Linux'da Uç Nokta için Microsoft Defender güncelleştirmesini çalıştırmak için bkz. Linux'da Uç Nokta için Microsoft Defender güncelleştirmelerini dağıtma.

Linux ve Unix'in zamanlanmış görevleri çalıştırabilmesi için crontab (Görev Zamanlayıcı'ya benzer) adlı bir aracı vardır.

Prerequisites

Not

Tüm saat dilimlerinin listesini almak için aşağıdaki komutu çalıştırın: timedatectl list-timezones

Saat dilimleri için örnekler:

  • America/Los_Angeles
  • America/New_York
  • America/Chicago
  • America/Denver

Cron işini ayarlama

Aşağıdaki komutları kullanın:

Crontab girdilerini yedekleme

Değişiklik yapmadan önce geçerli crontab girdilerini yedeklemek için aşağıdaki komutu kullanın:

sudo crontab -l > /var/tmp/cron_backup_201118.dat

Not

Örneğimizde, 201118 == YYMMDD.

İpucu

Crontab girdilerinizi düzenlemeden veya kaldırmadan önce yedekleyin.

Kök kullanıcının crontab'ını düzenlemek ve yeni bir iş eklemek için:

sudo crontab -e

Not

Varsayılan düzenleyici VIM'dir.

Şunu görebilirsiniz:

0 * * * * /etc/opt/microsoft/mdatp/logrorate.sh

Ve

0 2 * * sat /bin/mdatp scan quick>~/mdatp_cron_job.log

Zamanlanmış virüsten koruma tarama işi oluşturma yönergeleri için bkz. Uç Nokta için Microsoft Defender (Linux) ile tarama zamanlama.

"Ekle" tuşuna basın

Aşağıdaki girdileri ekleyin. CRON_TZ Zamanlanmış cron işlerinin hedeflenen saat diliminde çalıştığından emin olmak için ayarını kullanın:

CRON_TZ=America/Los_Angeles

#! RHEL ve varyantları (CentOS ve Oracle Linux)

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo yum update mdatp -y >> ~/mdatp_cron_job.log

#! SLES ve çeşitlemeler

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo zypper update mdatp >> ~/mdatp_cron_job.log

#! Ubuntu ve Debian sistemleri

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo apt-get install --only-upgrade mdatp >> ~/mdatp_cron_job.log

Not

RHEL, SLES, Ubuntu ve Debian cron girişlerinde 0 6 * * sun 00 dakika, 06:00 (24 saatlik biçimi kullanan saat), ayın herhangi bir günü, herhangi bir ay, Pazar günleri belirtir. [$(date +\%d) -le 15] 15. güne (üçüncü hafta) eşit veya daha az değilse çalışmaz. Tam cron girişi, işin her Pazar 06:00'da çalıştığı anlamına gelir, ancak yalnızca ayın günü 15 veya daha erkense çalışır.

"Esc" tuşuna basın

Çift tırnak işaretleri olmadan ":wq" yazın.

Not

w == yaz, q == çık

Cron işlerinizi görüntülemek için sudo crontab -l

Linux uç nokta için Defender'a güncelleştirme.

Defender ilgili cron işlerinin çalıştığını doğrulamak için, cron günlüğünde girdileri arayınmdatp:

sudo grep mdatp /var/log/cron

Günlük dosyasını açmak ve zamanlanmış Defender güncelleştirme görevlerinin çıktısını gözden geçirmek için:

sudo nano mdatp_cron_job.log

Ansible, Chef veya Puppet ile zamanlanmış güncelleştirmeleri yapılandırma

Aşağıdaki komutları kullanın:

Ansible'da cron işleri ayarlamak için

Cron işlerini yönetmek için Ansible'ın cron modülünü kullanın:

cron - Manage cron.d and crontab entries

Daha fazla bilgi için bkz https://docs.ansible.com/ansible/latest .

Chef'te crontab'ları ayarlamak için

Cron işlerini yönetmek için Chef'in cron kaynağını kullanın:

cron resource

Daha fazla bilgi için bkz https://docs.chef.io/resources/cron/ .

Puppet'da cron işleri ayarlamak için

Kaynak Türü: cron

Daha fazla bilgi için bkz https://puppet.com/docs/puppet/5.5/types/cron.html .

Puppet ile otomatikleştirme: Cron görevleri ve zamanlanmış görevler

Daha fazla bilgi için bkz https://puppet.com/blog/automating-puppet-cron-jobs-and-scheduled-tasks/ .

Yaygın crontab komutları ve örnekleri

Aşağıdaki komutlar, cron girdilerini listeleme, yedekleme, düzenleme ve kaldırma gibi yaygın crontab görevlerini kapsar.

Crontab ile ilgili yardım almak için

Crontab el ile sayfasını görüntülemek için aşağıdaki komutu çalıştırın:

man crontab

Geçerli kullanıcının crontab dosyasının listesini almak için

Geçerli kullanıcının crontab girdilerini listelemek için aşağıdaki komutu çalıştırın:

crontab -l

Başka bir kullanıcının crontab dosyasının listesini almak için

Başka bir kullanıcının crontab girdilerini listelemek için aşağıdaki komutu çalıştırın:

crontab -u username -l

Crontab girdilerini yedeklemek için

Geçerli crontab girdilerini yedeklemek için aşağıdaki komutu kullanın:

crontab -l > /var/tmp/cron_backup.dat

İpucu

Düzenlemeden veya kaldırmadan önce bunu yapın.

Crontab girdilerini geri yüklemek için

Bir yedekleme dosyasından crontab girdilerini geri yüklemek için aşağıdaki komutu çalıştırın:

crontab /var/tmp/cron_backup.dat

Crontab'ı düzenlemek ve kök kullanıcı olarak yeni bir iş eklemek için

Kök kullanıcının crontab'ını düzenlemek ve yeni bir iş eklemek için aşağıdaki komutu kullanın:

sudo crontab -e

Crontab'ı düzenlemek ve yeni bir iş eklemek için

Geçerli kullanıcının crontab'ını düzenlemek ve yeni bir iş eklemek için aşağıdaki komutu çalıştırın:

crontab -e

Diğer kullanıcının crontab girdilerini düzenlemek için

Başka bir kullanıcının crontab girdilerini düzenlemek için aşağıdaki komutu çalıştırın:

crontab -u username -e

Tüm crontab girdilerini kaldırmak için

Warning

Bu komut, onay istemeden geçerli kullanıcının tüm crontab girdilerini kaldırır. Geri yüklemeniz gerekirse, önce crontab’ınızı crontab -l > /var/tmp/cron_backup.dat komutuyla yedekleyin.

Geçerli kullanıcının tüm crontab girdilerini kaldırmak için aşağıdaki komutu kullanın:

crontab -r

Diğer kullanıcının crontab girdilerini kaldırmak için

Warning

Bu komut, onay istemeden belirtilen kullanıcının tüm crontab girdilerini kalıcı olarak kaldırır. Bu komutu çalıştırmadan önce kullanıcının crontab değerini yedekleyin.

Kullanıcının crontab girdilerini silerek belirli bir kullanıcının tüm zamanlanmış görevlerini kaldırmak için aşağıdaki komutu kullanın:

crontab -u username -r

Cron ifadesi alan referansı

Aşağıdaki diyagramda, bir cron ifadesindeki alanlar açıklanmaktadır:

+—————- dakika (değerler: 0 - 59) (özel karakterler: , - * /) 
| +————- saat (değerler: 0 - 23) (özel karakterler: , - * /)
| | +———- ayın günü (değerler: 1 - 31) (özel karakterler: , - * / L W C)
| | | +——- ay (değerler: 1 - 12) (özel karakterler: ,- * / )
| | | | +—- haftanın günü (değerler: 0 - 6) (Pazar=0 veya 7) (özel karakterler: , - * / L W C)
| | | | |*****command to be executed