Aller au contenu

dphil

Membres
  • Compteur de contenus

    7
  • Inscription

  • Dernière visite

À propos de dphil

dphil's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. dphil

    Probl

    Le sujet du post a été corrigé. En effet cela ne pose pas vraiment un problème d'utiliser gnome-terminal comme émulateur terminal pour faire tourner le script d'install même dans le contexte d'une session KDE. Cependant, il propose d'autres émulateurs terminal et il corrige l'anomalie des variables $gnome et $kde qui sont toutes les 2 égale à 0 dans ce cas.
  2. dphil

    Probl

    Encore une fois, je ne pense pas que je sois hors sujet puisque cette section est dédiée à Nos remarques et suggestions qui seront directement transférés aux techniciens de Synology (Tous les commentaires et suggestions postés dans cette section seront directement transférés aux techniciens de Synology). Donc mon sujet de problème lors de l'exécution du fichier install sous Linux du CloudStation de Synolgy est ici à sa place dans cette section.
  3. dphil

    Probl

    Je ne pense pas. Il est vrai que j'aurai du précisé que cela concerné l'installation du CloudStation de Synology sous Linux
  4. Lors de l'exécution du fichier package_manager une erreur se produit, elle est due à la fonction get_distro_version(), cette fonction recherche le nom de la distribution et la méthode utilisée détecte la valeur Fedora dans le fichier os-release contenu dans le champ ID_LIKE. La fonction considére ma distribution Mageia 3 comme une distribution Fedora, la version 3 de Mageia étant inférieure à la version 17 de Fedora la fonction retourne 255 au lieu de 0. Pour corriger cette anomalie, j'ai réécri la fonction ainsi : get_distro_version() { DISTRO_ID=$(awk '/DISTRIB_ID=/' /etc/*-release | sed 's/DISTRIB_ID=//' | sed 's/"//g' ) DISTRO_VERSION=$(awk '/DISTRIB_RELEASE=/' /etc/*-release | sed 's/DISTRIB_RELEASE=//' | sed 's/[.]0/./') if [ -z "$DISTRO_ID" ]; then DISTRO_ID=$(awk '{print $1}' /etc/*-release) fi if [ -z "$DISTRO_VERSION" ]; then DISTRO_VERSION=$(awk '{print $3}' /etc/*-release) fi if [ "$DISTRO_ID" == "Ubuntu" ]; then DISTRO_VERSION=$(lsb_release -s -r | sed s/..*//g) if [ $? -ne 0 ]; then DISTRO_VERSION=0 return 255 fi if [ $DISTRO_VERSION -lt 10 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "Fedora" ]; then if [ -f /etc/os-release ]; then source /etc/os-release DISTRO_VERSION=${VERSION_ID} elif [ -f /etc/fedora-release ]; then DISTRO_VERSION=$(cat /etc/fedora-release | awk '{print $3}') else DISTRO_VERSION=0 return 255 fi if [ $DISTRO_VERSION -lt 17 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "openSUSE" ]; then if [ $DISTRO_VERSION -eq 0 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "Mageia" ]; then if [ $DISTRO_VERSION -lt 3 ]; then return 255 fi return 0 else DISTRO_ID="Unsupport" DISTRO_VERSION=0 return 255 fi } Le code de cette fonction peut être surement encore amélioré et optimisé.
  5. Le fichier .install lance uniquement gnome-terminal (Les variables $gnome et $kde sont toutes les 2 égale à 0) quand je suis dans l'environnement de bureau KDE et si j'ai plusieurs environnements de bureau installés (par exemple Gnome et KDE). Une solution consiste a modifié le fichier install en remplacant le code suivant : type gnome-terminal >/dev/null 2>&1 gnome=$? type konsole >/dev/null 2>&1 kde=$? if [ $gnome -eq 0 ]; then gnome-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [ $kde -eq 0 ]; then konsole -e bash -c "cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash" else #echo "For desktop system not in Gnome or KDE, please run command " ./package_manager install CloudStation "" fi par le code suivant : if [[ `ps aux | grep -e "[g]nome-settings-daemon"` ]]; then # L'environnement de bureau est Gnome gnome-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[k]ded4" ` && ! `ps aux | grep -e "[g]nome-settings-daemon"` && ! `ps aux | grep -e "[l]xsession"` ]]; then # L'environnement de bureau est KDE konsole -e bash -c "cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[x]fsettingsd"` ]]; then # L'environnement de bureau est xfce4 xfce4-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[l]xsession"` ]]; then # L'environnement de bureau est LXDE lxterminal -e "bash -c 'cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash'" else # L'environnement de bureau inconnu #echo "For desktop system not in Gnome or KDE, please run command " ./package_manager install CloudStation "" echo "L'environnement de bureau inconnu, executer la commande " ./package_manager install CloudStation "" fi
  6. N'ayant aucun retour, j'ai fini par me lancer. Cela n'a pas été une réussite du premier coup, mais j'ai fini par réussir l'installation. Le CloudStation fonctionne sur mon PC avec une distribution Mageia 3 et les environnements de bureau suivants : KDE Gnome LXDE Xfce4 Je pense que l'installation doit être effectuer pour chaque utilisateur, ne pas faire l'installation en su ou en sudo comme je l'ai fais, sinon vous serez obligé comme moi de déplacer dans le 'home' de l'utilisateur ou des utilisateurs souhaités le raccourci bureau et le répertoire caché .CloudStation (et son contenu). Il faudra également faire un chown -R et un chgrp -R pour le répertoire caché et un chown et un chgrp pour le raccourci et le contenu de plusieurs fichiers (dont un masqué) devra être modifié pour indiqué les nouveaux chemins dans le répertoire .CloudStation. Autre problème rencontré : Avoir plusieurs environnements de bureau installés (par exemple Gnome e KDE), le fichier .install lance uniquement gnome-terminal (Les variables gnome et kde sont toutes les 2 égale à 0) quand je suis dans l'environnement de bureau KDE. Une solution consiste a modifié le fichier install en remplacant le code suivant : type gnome-terminal >/dev/null 2>&1 gnome=$? type konsole >/dev/null 2>&1 kde=$? if [ $gnome -eq 0 ]; then gnome-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [ $kde -eq 0 ]; then konsole -e bash -c "cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash" else #echo "For desktop system not in Gnome or KDE, please run command " ./package_manager install CloudStation "" fi par le code suivant : if [[ `ps aux | grep -e "[g]nome-settings-daemon"` ]]; then # L'environnement de bureau est Gnome gnome-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[k]ded4" ` && ! `ps aux | grep -e "[g]nome-settings-daemon"` && ! `ps aux | grep -e "[l]xsession"` ]]; then # L'environnement de bureau est KDE konsole -e bash -c "cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[x]fsettingsd"` ]]; then # L'environnement de bureau est xfce4 xfce4-terminal --execute bash -c ""${BASEDIR}/package_manager" install CloudStation ; bash" elif [[ `ps aux | grep -e "[l]xsession"` ]]; then # L'environnement de bureau est LXDE lxterminal -e "bash -c 'cd ${PWD} ; "${BASEDIR}/package_manager" install CloudStation ; bash'" else # L'environnement de bureau inconnu #echo "For desktop system not in Gnome or KDE, please run command " ./package_manager install CloudStation "" echo "L'environnement de bureau inconnu, executer la commande " ./package_manager install CloudStation "" fi Lors de l'exécution du fichier package_manager une erreur se produit, elle est du à la fonction get_distro_version(), cette fonction recherche le nom de la distribution et la méthode utilisée détecte la valeur Fedora dans le fichier os-release contenu dans le champ ID_LIKE. La fonction considére ma distribution Mageia 3 comme une distribution Fedora, la version 3 de Mageia étant inferieure à la version 17 de Fedora la fonction retourne 255 au lieu de 0. Pour corriger cette anomalie, j'ai réécri la fonction ainsi : get_distro_version() { DISTRO_ID=$(awk '/DISTRIB_ID=/' /etc/*-release | sed 's/DISTRIB_ID=//' | sed 's/"//g' ) DISTRO_VERSION=$(awk '/DISTRIB_RELEASE=/' /etc/*-release | sed 's/DISTRIB_RELEASE=//' | sed 's/[.]0/./') if [ -z "$DISTRO_ID" ]; then DISTRO_ID=$(awk '{print $1}' /etc/*-release) fi if [ -z "$DISTRO_VERSION" ]; then DISTRO_VERSION=$(awk '{print $3}' /etc/*-release) fi if [ "$DISTRO_ID" == "Ubuntu" ]; then DISTRO_VERSION=$(lsb_release -s -r | sed s/..*//g) if [ $? -ne 0 ]; then DISTRO_VERSION=0 return 255 fi if [ $DISTRO_VERSION -lt 10 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "Fedora" ]; then if [ -f /etc/os-release ]; then source /etc/os-release DISTRO_VERSION=${VERSION_ID} elif [ -f /etc/fedora-release ]; then DISTRO_VERSION=$(cat /etc/fedora-release | awk '{print $3}') else DISTRO_VERSION=0 return 255 fi if [ $DISTRO_VERSION -lt 17 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "openSUSE" ]; then if [ $DISTRO_VERSION -eq 0 ]; then return 255 fi return 0 elif [ "$DISTRO_ID" == "Mageia" ]; then if [ $DISTRO_VERSION -lt 3 ]; then return 255 fi return 0 else DISTRO_ID="Unsupport" DISTRO_VERSION=0 return 255 fi } Le code de cette fonction peut être surement encore amélioré et optimisé.
  7. Mon objectif étant d'installer le Cloud Station sur une distribution Mageia : Avez-vous un retour de d'expérience sur l'installation du Cloud Station sur un client linux autre qu'Ubuntu et Federa ? Existe-t-il des problèmes de compatibilité ?
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.