Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

Je cherche à installer COPS, mais pas moyen...

A chaque fois, j'ai des erreurs.

J'ai essayé en passant par le package de SynoCommunity ou en l'installant manuellement, mais je connais pas trop linux.

Quelqu'un aurait une description pas à pas de comment procéder? J'ai essayer de chercher sur le net, mais pas moyen de trouver...

Merci d'avance!!

Posté(e)

Merci pour le tuto, mais je suis un peu perdu.

Je vais expliquer ce que j'ai fait et les erreurs que j'ai eu.

Pour commencer c'est écrit ici que COPS peut gérer plusieurs librairies, j'ai donc mis mes librairies dans volume1/cops/lus et volume1/cops/new

J'ai d'abord tenté l'installation en passant par SynoCommunity.
Lors de l'installation, il me demande le repertoire de Calibre, mais je n'ai pas installé Calibre sur mon NAS. Et je sais pas comment le faire. J'ai supposé qu'il fallait en fait mettre le repertoire des librairies, j'ai mis volume1/cops/. J'ai cette erreur :

kOSjry.jpg

J'ai donc essayé de l'installer manuellement en me servant de ce lien
J'ai activé WebStation.
Il faut changer open_base_dir, mais c'est pas tres clair. Est-ce qu'il faut mettre le chemin pour le dossier cops ou le dossier des librairies? J'ai mis le chemin pour les librairies.
J'ai télechargé la derniere version (1.0.0RC3), je l'ai décompressé dans un dossier cops dans le dossier web de mon NAS.
J'ai modifié le fichier config_local.php :
$config['calibre_directory'] = '/volume1/cops/lus/';
$config['cops_use_url_rewriting'] = "1";
Il me semble que j'ai bien fait ce qu'il fallait mais j'ai cette erreur :

Ttxrja.jpg

Voila où j'en suis, et la je sais plus trop quoi faire...

Posté(e)

J'ai eu le même message d'erreur, c'est dû au fait que tu n'aies pas copier ta bibliothèque Calibre (fichier metadata.db et tous les répertoires) depuis ton PC où est calibre vers le répertoire /volume1/cops/lus/ sur ton syno je pense

Posté(e)

As tu vérifié les droits de lecture au fichier db et aux répertoire, ainsi que de parcourir les répertoires avant (/volume1/cops et /volume1/cops/lus) ?

l'utilisateur qui doit pouvoir lire est le compte http (celui du serveur web)

Posté(e)

Oui c'était ça, un problème de droit !!!

Il se passe un truc bizarre.

Quand je crée le dossier partagé, j'attribue au groupe local http un accès en lecture et écriture. Quand je vérifie depuis windows les droits sur les dossiers et les fichiers il me dit bien que le groupe http à l'acès en lecture et écriture.

Mais après avoir installé et lancé COPS, si je vérifie les droits depuis DSM, plus aucun groupe n'a de droits sur le dossier. Si je regarde depuis Windows, les droits ont disparus aussi.

Si je remets depuis DSM les droits d'accès au dossier partagé, le dossier a bien les droits mais le fichier metada.db n'a pas les droits.

Bref, il y a un truc assez bizarre. Il a fallu que je réattribue les droits depuis Windows. Sinon impossible d'avoir accès au fichier pour COPS.

Peut-etre un bug? Mais je suis surpris que personne n'ait eu ce probleme...

Posté(e)

C'est l'utilisateur interne du NAS pour le serveur Web, et c'est avec cet utilisateur que les applications web comme COPS essaye de lire les fichiers sur ton NAS ;-)

