Cara Mengatur Auto Screenshot Setiap Hari di Xubuntu (ID)

Panduan langkah demi langkah untuk mengatur auto screenshot harian di Xubuntu.

Tags:
  • #Linux
  • #Automation
  • #Bash Script
Learning Path: Not Found | Category: Linux Tips

Table of Content

  1. Pendahuluan
  2. Persyaratan
  3. Script Bash: Penjelasan dan Cara Kerja
  4. Langkah-langkah Implementasi
  5. Tips dan Troubleshooting
  6. Kesimpulan

1. Pendahuluan

Mengambil screenshot otomatis setiap hari dapat membantu memantau aktivitas atau menyimpan tampilan penting dari layar. Artikel ini membahas langkah-langkah untuk mengatur auto screenshot di Xubuntu, menggunakan script bash yang berjalan otomatis setiap kali Anda login.


2. Persyaratan

Sebelum memulai, pastikan Anda memiliki:


3. Script Bash: Penjelasan dan Cara Kerja

Berikut adalah script bash untuk mengambil screenshot otomatis setiap 60 detik:

#!/bin/bash

# Direktori root untuk menyimpan screenshot
ROOT_DIR="/home/adb/Pictures/daily-screenshots"

# File lock untuk mencegah duplikasi
LOCK_FILE="/tmp/auto_screenshot.lock"

# Pastikan hanya satu instance berjalan
exec 200>"$LOCK_FILE"
flock -n 200 || exit 1

# Pastikan direktori root penyimpanan ada
mkdir -p "$ROOT_DIR"

# Variabel environment untuk tampilan grafis
export DISPLAY=:0
export XDG_RUNTIME_DIR=/run/user/$(id -u)

# Log file
LOG_FILE="/home/adb/Pictures/screenshot_log.txt"

# Hapus folder yang berusia lebih dari 7 hari (eksekusi hanya sekali saat login)
find "$ROOT_DIR" -mindepth 1 -maxdepth 1 -type d -mtime +7 -exec rm -rf {} \;

# Fungsi untuk menangani penghentian skrip
cleanup() {
  echo "Stopping auto_screenshot.sh" >> "$LOG_FILE"
  rm -f "$LOCK_FILE"  # Hapus file lock
  exit 0
}

# Tangkap sinyal penghentian (SIGTERM, SIGINT)
trap cleanup SIGTERM SIGINT

# Infinite loop untuk mengambil screenshot setiap 60 detik
while true; do
  # Tanggal untuk nama folder (format: DD MMM YYYY)
  DATE_FOLDER=$(date "+%d %b %Y")
  OUTPUT_DIR="$ROOT_DIR/$DATE_FOLDER"

  # Pastikan direktori tanggal penyimpanan ada
  mkdir -p "$OUTPUT_DIR"

  # Format nama file screenshot (contoh: 19 Jan 2025, 22:30.png)
  TIMESTAMP=$(date "+%d %b %Y, %H:%M")
  OUTPUT_FILE="$OUTPUT_DIR/$TIMESTAMP.png"
  
  # Ambil tangkapan layar
  xfce4-screenshooter -f -s "$OUTPUT_FILE" >> "$LOG_FILE" 2>&1
  
  # Tunggu 60 detik sebelum mengambil screenshot berikutnya
  sleep 60
done

Cara Kerja


4. Langkah-langkah Implementasi

1. Membuat Script Bash

Buka terminal dan buat file baru:

nano ~/Pictures/auto_screenshot.sh

Salin dan tempelkan script di atas ke dalam file tersebut.
Simpan file dengan CTRL + O, lalu keluar dengan CTRL + X.

2. Memberikan Izin Eksekusi

Agar script dapat dijalankan, ubah izinnya menjadi executable:

chmod +x ~/Pictures/auto_screenshot.sh

3. Menambahkan Script ke Autostart Session

Gunakan fitur autostart session di Xubuntu agar script berjalan otomatis setiap login:

  1. Buka Settings Manager di Xubuntu.

  2. Pilih Session and Startup > Tab Application Autostart.

  3. Klik tombol Add untuk menambahkan item baru.

  4. Isi form sebagai berikut:

    • Name: Auto Screenshot
    • Command: /home/adb/Pictures/auto_screenshot.sh
    • Description: Script untuk mengambil screenshot otomatis setiap 60 detik.
  5. Klik OK untuk menyimpan perubahan.


5. Tips dan Troubleshooting


6. Kesimpulan

Dengan script bash dan konfigurasi autostart session di Xubuntu, Anda dapat secara otomatis mengambil screenshot harian tanpa perlu campur tangan manual. Sistem ini sangat berguna untuk dokumentasi atau monitoring aktivitas komputer.

Semoga panduan ini bermanfaat! 🎉

Logo Adib

© 2025 Adib

GitHub