#!
/bin/bash
LOG_FILE="/var/log/qm.log"
KIRMIZI="\e[31m"
YESIL="\e[32m"
MAVI="\e[34m"
SARI="\e[33m"
BOLD="\e[1m"
RESET="\e[0m"
log() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" | sudo tee -a "$LOG_FILE" > /dev/null
}
install_if_missing() {
if ! command -v "$1" &> /dev/null; then
echo -e "${SARI}>>> $1 eksik, yükleniyor...${RESET}"
sudo apt install -y "$1"
fi
}
while true; do
clear
echo -e "${MAVI}${BOLD}"
echo "==========================================="
echo " ██████╗ ███╗ ███╗ "
echo " ██╔═══██╗████╗ ████║ "
echo " ██║ ██║██╔████╔██║ Q M v6.0 "
echo " ██║ ██║██║╚██╔╝██║ Sessiz Güç™ "
echo " ╚██████╔╝██║ ╚═╝ ██║ "
echo " ╚═════╝ ╚═╝ ╚═╝ "
echo "==========================================="
echo -e "${RESET}"
echo -e "${SARI}"
echo "1) Bakım Öncesi Güvence Al"
echo "2) Tam Sistem Bakımı"
echo "3) Sistem Güncellemesi"
echo "4) Depo Temizliği"
echo "5) Apache'yi Yeniden Başlat"
echo "6) Bluetooth Yeniden Başlat"
echo "7) NetworkManager Yeniden Başlat"
echo "8) Sistem Bilgilerini Göster"
echo "9) Komut Geçmişini Mousepad ile Aç"
echo "10) Ek Araçları ve Optimizasyonları Kur"
echo "0) Çıkış"
echo "==========================================="
echo -e "${RESET}"
read -p "Seçiminiz: " secim
case $secim in
1)
install_if_missing "timeshift"
BACKUP_DIR="$HOME/QM_YEDEK_$(date +%Y-%m-%d_%H-%M-%S)"
mkdir -p "$BACKUP_DIR"
log "Bakım öncesi yedek alınıyor..."
echo ">>> Paket listesi yedekleniyor..."
dpkg --get-selections > "$BACKUP_DIR/paket_listesi.txt"
echo ">>> Önemli yapılandırma dosyaları yedekleniyor..."
cp -r /etc/apt "$BACKUP_DIR/"
cp -r /etc/network "$BACKUP_DIR/"
cp -r /etc/systemd "$BACKUP_DIR/"
sudo timeshift --create --comments "QM Bakım Öncesi Yedek" --tags D
echo -e "${YESIL}>>> Yedekleme tamamlandı. Kayıt yeri: $BACKUP_DIR${RESET}"
;;
2)
log "Tam sistem bakımı başlatıldı."
sudo apt --fix-broken install -y
sudo dpkg --configure -a
sudo apt autoremove -y
sudo apt autoclean -y
echo -e "${YESIL}>>> Sistem bakımı tamamlandı.${RESET}"
;;
3)
log "Sistem güncellemesi başlatıldı."
sudo apt update && sudo apt upgrade -y
echo -e "${YESIL}>>> Güncelleme tamamlandı.${RESET}"
;;
4)
log "Depo temizliği yapılıyor..."
grep -r "deb " /etc/apt/ | grep -Ei "your-distributions-codename|stable|
testing|bullseye|buster|bookworm"
echo -e "${YESIL}>>> Depo kontrolü tamamlandı.${RESET}"
;;
5)
log "Apache restart başlatıldı."
sudo systemctl restart apache2
echo -e "${YESIL}>>> Apache yeniden başlatıldı.${RESET}"
;;
6)
log "Bluetooth restart başlatıldı."
sudo systemctl restart bluetooth
echo -e "${YESIL}>>> Bluetooth yeniden başlatıldı.${RESET}"
;;
7)
log "NetworkManager restart başlatıldı."
sudo systemctl restart NetworkManager
echo -e "${YESIL}>>> NetworkManager yeniden başlatıldı.${RESET}"
;;
8)
log "Sistem bilgileri görüntülendi."
echo -e "${YESIL}>>> İşletim Sistemi Bilgileri:${RESET}"
cat /etc/os-release
echo -e "\n${YESIL}>>> Çekirdek Versiyonu:${RESET} $(uname -r)"
echo -e "\n${YESIL}>>> Hostname ve Donanım Bilgileri:${RESET}"
hostnamectl
echo -e "\n${YESIL}>>> Mevcut Grafik Kartı:${RESET}"
install_if_missing "pciutils"
lspci | grep -Ei "vga|3d|display"
echo -e "\n${YESIL}>>> GPU Sürücü Bilgisi:${RESET}"
install_if_missing "mesa-utils"
glxinfo | grep "OpenGL renderer"
;;
9)
install_if_missing "mousepad"
log "Komut geçmişi Mousepad ile açıldı."
mousepad "$HOME/.bash_history" &
;;
10)
log "Ek araçlar kuruluyor..."
sudo apt install -y nmap metasploit-framework burpsuite wireshark john hydra
hashcat gobuster aircrack-ng xrdp openssh-server tigervnc-standalone-server remmina
adb scrcpy kdeconnect samba
sudo systemctl enable xrdp ssh
sudo systemctl start xrdp ssh
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
echo -e "${YESIL}>>> Ek araçlar kuruldu ve sistem optimize edildi.${RESET}"
;;
0)
log "Çıkış yapıldı."
echo -e "${YESIL}>>> Görüşürüz, QM kapatılıyor... 🚀${RESET}"
exit 0
;;
*)
echo -e "${KIRMIZI}>>> Geçersiz seçim!${RESET}"
;;
esac
read -p "Devam etmek için ENTER tuşuna basın..."
done