#26 Le 29/12/2017, à 10:17
- michel_04
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
Bonjour,
Ouch! Bon ben je jetterai un œil.
A+
:D
De la bonne manière de poser les questions - Trouver de l'aide grâce au Groupe des Parrains Linux - Le Pacte des Gnous
PCs sous Debian Stable & Debian Sid.
Hors ligne
#27 Le 29/12/2017, à 11:17
- kholo
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
tu peux survoler,
je finirai par en faire un tuto complet avec le script terminé et la procédure d'installation
Hors ligne
#28 Le 29/12/2017, à 11:30
- Brunod
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
Salut,
Je n'ai pas tout lu si ce n'est en diagonale, mais je suis parti sur une autre solution: syncthing (paquet dispo).
Tout est centralisé sur un nas (physique) qui tourne 24/7 et chaque périphérique tourne syncthing, tout comme le nas, ce qui permet la mise à jour constante depuis n'importe où.
Tu es indépendant d'un cloud privatif externe, tes transferts sont sur le modèle des torrents en lan ou wan sans config spéciale si ce n'est une sortie vers le net, ré-utilisant les morceaux déjà disponibles sur chacun de tes périphériques. Je ne sais pas si ça t'avance...
Edit : il existe aussi résilio, mais ce dernier est privatif alors que l'autre est open source
Dernière modification par Brunod (Le 29/12/2017, à 11:32)
Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis
Hors ligne
#29 Le 29/12/2017, à 13:27
- kholo
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
salut,
pas de doute c'est la période de Noël
j'en fini avec sshfs et je regarde syncthing
... par contre pas dans les dépôts de 14.04 ni de 16.04...
un petit lien, des tutos ?!
edit : trouvé ! dans la doc ubuntu
pour te résumer Brunod,
c'est un vieux fil dans lequel j'accumule mon expérience en réseau (résal au singulier )
dans un autre fil, j'ai une fois encore déglingué Samba et expliqué ssh et sftp puis Michel04 en a remis une couche avec sshfs...
mais j'ai une mauvaise exp avec sshfs que, du coup, j'exorcise en composant un tuto d'installation et d'utilisation (dont les scripts d'utilisation) en partant de celui de Michel04 sur ce fil
mais j'ai hâte de regarder syncthing maintenant !!!!
Dernière modification par kholo (Le 29/12/2017, à 13:28)
Hors ligne
#30 Le 29/12/2017, à 15:18
- Brunod
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
salut,
...
mais j'ai hâte de regarder syncthing maintenant !!!!
C'était le but : te le faire connaître et voir si ça peut t'avancer vers ton objectif
Ça ne répondra peut-être pas à tes attentes, mais j'aime le concept
Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis
Hors ligne
#31 Le 29/12/2017, à 19:10
- kholo
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
donc, pour ce soir, et peut être la der de 2017...
mon étude en sshfs majeure et ma conclusion.
en ce qui concerne les conditions d'usage et d'installation de sshfs
pas plus convaincu par sshfs et encore moins maintenant que j'ai l'habitude de sftp
qui est mieux intégré au système (ou je suis passé à côté de qq chose...)
pour mon script
de la couleur, un menu, le but est de simplifier et rendre l'accès à sshfs plus simple...
il n'aime pas les espaces (mais c'est un peu généralisé en bash)
on peut mettre 10 partages (mettre les valeurs dans la conf et le menu)
j'ai ajouté une routine pour tenir un journal mais qui n'est pas utilisée pour le moment
c'est pas tout à fait 100% ligne de commande (il faut virer les zenity qui restent)
pour utiliser ou ajouter des fonctions "cachées", voir la fonction parserChoix
il faut mettre un mot de passe au montage ou utiliser des clés (pas user friendly)
NB : tout est dans le même fichier (script + data)
j'ai laisser traîner des lignes de tests (qui devraient toutes être commentées !)
#!/bin/bash
# ----------------------------------------------
nomlogiciel="${0##*/}"
FONCTION=""
VERSION="alpha"
# NOTES DE VERSIONS
# ----------------------------------------------
#
# ----------------------------------------------
echo "lancement $nomlogiciel..."
# echo "chargement ligne $LINENO"
# set -o xtrace
# ******************************************************************
# pour ouvrir un navigateur de fichier (debuggage)
# ******************************************************************
# nautilus "$PWD" ; exit 0
# ******************************************************************
# fixe la taille de la fenetre
# ******************************************************************
# /usr/bin/resize -s 31 130 > /dev/null
# reset > /dev/null
# ******************************************************************
# DECLARATION DES COULEURS
# ******************************************************************
# explications
# echo -e "\033[31mHello\033[00m"
# On écrit \033, on met un crochet ouvrant [,
# puis on met le code de la couleur choisie (ici, 31 signifie rouge)
# et on finit avec un m.
# On affiche notre texte,
# ici Hello, puis on remet la couleur à noir (\033[00m),
# sinon le reste sera écrit en rouge aussi. :)
#
# exemples complexes
# enNoir='\033[1;30;40m'
# enRouge='\033[1;31;40m'
# enVert='\033[0;32;40m'
# enJaune='\033[1;33;40m'
fdNoir='\033[40m'
fdRouge='\033[41m'
fdVert='\033[42m'
fdJaune='\033[43m'
fdBleu='\033[44m'
fdRose='\033[45m'
fdCyan='\033[46m'
fdGris='\033[47m'
# fdDefaut='\033[49m'
enNoir='\033[30m'
enRouge='\033[31m'
enVert='\033[32m'
enJaune='\033[33m'
enBleu='\033[34m'
enRose='\033[35m'
enCyan='\033[36m'
enGris='\033[37m'
# enDefaut='\033[39m'
enGras='\033[1m'
enSouligner='\033[4m'
enClignotant='\033[5m'
enSurligner='\033[7m'
encache='\033[8m'
enDefaut='\033[0m'
# ******************************************************************
# CONFIGURATIONS ICI
Reset_conf () {
dir_distant=""
dir_local=""
port=0
user_login=""
server1=""
server2=""
}
C1 () {
dir_distant="/media/data"
dir_local="/home/administrateur/douceboux"
port=22
user_login="val"
server1="salon"
server2="192.168.1.2"
}
C2 () {
dir_distant="/media/Stock_WD_Red_4To"
dir_local="/media/SERVER_Stock_WD_Red_4To"
port=22
user_login="michel"
server1="Michel-SERVER"
server2="aa.bb.cc.dd"
}
# prévu pour C1 à C10
#C3 () {
# dir_distant=""
# dir_local=""
# port=0
# user_login=""
# server1=""
# server2=""
# }
# ******************************************************************
# JOURNAL
# ******************************************************************
fichier_log="$nomlogiciel.log"
[ -f "$@" ] || > "$fichier_log";
journal () { echo -e "$@" >> "$fichier_log" ; }
journal "*******************initialisation*******************"
journal "$(date)\nchargement"
# ******************************************************************
# FONCTIONS POUR LA LISTE DE CHOIX
# ******************************************************************
pause () { echo 'Appuyer sur une touche pour contnuer...' ; read -s -n 1 ; }
on_clear_terminal () {
# echo -e "${enDefaut}"
reset > /dev/null
}
afficherMenu () {
echo -en "${enJaune}${enGras}
______________________________
lanceur Connexion sshfs.
Faire un choix dans :
______________________________
${enJaune} 1. ${enVert}Salon
${enJaune} 2. ${enVert}test pour Michel_4
${enJaune} 3. ${enVert}Ici pour ajouter un élément au menu
"
# ${enJaune} 4. ${enVert}
# ${enJaune} 5. ${enVert}
# ${enJaune} 6. ${enVert}
# ${enJaune} 7. ${enVert}
# ${enJaune} 8. ${enVert}
# ${enJaune} 9. ${enVert}
# ${enJaune}10. ${enVert}
echo -e "${enJaune}______________________________
${enRouge} q. ${enVert}Quitter
${enVert}______________________________\n"
echo -en "${enGris}Votre choix : "
}
parserChoix () {
case "$choix" in
0) Reset_conf ; pause ;;
[1-10]) C$choix ; connect_or_disconnect ; pause ;;
# 1) C$choix ; connect_or_disconnect ; pause ;;
# ...
t) msgbox "sshfs -p $port $user_login@$server1:$dir_distant $dir_local" ;;
T) msgbox "sshfs -p $port $user_login@$server2:$dir_distant $dir_local" ;;
v) msgbox $(voir) ; pause ;; # affiche la config de la dernière demande
q|Q) _quitter ;;
# ...
*) ;;
esac
}
_quitter () {
journal "_quitter"
# mettre ici tout ce qui sera nescessaire à la bonne fermeture
exit 0
}
msgbox () { zenity --info --text="$@" ; }
# ******************************************************************
# FONCTIONS
# METTRE TOUTES LES FONCTIONS ICI
# ******************************************************************
is_connect () { ping -c1 $1 | grep "1 received" ; } # is_connected = 0 / oui ; 1 / non
is_mount () { /bin/mount | grep -o "$1" ; } # is_mount = 0 / oui ; 1 / non
connect_to () { sshfs -p $port $user_login@$1:"$dir_distant" "$dir_local" ; }
aide () {
echo "script de montage et démontage sshfs
# etape 1
# installation sshfs sur le PC serveur
sudo apt install sshfs
# etape 2
# repérer le chemin du dossier distant sur le PC serveur
# etape 3
# récupérer les informations sur le PC serveur
hostname
ifconfig
# créer les dossiers locaux
sudo mkdir /media/nomDossier
# créer la configuration
MODELE DE FICHIER DE CONFIGURATION
# ----------------------------------------------
#
# montage/démontage répertoire Stock_WD_Red_4To (PC server) local ou distant
# dans répertoire /media/SERVER_Stock_WD_Red_4To (PC local)
#
# ----------------------------------------------"
cat << end
# commentaires acceptés sur lignes séparées
dir_distant="/media/Stock_WD_Red_4To"
dir_local="/media/SERVER_Stock_WD_Red_4To"
port=22
user_login="michel"
server1="Michel-SERVER"
server2="aa.bb.cc.dd"
end
echo "
# ----------------------------------------------
pour le lancer
$0 fichierDeConf"
}
# aide ; exit 0
voir () {
echo "
-----------------------------
dir_distant=$dir_distant
dir_local=$dir_local
port=$port
user_login=$user_login
server1=$server1
server2=$server2
-----------------------------"
}
# ----------------------------------------------
connect_or_disconnect () {
# LANCEMENT
if [[ $(is_mount "$dir_local") ]]
then fusermount -u "$dir_local"
elif [[ $(is_connect $server1) ]]
then connect_to $server1
elif [[ $(is_connect $server2 ) ]]
then connect_to $server2
fi
}
# ******************************************************************
# FONCTION PRINCIPALE
# ******************************************************************
_main () {
on_clear_terminal
afficherMenu
# saisie du choix
read -r choix
on_clear_terminal
parserChoix
_main
}
_main
exit 0
Hors ligne
#32 Le 29/12/2017, à 19:22
- michel_04
Re : La tête dans les nuages ou savoir bien enfoncer le Cloud (serveurs)
Re,
Je testerai mardi, l'année prochaine...
A+
:D
De la bonne manière de poser les questions - Trouver de l'aide grâce au Groupe des Parrains Linux - Le Pacte des Gnous
PCs sous Debian Stable & Debian Sid.
Hors ligne