Journal de montée de version Nuxeo
Journal des actions effectuées pour monter de la version 7.1 vers la version LTS 2015 (7.10)
1. Sauvegarde du répertoire /var/lib/nuxeo contenant l'ensemble des données du serveur nuexo :
tar -cvf /backups/NOMDELASAUVEGARDE.tar /var/lib/nuxeo/
2. Sauvegarde de la base postgresql de nuxeo
su postgres pg_dump -p 5433 -f /backups/bdd/NOMDELASAUVEGARDE.dump nuxeo
3. Copier le fichier de configuration de Nuxeo
cp /etc/nuxeo/nuxeo.conf /backups/
4. Modifier le fichier des sources de paquets nuxeo et l'adapter
vi /etc/apt/sources.list.d/nuxeo.list
Entrer la ligne :
deb http://apt.nuxeo.org/ wheezy releases
A adapter en fonction de la version de debian utilisée
Lancer l'installation :
apt-get install nuxeo
Note : Ici l'installation échoue car Java est en version 1.7 et nuxeo demande la 1.8
Je suis le tuto suivant pour réaliser l'installation http://www.jbnet.fr/systeme/linux/installer-oracle-java-8-sous-debian-7-wheezy.html
Téléchargez la version JDK sur le site d’Oracle.
Lancez une console et connectez-vous avec root
Créez un répertoire “/opt/java-oracle”
command mkdir /opt/java-oracle
Décompressez le fichier dans ce répertoire :
command tar xvfz jdk-8u65-linux-x64.tar.gz -C /opt/java-oracle
Un répertoire jdk1.8.0_65 est créé dans le répertoire /opt/java-oracle
Il faut ensuite déclarer cette version comme étant disponible pour les logiciels qui utilisent Java ( comme NetBeans par exemple.).
D’abord, listez les versions déjà installées :
command update-alternatives --display java
Résultat (ou quelque chose d’approchant) :
java - mode manuel le lien pointe actuellement sur /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java - priorité 1061 lien secondaire java.1.gz : /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priorité 1051 lien secondaire java.1.gz : /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz La « meilleure » version actuelle est « /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java ».
Remarquez que la version 6 possède une priorité plus haute que la version 7.
Donc prioritaire sur la 7. On va garder cet ordre.
Remarquez également que c’est la version 7 qui est utilisée. (Voir la ligne “le lien pointe actuellement sur”).
Ajoutez la version d’Oracle à la liste :
command update-alternatives --install /usr/bin/java java /opt/java-oracle/jdk1.8.0_11/bin/java 1041 command update-alternatives --install /usr/bin/javac javac /opt/java-oracle/jdk1.8.0_11/bin/javac 1041
On vérifie que la version est bien disponible :
command update-alternatives --display java
java - mode manuel le lien pointe actuellement sur /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java /opt/java-oracle/jdk1.8.0_11/bin/java - priorité 1041 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java - priorité 1061 lien secondaire java.1.gz : /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priorité 1051 lien secondaire java.1.gz : /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz La « meilleure » version actuelle est « /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java ».
Si on veut forcer le système à utiliser par défaut la version Oracle :
command update-alternatives --set java /opt/java-oracle/jdk1.8.0_11/bin/java command update-alternatives --set javac /opt/java-oracle/jdk1.8.0_11/bin/javac
Résultat :
command update-alternatives --display java
java - mode manuel le lien pointe actuellement sur /opt/java-oracle/jdk1.8.0_11/bin/java /opt/java-oracle/jdk1.8.0_11/bin/java - priorité 1041 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java - priorité 1061 lien secondaire java.1.gz : /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priorité 1051 lien secondaire java.1.gz : /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz La « meilleure » version actuelle est « /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java ».
C’est la version Java Oracle qui est utilisée par défaut.
Pour le vérifier facilement :
command java -version
Résultat :
java version "1.8.0_11" Java(TM) SE Runtime Environment (build 1.8.0_11-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)
Je relance l'installation qui a précédemment échouée :
apt-get install nuxeo
Voici la sortie :
Do you want to continue [Y/n]? Y Setting up nuxeo (7.10-01) ... * Trying to reinstall previously installed packages Detected Tomcat server. Nuxeo home: /var/lib/nuxeo/server Nuxeo configuration: /etc/nuxeo/nuxeo.conf Include template: /var/lib/nuxeo/server/templates/common-base Include template: /var/lib/nuxeo/server/templates/common Include template: /var/lib/nuxeo/server/templates/postgresql Unable to install package: nuxeo-7.1-SU01 Unable to install package: nuxeo-opensocial Unable to install package: nuxeo-sites-blogs Dependency resolution: Installation order (9): nuxeo-dam-6.1.4/nuxeo-diff-1.6.5/nuxeo-drive-1.5.4/nuxeo-imap-connector-1.1.4/nuxeo-multi-tenant-1.5.3/nuxeo-spreadsheet-1.1.4/nuxeo-template-rendering- 6.5.4/nuxeo-virtualnavigation-1.1.4/nuxeo-web-mobile-1.7.4 Packages to download (1): nuxeo-multi-tenant:1.5.3 Local packages to install (8): nuxeo-virtualnavigation:1.1.4, nuxeo-dam:6.1.4, nuxeo-imap-connector:1.1.4, nuxeo-spreadsheet:1.1.4, nuxeo-drive:1.5.4, nuxeo-diff:1.6.5, nuxeo-template- rendering:6.5.4, nuxeo-web-mobile:1.7.4 Downloading [nuxeo-multi-tenant-1.5.3]... Aborting packages change request Failed commands: * download (nuxeo-multi-tenant-1.5.3) Download failed: Registration required (401). dpkg: error processing nuxeo (--configure): subprocess installed post-installation script returned error exit status 1 Errors were encountered while processing: nuxeo E: Sub-process /usr/bin/dpkg returned an error code (1)
Apparemment l'installeur cherche à remettre les packages présents dans l'ancienne installation de nuxeo
Le seul moyen trouvé comme parade, forcer dpkg à supprimer l'ancienne installation de Nuxeo
dpkg -P nuxeo
Cela aura pour effet de supprimer la base de données et les paramétrages de la solution.
Je décompresse donc le backup effectué au préalable pour restaurer le dossier /var/lib/nuxeo/data/ et remonte la sauvegarde de base de données :
su postgres psql -p 5433 nuxeo < 22122015.dump
En sortie, je reçois énormément d'erreurs et dois vider la base avant de remonter le backup
Je me connecte en utilisateur nuxeo :
su nuxeo
Je me connecte à la base :
psql -p 5433 nuxeo
Je lance une commande de suppression sur l'ensemble des tables de la base nuxeo :
DROP TABLE "aceinfo", "aclr", "aclr_modified", "aclr_permission", "aclr_user", "aclr_user_map", "acls", "advanced_search", "ancestors", "audio", "auth_tokens", "bas_eventcategories", "bas_eventids", "bas_principalnames", "basicauditsearch", "blog", "blogpost", "button", "collection_documentids", "collectionmember_collectionids", "comment", "common", "component", "conditional_step_folder", "conditional_task_step", "content", "content_roots", "content_view_display", "contextuallink", "continent", "conversion", "country", "customer_reference", "cvd_selectedlayoutcolumns", "dc_contributors", "dc_subjects", "default_search", "defaults_common_size_agg", "defaults_dc_coverage", "defaults_dc_coverage_agg", "defaults_dc_created_agg", "defaults_dc_creator", "defaults_dc_creator_agg", "defaults_dc_modified_agg", "defaults_dc_nature", "defaults_dc_nature_agg", "defaults_dc_subjects", "defaults_dc_subjects_agg", "defaults_ecm_collections", "defaults_ecm_path", "defaults_ecm_tags", "digestauth", "directory_configuration", "docri_participatingdocuments", "document_route_instance", "documentsLists", "documenttemplate", "domain", "dublincore", "ecp-note-type", "escalation_rule", "eventCategories", "eventTypes", "externalGadgets", "file", "fulltext", "gadget", "groups", "hierarchy", "hierarchy_read_acl", "image_metadata", "imageinfo", "info", "info_comments", "interventionstatement", "iptc", "jena_g1t0_reif", "jena_g1t1_stmt", "jena_graph", "jena_long_lit", "jena_long_uri", "jena_prefix", "jena_sys_stmt", "keyvalue", "l10ncoverage", "l10nsubjects", "language", "locale", "locks", "mail", "mail_cc_recipients", "mail_recipients", "misc", "moderators", "nature", "note", "notificationentry", "nt_actors", "nt_delegatedactors", "nt_targetdocumentsids", "nxp_logs", "nxp_logs_extinfo", "nxp_logs_mapextinfos", "nxp_uidseq", "nxtplsamplescontainer", "nxtrportfolio", "nxtrproject", "nxtrproject_involved_peopletype", "oauth2Clients", "oauth2ServiceProviders", "oauth2Tokens", "oauthConsumers", "oauthServiceProviders", "oauthTokens", "pathpoint", "permissions_search", "pictemplate", "picture", "picturebook", "post", "property", "protocol", "proxies", "publish_sections", "querynav", "registration", "registrationconfiguration", "rel_srch_ecm_path", "relatedtextresource", "relation", "relation_inverse_predicates", "relation_predicates", "relation_search", "rendition", "repositories", "rnode_taskassignees", "route_node", "rs_ace_creator", "rs_ace_permission", "rs_ace_username", "rs_ecm_ancestorids", "search_coverage", "search_currentlifecyclestates", "search_nature", "search_operators", "search_searchpath", "search_subjects", "searchc_allowedcontentviews", "simpleconfigurationparameter", "sortinfotype", "space", "status", "step_folder", "storyboarditem", "streamitem", "studio_vocabulary_Industry", "studio_vocabulary_WorkflowType", "studio_vocabulary_nxtrIndustry", "subject", "subscribers", "subscriptionitem", "subtopic", "tag", "task", "task_info", "task_step", "task_variable", "taskcomment", "template", "tenantconfig", "tenantconfig_administrators", "tenants", "theme_configuration", "thread", "tkst_actors", "tkst_comments", "tmpl_applicabletypes", "tmpl_forcedtypes", "topic", "transcodedvideoitem", "transition", "typetocv", "ui_types_configuration", "uid", "uitypesconf_allowedtypes", "uitypesconf_deniedtypes", "user2group", "user_open_tasks_cv", "userinfo", "userinfo_groups", "userprofile", "users", "usersubscription", "var_global_task2169", "var_global_task2556", "var_global_task2556_participants", "var_global_task328d", "var_global_task38e", "var_global_task38e_participants", "var_global_task6d8", "var_global_task6d8_participants", "var_paralleldocumentreview", "var_paralleldocumentreview_participants", "var_serialdocumentreview", "var_serialdocumentreview_participants", "var_task2169", "var_task2169_assignees", "var_task2556", "var_task2556_assignees", "var_task328d", "var_task328d_assignees", "var_task38e", "var_task6d8", "versions", "view", "wchtml", "wcopensocial", "webcontainer", "webcontent", "webpage", "yuilayout", "yuiunit";
Je remonte ensuite le backup de base de donnée :
psql -p 5433 nuxeo < /backups/bdd/22122015.dump