Created
November 3, 2024 16:18
-
-
Save Hillzacky/112a8e68db2eb1beb0423cdb67e20d9a to your computer and use it in GitHub Desktop.
Web service manager web from linux cli
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/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