J'ai eu le même problème que toi sur les droits du répertoire partagé et des fichiers, mais je ne me suis pas posé de questions pour ma part, j'ai fait un "chown http:users calibre" (mon répertoire partagé s'appelle calibre) et un "chmod 770 calibre" puis j'ai déposé mes fichiers depuis windows par le répertoire partagé.

Posté(e)

Je connais pas du tout linux. Je suis passé directement par windows pour les droits.

Par contre c'est quand même bizarre qu'en remettant les droits comme il faut sur dsm, le fichier metadata.db ne soit toujours pas "lisible" par COPS....

Enfin bon, ça marche, c'est ce qui compte. Maintenant il me reste à trouver comment voir les deux librairies parce que pour le moment j'en vois qu'une. Et trouver comment importer les librairies sur l'application de ma tablette....

Posté(e) (modifié)

Pour ce qui est d'importer la bibliothèque dans l'application de la tablette, c'est simple, il suffit de mettre l'url suivante dans ton appli :

http://<ip de ton syno>/cops/

Moi je me sers de Aldiko comme appli et ca se trouve dans le menu de gauche :

Autres catalogues > Mes catalogues > Nouveau catalogue (en haut a droite) > et mettre l'url dans URL ;-)

Pour ce qui est de gérer deux librairies sur ton syno, d'après ce que j'ai vu sur le site de COPS, il y a des modifications à apporter à la main dans certains fichiers :

1) copier le fichier /usr/local/cops/share/cops/config_local.php.example en /usr/local/cops/share/cops/config_local.php

2) modifier le contenu du fichier /usr/local/cops/share/cops/config_local.php pour la ligne suivantes:

$config['calibre_directory'] = './';

qui doit devenir (en partant du principe par exemple que ta premiere librairie se trouve dans "/volume1/cops/librairies1/" et l'autre dans "/volume1/cops/librairies2/") :

$config['calibre_directory'] = array ("Ma librairie 1" => "/volume1/cops/librairies1/", "Ma librairie 2" => "/volume1/cops/librairies2/");
Modifié par loli71
Posté(e) (modifié)

Pour l'import de la librairie, ca a l'air d'aller, il faudra que j'essaie de l'exterieur voir si ca marche.

Par contre pour gérer les deux librairies avec COPS, j'ai un problème.

J'ai modifier le fichier config_local.php dans le dossier /usr/local/cops/share/cops mais ca n'a eu aucun effet.

J'ai donc essayé en modifiant le fichier config_local.php dans le dossier web/cops (La ou est installé COPS) et la j'ai un message d'erreur. Il a l'air de bien prendre en compte les 2 librairies.

ZAw4Xw.jpg

Voila un copié-collé de mon fichier :

<?php
if (!isset($config))
$config = array();

/*
* The directory containing calibre's metadata.db file, with sub-directories
* containing all the formats.
* BEWARE : it has to end with a /
*/
$config['calibre_directory'] = array ("A lire" => "/volume1/cops/new/", "lus" => "/volume1/cops/lus/");

/*
* Catalog's title
*/
$config['cops_title_default'] = "Livres";

/*
* use URL rewriting for downloading of ebook in HTML catalog
* See README for more information
* 1 : enable
* 0 : disable
*/
$config['cops_use_url_rewriting'] = "0";
?>

Je précise, les droits d'accès sont bien attribués pour l'utilisateur http.

Modifié par StudioNeuneu
Posté(e)

Ta config a l'air bien .. tu as raison pour le fichier config_local.php, je me suis fait avoir par la façon bizarre dont le package est fait ... fichiers web en double ..

Enfin, vérifie une fois de plus les droits sur tous tes fichiers et répertoires, car je viens de faire le test de créer deux librairies dans mon COPS, et ca marche bien de mon côté

Posté(e) (modifié)

J'avance mais c'est pas encore ca...

Déjà j'avais fait une erreur au début sur le nom du dossier... J'ai corrigé.

Mais j'ai toujours un problème. Le message dit que la premiere librairie est ok, mais pas la deuxième... Si je supprime la deuxieme librairie du fichier config_local.php, j'ai pas de message d'erreur. J'arrive à une page ou il me demande de choisir la librairie, bien sur j'en ai qu'une, mais au moins ca marche. Si je supprime la premiere, et je laisse la deuxieme, la j'ai le message d'erreur. Le probleme doit donc venir de la deuxieme librairie. Mais je vois pas quoi... Les droits sont les memes pour les deux librairies...

J'ai tenté un truc...

J'ai supprimé le dossier partagé avec mes librairies. Et je suis reparti à zéro.

J'ai recrée le dossier (calibre), j'ai attribué les droits en passant par DSM (j'ai donné les droits en lecture/écriture aux groupes http et administrateur), et j'ai copié mes librairies dans le dossier.

Et quand je retourne sur COPS encore la deuxième librairie qui pose probleme. La je comprends pas. Ca ne devrait plus etre un probleme de droit je pense.

Modifié par StudioNeuneu
Posté(e)

Ca marche!!!

J'ai desinstallé COPS, je l'ai réinstallé, reconfiguré le fichier config_local.php et ça marche!!

Le problème ne devait pas venir des librairies parce que j'y ai pas touché.

J'ai peut-etre fait un truc qui fallait pas pendant mes tests, et du coup, j'ai peut-etre corrompu l'installation... Aucune idée.

Posté(e)

Oui grace à toi, merci!

Maintenant faut que j'arrive à y avoir accès de l'extérieur.

En local pas de problème, mais depuis l'extérieur, j'ai des problemes. Un problème de redirection de port je pense.

Faut que je m'occupe de ça maintenant que COPS fonctionne!!!

Posté(e)

Pour ce qui est de la redirection, il va falloir que tu redirige un port (de préférence pas le 80) externe vers le port interne 80.

Si tu choisies par exemple le port externe 9080 que tu rediriges vers le port interne 80 sur ton syno, tu devras utiliser l'url suivante dans ton appli :

http://<nom de domaine>:9080/cops/

Je te conseille de sécuriser un minimum l'accès à tes bibliothèques avec une authentification comme indiqué là :

http://lo-ol.fr/pluxml/index.php?article11/calibre-et-cops-pour-gerer-ses-ebooks

Et le mieux serait même d'y accéder depuis internet en https.

Posté(e) (modifié)

Pour la redirection, je galere....

J'arrive à le faire fonctionner en http, mais pas en https.

En http, j'ai redirigé le port externe 9080 vers le port 80. J'ai mis dans l'appli (j'utilise Marvin) l'url : http://<nomdedomaine>:9080/cops.

La, pas de probleme, ca fonctionne. En utilisant le nom de domaine, ou l'adresse IP externe. J'ai essayé en passant par mon téléphone en 3G. Tout à l'air ok.

Au passage, petite question, pourquoi ne pas rediriger le port externe 80 vers le port interne 80?

Le problème c'est en https. J'ai fait la meme chose, j'ai redirigé le port 8181 vers le port 443 (il me semble que pour le https c'est le port 443, c'est peut etre la ou je me trompe...)

J'ai mis l'url : https://<nomdedomaine>:8181/cops.

Et la, ça commence à chercher et j'arrive avec un message qui me dit in english : Oops, Cannot download feed. The service might not be available or you are not connected to the internet.

Petite précision, si je mets l'url dans un navigateur, je tombe bien sur la page de cops en https. Le problème n'a pas l'air de venir de la redirection.

Autre petite précision, j'ai un message qui apparait me disant que le certificat n'est pas sur bla bla bla. Petite ca qui pose probleme sur l'appli?

Donc la je coince...

Et je coince aussi pour l'authentification lol, mais chaque chose en son temps... D'abord le https...

Modifié par StudioNeuneu
Posté(e)

Au passage, petite question, pourquoi ne pas rediriger le port externe 80 vers le port interne 80?

Tout simplement parce que le port 80 ouvert sur internet sera est la cible privilégiée des petites pirates du web, c'est l'un des premiers ports scannés avec le FTP et le telnet... donc autant éviter d'utiliser le port 80 pour ne pas être trop dérangé ;-)

Le problème c'est en https. J'ai fait la meme chose, j'ai redirigé le port 8181 vers le port 443 (il me semble que pour le https c'est le port 443, c'est peut etre la ou je me trompe...)

Tu ne te trompes pas, c'est bien cela.

Autre petite précision, j'ai un message qui apparait me disant que le certificat n'est pas sur bla bla bla. Petite ca qui pose probleme sur l'appli?

Hum hum, effectivement, les certificats auto signés ne sont peut être pas vraiment bien géré par l'application sur la tablette ou le téléphone .... mais là, je coince aussi.

Et je coince aussi pour l'authentification lol, mais chaque chose en son temps... D'abord le https...

Pour mettre en place l'authentification, il faut que tu fasses les étapes suivantes :

1) créer un fichier /volume1/external_include/passwd_calibre qui contient le nom d'utilisateur et le mot de passe crypter généré par le site http://www.askapache.com/online-tools/htpasswd-generator/en ayant choisi "Encryption Algorithm = crypt" et "Authentication Scheme = Basic", ce qui donnera par exemple :

/volume1/external_include/passwd_calibre:

loli71:$47aPuh0n.ohg

Il faut ensuite créer le fichier /volume1/web/cops/.htaccess contenant ce qui suit :

AuthType Basic
AuthName "Acces securise"
Require valid-user
AuthUserFile /volume1/external_include/passwd_calibre

Bien évidemment, il faut que ces deux fichiers soient lisible (et pas d'ecriture) par le compte systeme http utilisé par le serveur web, le plus simple étant de modifier les droits en ssh sur le synology comme suit :

chown root:http /volume1/web/cops/.htaccess /volume1/external_include/passwd_calibre
chmod 640 /volume1/web/cops/.htaccess /volume1/external_include/passwd_calibre

Posté(e)

Pour le probleme du https je vais aller faire un tour du coté des forums de calibre, il y a peut etre un truc à faire pour que ca marche.

Sinon pour l'accès sécurisé, j'y arrive pas...

J'avais pas de dossier external_include, donc j'en ai crée un. J'ai crée un fichier passwd_calibre avec dedans juste cette ligne :

admin:$dUtAc4iKtpEs

Donc si j'ai bien compris, le nom d'utilisateur c'est admin et le mot de passe c'est $dUtAc4iKtpEs ??

Le fichier .htaccess existait deja dans le dossier cops. Les lignes qu'il faut rajouter y étaient aussi, il y avait juste un # devant. J'ai viré les #, j'ai modifié le chemin d'accès vers passwd_calibre.

J'ai modifié les droits en passant par ssh, pas de message d'erreur, donc je suppose que c'est bon...

Et quand j'essaie d'accéder à mes librairies, j'ai une fenetre qui me demande un nom d'utilisateur et un mot de passe. Mais quand je les mets et que je tape entrée, ca me dit que la page est introuvable..

C'est le premier paquet un peu exotique que j'installe sur mon NAS, mais si à chaque fois j'ai autant de galère, je crois que je vais laisser tomber lol

Posté(e)
Sinon pour l'accès sécurisé, j'y arrive pas...

J'avais pas de dossier external_include, donc j'en ai crée un. J'ai crée un fichier passwd_calibre avec dedans juste cette ligne :

admin:$dUtAc4iKtpEs

Donc si j'ai bien compris, le nom d'utilisateur c'est admin et le mot de passe c'est $dUtAc4iKtpEs ??

Non lol, le mot de passe "$dUtAc4iKtpEs" est sous sa forme cryptée dans le fichier, c'est avec le site web http://www.askapache...sswd-generator/ que tu peux générer un mot de passe de ton choix et récupérer la forme cryptée pour la mettre dans le fichier passwd_calibre

Après pour ce qui est du répertoire external_include ce n'est qu'un exemple, tu peux mettre ce fichier ou tu veux, mais de préférence en dehors du répertoire du site web de COPS

Posté(e)

Ah ah ah, je comprends mieux mon erreur.... Pas doué...

Bon, erreur corrigée... Mais le problème n'était pas QUE la...

Le dossier external_include n'était pas au bon endroit... Je pensais que volume1 correspondait à la racine du NAS, j'avais donc crée le dossier à la racine...

Je l'ai remis la ou il faut et tout roule !! Y compris sur ma tablette !!

C'est cool en fait, meme si je galère, je commence à apprendre comment fonctionne Linux.

Plus qu'à voir le problème du https et ça sera parfait.

PS : Est-ce qu'il existe une application sur le NAS qui permette de faire la meme chose qu'en ssh mais d'une manière un peu plus graphique?

Posté(e)

Pour l'édition des fichiers, il y a "Editeur de texte" disponible directement dans DSM 5

Pour les autorisations sur les fichiers .. je suis un peu perdu avec le DSM 5.1 que je viens d'installer .. car j'ai du mal a comprendre la gestion des droits d'accès gérés dans filestation et qui n'apparaissent pas en ssh, du style ls -lsa qui donne celui :

nas3> ls -lsad web
8 d--------- 5 root root 4096 2015-02-27 18:20 web

aucun droit "linux" standard positionné sur le répertoire /volume1/web ... j'y perds un peu mon latin je dois avouer

Posté(e)

Le probleme de l'éditeur de texte, c'est qu'il n'a pas l'air de donner accès à tous les fichiers. Il n'a apparemment accès qu'aux dossiers partagés. Pareil avec FileStation

Il n'y a pas moyen d'avoir accès à tous les fichiers du NAS en passant directement par DSM, sans avoir besoin d'une console ssh?

Pour le truc des droits, pareil pour moi, le ls -lsad web me retourne la meme chose, apparemment aucun droit sur le dossier...

Sinon le -lsad sert à quoi?

Posté(e)

les paramètres "-lsad" permettent cela :

-a     Afficher tous les fichiers des répertoires, y  com­
              pris les fichiers commençant par un `.'.
-d, --directory
              Afficher  les répertoires avec la même présentation
              que les fichiers, sans lister leur contenu.
-l, --format=long, --format=verbose
              En plus du nom, afficher le type  du  fichier,  les
              permissions  d'accès, le nombre de liens physiques,
              le nom du propriétaire et du groupe, la  taille  en
              octets,  et  l'horodatage (de la dernière modifica­
              tion, sauf si une autre date est  réclamée).   Pour
              les  fichiers vieux de plus de 6 mois, ou en avance
              sur la date de plus d'une heure, l'horodatage  con­
              tient l'année à la place de l'heure.
-s, --size
              Afficher  la  taille  de chaque fichier, mesurée en
              bloc de 1 Ko, à  gauche  du  nom.  Si  la  variable
              d'environnement  POSIXLY_CORRECT est configurée, la
              taille est mesurée en blocs de 512 octets.

Sinon pour éditer les fichiers textes quel qu'ils soient ... il existe bien un package en perl, mais je te le déconseille car j'ai constaté qu'il tronquait les fichiers trop long et n'enregistrait qu'une partie ... j'ai déjà perdu une partie de ma conf php.ini à cause de lui :-(

Donc mise à part le ssh, il existe un autre moyen, utiliser winscp pour accéder à tous tes fichiers sur ton syno, et avoir un éditeur de texte digne de ce nom sur ton PC. Pour ma part, j'utilise Notepad++ :

winscp: http://winscp.net/eng/download.php

Notepad++ : http://notepad-plus-plus.org/fr/download/v6.7.4.html

Je te prépare un petit message perso pour t'indiquer comment faire pour winscp et notepad ;-)

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • 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.