{"id":1618,"date":"2016-04-13T11:14:31","date_gmt":"2016-04-13T09:14:31","guid":{"rendered":"https:\/\/blog.kodono.info\/wordpress\/?p=1618"},"modified":"2016-11-05T17:51:52","modified_gmt":"2016-11-05T16:51:52","slug":"mise-a-jour-dun-serveur-kimsufi-ovh-depuis-debian-7-10-wheezy-vers-debian-8-jessie-linux","status":"publish","type":"post","link":"https:\/\/blog.kodono.info\/wordpress\/2016\/04\/13\/mise-a-jour-dun-serveur-kimsufi-ovh-depuis-debian-7-10-wheezy-vers-debian-8-jessie-linux\/","title":{"rendered":"Mise \u00e0 jour d&#8217;un serveur Kimsufi (OVH) depuis Debian 7.10 (Wheezy) vers Debian 8 (Jessie) [Linux]"},"content":{"rendered":"<p>Il faut r\u00e9guli\u00e8rement penser \u00e0 mettre \u00e0 jour son serveur Kimsufi.<\/p>\n<p>Je vais essayer d&#8217;expliquer bri\u00e8vement <a href=\"https:\/\/www.debian.org\/releases\/stable\/i386\/release-notes\/ch-upgrading.fr.html\">les \u00e9tapes \u00e0 suivre<\/a> pour cela.<\/p>\n<ol>\n<li>On va d&#8217;abord sauvegarder les donn\u00e9es :\n<pre class=\"brush:powershell\">mkdir \/root\/svg_special; cp -R \/var\/lib\/dpkg \/root\/svg_special\/; cp \/var\/lib\/apt\/extended_states \/root\/svg_special\/; dpkg --get-selections \"*\" > \/root\/svg_special\/dpkg_get_selection; cp -R \/etc \/root\/svg_special\/etc<\/pre>\n<\/li>\n<li>Ensuite il est conseill\u00e9 d&#8217;utiliser <code>screen<\/code> pour pouvoir se reconnecter (avec <code>screen -r<\/code>) \u00e0 en cas de d\u00e9connexion :\n<pre class=\"brush:powershell\">screen<\/pre>\n<\/li>\n<\/li>\n<li>On peut lancer la commande <code>dpkg --audit<\/code> pour s&#8217;assurer que tout est bon avant la migration. On peut \u00e9galement taper <code>dpkg --get-selections \"*\" | more<\/code> et v\u00e9rifier qu&#8217;aucun paquet n&#8217;est en <em>on hold<\/em><\/li>\n<li>Maintenant il faut remplacer tous les &#8220;wheezy&#8221; de <code>\/etc\/apt\/sources.list<\/code> par des &#8220;jessie&#8221;, ce qui va donner chez moi :\n<pre class=\"brush:bash\">\r\ndeb http:\/\/ftp.fr.debian.org\/debian jessie main non-free\r\n\r\ndeb http:\/\/debian.mirrors.ovh.net\/debian\/ jessie main\r\ndeb-src http:\/\/debian.mirrors.ovh.net\/debian\/ jessie main\r\n\r\ndeb http:\/\/security.debian.org\/ jessie\/updates main\r\ndeb-src http:\/\/security.debian.org\/ jessie\/updates main\r\n<\/pre>\n<\/li>\n<li>Il est recommand\u00e9 d&#8217;utiliser le programme <code>\/usr\/bin\/script<\/code> pour enregistrer une transcription de la session de mise \u00e0 niveau. Ainsi, quand un probl\u00e8me survient, on a un enregistrement de ce qui s&#8217;est pass\u00e9. Pour d\u00e9marrer un enregistrement, taper :\n<pre class=\"brush:powershell\">script -t 2>~\/upgrade-jessie.time -a ~\/upgrade-jessie.script<\/pre>\n<\/li>\n<li>On passe aux choses s\u00e9rieuses, en commen\u00e7ant par mettre \u00e0 jour les listes des paquets :\n<pre class=\"brush:powershell\">apt-get update<\/pre>\n<\/li>\n<li>On va v\u00e9rifier qu&#8217;on a la place suffisante (un message explicite apparait sinon) :\n<pre class=\"brush:powershell\">apt-get -o APT::Get::Trivial-Only=true dist-upgrade<\/pre>\n<\/li>\n<li>On va maintenant faire une mise \u00e0 jour minimale :\n<pre class=\"brush:powershell\">apt-get upgrade<\/pre>\n<\/li>\n<li>Et \u00e0 partir de l\u00e0 le syst\u00e8me va vous questionner&#8230; en g\u00e9n\u00e9ral choisir l&#8217;option par d\u00e9faut si vous ne savez pas quoi r\u00e9pondre<\/li>\n<li>Puis on continue avec\n<pre class=\"brush:powershel\">apt-get dist-upgrade<\/pre>\n<\/li>\n<\/ol>\n<p>Cette derni\u00e8re \u00e9tape va durer un certain temps. Une fois termin\u00e9, vous pouvez red\u00e9marrer le serveur pour s&#8217;assurer que tout va bien.<\/p>\n<p>Apr\u00e8s tout \u00e7a j&#8217;ai rencontr\u00e9 un probl\u00e8me avec la version 2.4 d&#8217;Apache, en ayant l&#8217;erreur :<\/p>\n<blockquote><p>AH01630: client denied by server configuration<\/p><\/blockquote>\n<p>En cherchant j&#8217;ai trouv\u00e9 <a href=\"http:\/\/httpd.apache.org\/docs\/2.4\/upgrading.html#access\">des modifications au niveau de la configuration<\/a>, \u00e0 savoir qu&#8217;il faut mettre <strong>Require all granted<\/strong> dans tous les <strong>&lt;Directory&gt;<\/strong> des virtual hosts :<\/p>\n<pre class=\"brush:sh\">\r\n&lt;Directory \/>\r\n  Options FollowSymLinks\r\n  Require all granted\r\n&lt;\/Directory>\r\n<\/pre>\n<p>De m\u00eame, concernant <strong>phpmyadmin<\/strong>, il faut modifier <code>\/etc\/phpmyadmin\/apache.conf<\/code> (avec <strong>Require all denied<\/strong> par exemple).<\/p>\n<p>Avec <strong>phpmyadmin<\/strong> vous pourriez recevoir l&#8217;erreur suivante :<\/p>\n<blockquote><p>PHP Fatal error: require_once(): Failed opening required &#8216;.\/libraries\/php-gettext\/gettext.inc&#8217; (include_path=&#8217;.&#8217;) in \/usr\/share\/phpmyadmin\/libraries\/select_lang.lib.php<\/p><\/blockquote>\n<p>Dans ce cas l\u00e0, il faut rajouter <code>\/usr\/share\/php\/php-gettext\/<\/code> dans le fichier <code>\/etc\/phpmyadmin\/apache.conf<\/code> sur la ligne <code>open_base_dir<\/code> (<a href=\"http:\/\/superuser.com\/questions\/590208\/phpmyadmin-symlinks-error-after-ubuntu-upgrade\">voir superuser.com<\/a>). Ce qui va donner la ligne : <code>php_admin_value open_basedir \/usr\/share\/phpmyadmin\/:\/etc\/phpmyadmin\/:\/var\/lib\/phpmyadmin\/:\/usr\/share\/php\/php-gettext\/<\/code><\/p>\n<p>Mon fichier <code>apache2.conf<\/code> avait \u00e9t\u00e9 aussi modifi\u00e9 et certains fichiers de configuration n&#8217;\u00e9taient plus lus (ceux dans le r\u00e9pertoire <code>\/etc\/apache2\/conf.d\/<\/code>). De m\u00eame il faudra renommer les fichiers pr\u00e9sents dans <code>\/etc\/apache2\/sites-available\/<\/code> en y ajoutant l&#8217;extension <strong>.conf<\/strong> (et relancer la commande <code>a2ensite<\/code> sur vos fichiers renomm\u00e9s).<\/p>\n<p>Si vous utilisez des fichiers <code>.htaccess<\/code> (par exemple avec WordPress), alors assurez vous d&#8217;utiliser la balise <code>AllowOverride All<\/code> &#8230; par exemple dans un de vos fichiers de configuration d&#8217;Apache il faudra mettre (pour indiquer que tous les <code>.htaccess<\/code> dans <code>\/home\/websites\/www<\/Code> sont autoris\u00e9s) :<\/p>\n<pre class=\"brush:pw\">\r\n&lt;Directory \/home\/websites\/www>\r\n   AllowOverride All\r\n&lt;\/Directory>\r\n<\/pre>\n<p>Sur un des serveurs il y avait un probl\u00e8me d'encodage avec les fichiers en PHP alors que les HTML n'avaient pas de soucis. Apr\u00e8s avoir cherch\u00e9 j'ai d\u00e9couvert que dans le cas de ce serveur je devais modifier <code>\/etc\/php5\/apache2\/php.ini<\/code> pour y mettre <code>default_charset = Off<\/code>.<\/p>\n<p>Et finalement on va nettoyer tous les paquets avec <\/p>\n<pre class=\"brush:powershell\">apt-get autoremove<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Il faut r\u00e9guli\u00e8rement penser \u00e0 mettre \u00e0 jour son serveur Kimsufi. Je vais essayer d&#8217;expliquer bri\u00e8vement les \u00e9tapes \u00e0 suivre pour cela. On va d&#8217;abord sauvegarder les donn\u00e9es : mkdir \/root\/svg_special; cp -R \/var\/lib\/dpkg \/root\/svg_special\/; cp \/var\/lib\/apt\/extended_states \/root\/svg_special\/; dpkg &#8211;get-selections &#8220;*&#8221; > \/root\/svg_special\/dpkg_get_selection; cp -R \/etc \/root\/svg_special\/etc Ensuite il est conseill\u00e9 d&#8217;utiliser screen pour pouvoir [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","hide_page_title":"","footnotes":""},"categories":[53,20],"tags":[161,155],"class_list":["post-1618","post","type-post","status-publish","format-standard","hentry","category-linux","category-niveau-expert","tag-linux","tag-niveau-expert"],"_links":{"self":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/1618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/comments?post=1618"}],"version-history":[{"count":20,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/1618\/revisions"}],"predecessor-version":[{"id":1704,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/posts\/1618\/revisions\/1704"}],"wp:attachment":[{"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/media?parent=1618"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/categories?post=1618"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.kodono.info\/wordpress\/wp-json\/wp\/v2\/tags?post=1618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}