Skip to content

Instantly share code, notes, and snippets.

@Hillzacky
Created November 3, 2024 16:18
Show Gist options
  • Save Hillzacky/112a8e68db2eb1beb0423cdb67e20d9a to your computer and use it in GitHub Desktop.
Save Hillzacky/112a8e68db2eb1beb0423cdb67e20d9a to your computer and use it in GitHub Desktop.
Web service manager web from linux cli
#!/bin/bash
# Fungsi untuk menentukan metode manajemen layanan
get_service_manager() {
if command -v systemctl &> /dev/null; then
echo "systemctl"
elif command -v rc-service &> /dev/null; then
echo "rc-service"
else
echo "Metode manajemen layanan tidak ditemukan."
exit 1
fi
}
# Fungsi untuk memulai layanan
start_service() {
service_manager=$(get_service_manager)
if [[ $service_manager == "systemctl" ]]; then
systemctl start $1
elif [[ $service_manager == "rc-service" ]]; then
rc-service start $1
else
echo "Metode manajemen layanan tidak ditemukan."
exit 1
fi
echo "Layanan $1 berhasil dijalankan."
}
# Fungsi untuk menghentikan layanan
stop_service() {
service_manager=$(get_service_manager)
if [[ $service_manager == "systemctl" ]]; then
systemctl stop $1
elif [[ $service_manager == "rc-service" ]]; then
rc-service stop $1
else
echo "Metode manajemen layanan tidak ditemukan."
exit 1
fi
echo "Layanan $1 berhasil dihentikan."
}
# Fungsi untuk me-restart layanan
restart_service() {
service_manager=$(get_service_manager)
if [[ $service_manager == "systemctl" ]]; then
systemctl restart $1
elif [[ $service_manager == "rc-service" ]]; then
rc-service restart $1
else
echo "Metode manajemen layanan tidak ditemukan."
exit 1
fi
echo "Layanan $1 berhasil di-restart."
}
# Fungsi untuk memeriksa status layanan
status_service() {
service_manager=$(get_service_manager)
if [[ $service_manager == "systemctl" ]]; then
systemctl status $1
elif [[ $service_manager == "rc-service" ]]; then
rc-service status $1
else
echo "Metode manajemen layanan tidak ditemukan."
exit 1
fi
echo "Status layanan $1:"
}
# Menu utama
echo "Pilih layanan yang ingin Anda kelola:"
echo "1. Nginx"
echo "2. Apache2"
echo "3. MySQL"
echo "4. PostgreSQL"
echo "5. Redis"
echo "6. Keluar"
read choice
# Memproses pilihan pengguna
case $choice in
1)
service_name="nginx"
;;
2)
service_name="apache2"
;;
3)
service_name="mysql"
;;
4)
service_name="postgresql"
;;
5)
service_name="redis"
;;
6)
echo "Terima kasih!"
exit 0
;;
*)
echo "Pilihan tidak valid."
exit 1
;;
esac
# Menu layanan
echo "Pilih tindakan yang ingin dilakukan untuk layanan $service_name:"
echo "1. Mulai"
echo "2. Hentikan"
echo "3. Restart"
echo "4. Periksa status"
echo "5. Kembali ke menu utama"
read choice
# Memproses pilihan tindakan
case $choice in
1)
start_service $service_name
;;
2)
stop_service $service_name
;;
3)
restart_service $service_name
;;
4)
status_service $service_name
;;
5)
echo "Kembali ke menu utama."
exit 0
;;
*)
echo "Pilihan tidak valid."
exit 1
;;
esac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment