Ajouter Script/rclone_install.sh
This commit is contained in:
		
							
								
								
									
										69
									
								
								Script/rclone_install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								Script/rclone_install.sh
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,69 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Variables de configuration
 | 
				
			||||||
 | 
					RCLONE_CONFIG_DIR="${HOME}/.config/rclone"
 | 
				
			||||||
 | 
					RCLONE_CONFIG_FILE="${RCLONE_CONFIG_DIR}/rclone.conf"
 | 
				
			||||||
 | 
					REMOTE_NAME="monserveur"   # Nom de la remote
 | 
				
			||||||
 | 
					STORAGE_TYPE="sftp"        # Type de stockage distant, par exemple sftp, drive, s3, etc.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fonction d'installation de Rclone
 | 
				
			||||||
 | 
					install_rclone() {
 | 
				
			||||||
 | 
					  echo "Installation de Rclone..."
 | 
				
			||||||
 | 
					  if ! command -v rclone &> /dev/null; then
 | 
				
			||||||
 | 
					    curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
 | 
				
			||||||
 | 
					    unzip rclone-current-linux-amd64.zip
 | 
				
			||||||
 | 
					    cd rclone-*-linux-amd64
 | 
				
			||||||
 | 
					    sudo cp rclone /usr/local/bin/
 | 
				
			||||||
 | 
					    sudo chown root:root /usr/local/bin/rclone
 | 
				
			||||||
 | 
					    sudo chmod 755 /usr/local/bin/rclone
 | 
				
			||||||
 | 
					    cd ..
 | 
				
			||||||
 | 
					    rm -rf rclone-*-linux-amd64 rclone-current-linux-amd64.zip
 | 
				
			||||||
 | 
					    echo "Rclone installé avec succès."
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					    echo "Rclone est déjà installé."
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fonction pour configurer une nouvelle remote
 | 
				
			||||||
 | 
					configure_rclone_remote() {
 | 
				
			||||||
 | 
					  echo "Configuration de la remote Rclone..."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Crée le dossier de configuration s'il n'existe pas
 | 
				
			||||||
 | 
					  mkdir -p "$RCLONE_CONFIG_DIR"
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  # Lance l'assistant de configuration de Rclone
 | 
				
			||||||
 | 
					  rclone config create "$REMOTE_NAME" "$STORAGE_TYPE" \
 | 
				
			||||||
 | 
					  || {
 | 
				
			||||||
 | 
					    echo "La configuration automatique a échoué. Lancez 'rclone config' pour configurer manuellement."
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  echo "Configuration de la remote $REMOTE_NAME terminée."
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fonction pour tester la connexion avec la remote configurée
 | 
				
			||||||
 | 
					test_rclone_connection() {
 | 
				
			||||||
 | 
					  echo "Test de la connexion avec le remote $REMOTE_NAME..."
 | 
				
			||||||
 | 
					  if rclone ls "$REMOTE_NAME:/" &> /dev/null; then
 | 
				
			||||||
 | 
					    echo "Connexion réussie avec $REMOTE_NAME."
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					    echo "Échec de connexion avec $REMOTE_NAME. Vérifiez la configuration."
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Exécution du script
 | 
				
			||||||
 | 
					echo "Début de l'installation et de la configuration de Rclone..."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					install_rclone
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "Voulez-vous configurer une nouvelle remote pour Rclone ? (y/n)"
 | 
				
			||||||
 | 
					read -r configure_remote
 | 
				
			||||||
 | 
					if [[ "$configure_remote" =~ ^[Yy]$ ]]; then
 | 
				
			||||||
 | 
					  configure_rclone_remote
 | 
				
			||||||
 | 
					  test_rclone_connection
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  echo "Configuration de la remote annulée. Vous pouvez la configurer plus tard avec 'rclone config'."
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "Installation et configuration de Rclone terminées."
 | 
				
			||||||
		Reference in New Issue
	
	Block a user