Un dualboot pour SPIP

switcher de windows à kubuntu

Je débute sur Linux aussi toute aide est la bienvenue pour la rédaction ou les corrections de cet article ! Et si j’ai fait des erreurs n’hésitez pas !

Ce tutoriel s’adresse aux développeurs de sites.

Si vous souhaitez démarrer votre poste soit sur linux soit sur windows, voici pas à pas comment profiter en local des mêmes dossiers de sites et bases Mysql en conservant sur les deux systèmes les avantages de svn.

Pourquoi passer à linux ?

Si la question pourquoi passer aux logiciels libres ? ne vous a jamais taraudé faites d’abbord un tour sur http://www.passeralinux.fr ou aller voir les 1001 logiciels libres que vous propose framasoft.

Comment passer à linux ?

Passer à linux était encore il y a quelques années une véritable gageure, souvent réservée à des informaticiens chevronnés. Aujourd’hui, non seulement la conscience s’est répandue que la survie de nos libertés électroniques passe par le libre, mais utiliser linux est devenu un jeu d’enfant grâce à une communauté très active dont la base principale est l’entraide.

Tester linux

Le principe du LiveCD permet de tester avec un cd « vivant » des distributions linux incluants reconnaissance de vos périphériques, environnement fenêtré, navigateur web, suite bureautique complète, outils de programmation, logiciels de communication... et cela en toute quiétude car la configuration de votre ordinateur n’est à aucun moment modifié.

Installer linux en dualboot

Une fois que vous avez testé et choisi votre distribution préférée [1] vous pouvez installer linux en lui consacrant tout votre disque ou seulement une partition (la plupart des LiveCD proposent et incluent l’installation).
Après installation, lors de la procédure de démarrage de l’ordinateur (boot) vous aurez le choix d’utiliser OU votre sytème actuel OU linux ! cela s’appelle un dualboot.

Il vous sera possible de partager vos données en dualboot entre Windows et Linux, mais pour bien comprendre comment, il faut savoir que lors du partitionnement il y a différents modes de formatage de votre disque à faire et cela avant toute installation !

Partager ses données en dualboot Windows/Kubuntu

Dans tous les cas, pour garder vos doigts entiers, faites avant tout les sauvegardes de vos données importantes !

L’installation de linux n’est pas vraiment le sujet de l’article, toutefois quelques petites précisions s’imposent, au besoin faites des recherches car vous trouverez parfois bien mieux expliqué ailleurs, pour ma part j’ai téléchargé et gravé une image de Kubuntu 7.04 « Feisty Fawn » qui va aussi bien pour tester en LiveCD que pour l’installation et je vous conseille la documentation qui va avec

Welisa n’aime que le chocolat et Kourad seulement le citron !
Le partitionnement consiste à découper votre gateau (disque dur) en différentes parts selon le gout et la voracité de vos invités !

Voici les 4 modes de formatage qui nous intéressent et que j’ai testé :
-  Le NTFS est par défaut le formatage pour Windows, à priori Linux lira le NTFS mais n’écrira pas dessus sauf... en utilisant un outil devenu extrêmement simple (ntfs-config) qui vous permettra de passer de NTFS à NTFS-3G et vice versa et qui réécrit le /etc/fstab (fichier des arguments de montage des partitions) Malheureusement les droits restent apparemment inaliénables au root (l’utilisateur maitre d’oeuvre du système) ou à l’utilisateur du compte courant ce qui ne nous intéresse pas puisque nous voulons des droits pour l’utilisateur mysql.
-  Le ext3 est par defaut pour les fichiers Linux mais la partition reste invisible à Windows [2] bref, c’est sur cette partition que s’installera le système d’exploitation Linux, réservez une partition supplémentaire dédié à vos documents peut être aussi une solution !
-  La swap qui réservera à Linux sa part de mémoire d’échange, autour de 700Mo semble être la norme
-  Le FAT32 qui se partagera sans problème car Linux et Windows peuvent lire et écrire dessus. mais le FAT32 a des limites ! Ses fichiers seront inférieurs à 3Gigas, donc ne comptez pas y mettre de longues vidéos ! et un problème de gestion du temps avec une journalisation impossible ne vous permettra pas d’utiliser SVN dessus, par contre c’est ici que nous mettrons les données mysql à partager entre windows et linux, puisque contrairement à ce que j’en ai lu, la gestion des droits peut être donné à mysql.

Avec un disque de 80Go j’ai choisi de consacrer
-  30Go à Windows en NTFS
-  40Go à Linux (kubuntu) en ext3
-  1Go pour la swap
-  9Go pour le FAT32

Après avoir vu l’efficacité des outils de gestion des partitions, je pourrais, lorsque son temps sera venu, transformer la partition de Windows aux orties généreuses de Linux !

Recommandations avant d’installer le dualboot


-  Sauvegardez vos fichiers importants dont C:/Program Files/EasyPHP1-8/mysql/data
-  Virez les choses inutiles sur Windows
-  Défragmenter votre disque sous Windows !
-  Puis faites de la place pour linux en « tassant » la partition windows ! Les outils de partitionnement se trouvent, si vous choisissez comme moi kubuntu sur son liveCD avec des explications , toutefois pour partitionner proprement et rapidement je vous conseille de démarrer sur un GParted LiveCD puis installez votre linux, ici kubuntu.

Passons à l’action !

Mes bases de départ sont donc
-  Pour Windows, un easyphp 1.8 (je pense que la easyphp 2 marche aussi) (voir démarrer spip en local) avec au moins un site spip installé dans le dossier C:/mes_sites (dossier ablabla, table Mysl blabla) et un svn-tortoise.
-  Pour Linux un kubuntu fraichement installé, sur lequel je vais ajouter un LAMP soit Linux-Apache-MySQL-Php + kdesvn et des outils de dev web qui sont bien agréable comme Quanta+

Dans un premier temps en mettant les profils nécessaires sur le FAT32 j’ai partagé les mêmes données sur chaque OS pour firefox et thunderbird, il existe des méthodes très bien expliquées au choix, mais j’ai pris plus de temps pour réussir à installer en partage Easyphp et LAMP !

Principe de la modification essentielle

Le dossier /mysql/data/ regroupe toutes les bases de vos sites en SPIP indépendamment des fichiers de SPIP.

Prenons l’exemple d’un SPIP qui a tous ses fichiers dans un dossier /mes_sites/ablabla/, lors de son installation votre SPIP va créer automatiquement une base que vous nommez au choix blabla. Vous pouvez alors voir les tables créées qui vont permettre de stocker le contenu textuel de votre site et les chemins de vos documents dans le dossier /mysql/data/blabla/ .

La modification essentielle consiste à avoir ce dossier mysql/data/ sur le FAT32 puis à indiquer pour les deux OS le bon chemin in fine on collera un alias à Apache (sur Linux) pour qu’il retrouve le dossier des sites.

I Modifier l’emplacement du dossier mysql/data/ sur Windows

Sur Windows, recopier ou déplaçer si vous êtes sur de vous les fichiers du dossier
C:/Program Files/EasyPHP1-8/mysql/data
sur le FAT32
D:/mysql/data
surtout laissez le dossier de vos sites ou il est !
Après succès de l’opération VIII vous pourrez effaçer C:/Program Files/EasyPHP1-8/mysql/data

II Indiquez le nouveau chemin mysql sur Windows

Indiquez alors à Mysql d’aller chercher ses bases sur le D :/

Editer
C:/Program Files/EasyPHP1-8/mysql/my.ini
Remplaçer
datadir=C:/Program Files/EsayPHP1-8/mysql/data
par datadir=D:/mysql/data
ce qui donne :

#C:/Program Files/EasyPHP1-8/mysql/my.ini
[mysqld]
datadir=D:/mysql/data
basedir=C:/Program Files/EasyPHP1-8/mysql
bind-address=127.0.0.1

puis testez en redémarrant Easyphp

III Sur Kubuntu Feisty 7.04

modifier le NTFS en NTFS-3G

Cela permet à Linux d’accéder en écriture à la partition Windows
Tout est expliqué ici et tient pour Feisty en 1 ligne et 2 clics ! ouvrez un terminal ou faites menu kde>executer une commande :

sudo ntfs-config

IV Installer LAMP sur Kubuntu

Par defaut Apache est déjà installé en local sur Kubuntu 7.04, vérifiez en vous rendant sur http://127.0.1.1 pour installer le serveur mysql et php il suffit de

sudo apt-get install php5 php5-cli php5-mysql mysql-server 

+ d’info

N’ayez pas peur des commandes terminal, elles sont souvent plus rapides que les interfaces graphiques, et ici je mêlerais un peu des deux !

V Configurer le FAT32 pour mysql sur Kubuntu

Pour demander à démarrer la partition FAT32 avec les droits mysql/mysql
sauvegardez avant (on ne sait jamais) /etc/fstab et modifez le, inspirez vous de ce code et gardez surtout l’ensemble sur une seule ligne !

#modif dans /etc/fstab
# Entry for /dev/hda8 :
UUID=1BA1-47B0  /media/hda8   vfat    defaults,utf8,umask=007,uid=mysql,gid=mysql,rw 0       0

Si vous souhaitez en savoir plus sur le fichier fstab allez sur lea-linux.org

VI Ajoutez vous au groupe mysql sur Kubuntu

Ajoutez votre user au groupe mysql, vous pourrez ainsi éditer plus facilement les fichiers de cette partition !

VII Configurer Mysql sur Kubuntu

Via un terminal, créez et ouvrez le fichier /etc/mysql/conf.d/vds.cnf qui ajoute des options à la configuration de Mysql /etc/mysql/my.cnf on évitera ainsi de modifier my.cnf lors de mise à jour !

kdesu kate /etc/mysql/conf.d/vds.cnf

Dites à Mysql oû aller chercher ses bases

#contenu de /etc/mysql/conf.d/vds.cnf
[mysqld] 
datadir		=/media/hda8/mysql/data

puis sauvegardez !

VIII Configurer Apache sur Kubuntu

créez des liens symboliques dans le dossier www vers le dossier de sites sur le NTFS-3G

sudo ln -s /media/hda1/mes_sites  /var/www/mes_sites

Et indiquez à Apache de suivre ces liens symboliques

kdesu kate /etc/apache2/sites-available/default
    Alias /mes_sites/ "/media/hda1/mes_sites/"
    <Directory "/media/hda1/mes_sites/"> 
	Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

Redémarrez, et tester en vous rendant sur http://127.0.1.1 (utilisez au besoin les fichiers joints dézippés pour tester le php et l’accès à la base )

Installez ensuite depuis l’interface graphique Adept installer phpmyadmin

vous pourrez alors lançer phpmyadmin depuis le menu développement

et aller sur
-  http://localhost/phpmyadmin

Egalement depuis l’interface graphique Adept installer Kdesvn presque aussi bien que tortoise et Quanta+le pendant de Dreamweaver sous linux et encore tout ce qui vous plaiera pour améliorer la gestion de vos sites librement ;)

ies4linux permet de voir vos sites sur IE4,5,6 mais n’est pas installé, vous pouvez le récupérer ici

Installer d’autres SPIP

Pour installer d’autres SPIP, décompressez l’archive puis mettez le dossier spip que vous renommerez du nom de votre site par exemple romulus
-  sur windows dans C://mes_sites/romulus
-  sur linux dans /media/hda1/mes_sites/romulus, de toute façon souvenez vous que ce sont des chemins différents sur chaque système mais qui mènent au même dossier !

Activez l’installation de votre SPIP romulus en vous rendant et ce quelque soit le système d’exploitation, sur http://127.0.1.1/mes_sites/romulus/...

Et vous ? des retours ou des idées ?

Notes

[1D’autres distributions pour tester linux :
-  sur debian :(K,X)ubuntu, Knoppix, Kaella, Linspire
-  sur redhat : Fedora Core, CentOS, FoXLinux
-  sur Suse : OpenSuSE...

[2Le ext3 est invisible à Windows à moins d’utiliser Explore2fs ou Fs-driver (non testé)

Les captures d’écran ont été réalisé avec Ksnapshot en 2 clics (touch imprim ecran) et retravaillés avec Le Gimp

Discussion

2 discussions

  • 1
    Loiseau2nuit (aka Zzz.)

    Hello :)

    Comme j’ai déjà dû le dire en backoffice de cet article : très bonne tuto, un gros merci pour cette méthode. Je viens également de passer à Kubuntu (sur la v6.06) il était donc normal que je me penche dessus.

    Cependant, je reste un peu sur le Q lorsque je te lis nous proposer de forcer l’écriture sur le NTFS depuis Linux lorsque l’on sait ce que ca peut impliquer en terme de risque pour les données du-dit NTFS

    Pour ma part, je vais plutôt m’arranger pour déplacer tous les répertoires sur lesquels je dois écrire dans la partoche FAT32, je pense que ce sera plus safe (donc les Mysql-data et le répertoire /www) ce qui devrait-être possible si l’on utilise sous Windaube une autre solution server que EasyPHP.

    Perso je travaille avec Uniform Server qui a l’avantage d’être portable (mon serveur est «  »« installé »« » sur un disque usb formatté en FAT32 !)

    Je posterai mes retours ;)

    Bonne journée.

    • Salut, amha

      La FAT32 a des problèmes divers, je crois que je les souligne dans l’article, droits, taille, plutot obsolète et surtout une gestion du temps qui ne permet pas d’utiliser SVN ! ...

      Ce qui fait qu’après avoir fait diverses recherches avec la FAT32 (sous Feisty) j’ai abandonné et choisi par simplicité d’usage de ne pas mettre les dossiers a partager dessus, je t’assure que c’est bien pratique le NTFS-3G, même assez génial, la version est fiable depuis fev2007 et on évite ainsi de se casser la tête à tout déplaçer

      As tu des retours qui déconseillent d’utiliser le NTFS-3G ? je suis intéressé
      Perso je n’ai eut aucun souci avec NTFS-3G, et si par mégarde tu effaçes des fichiers importants de Windows alors vraiment chapeau et bravo, voila enfin un acte manqué réussi ;) !

      Un mix des deux ? partitionner autrement et créer une NTFS-3G juste pour les dossiers partagés et garder en simple NTFS les fichiers Windows, sur lesquels Linux n’aura pas accès, et toujours mysql sur le FAT32 comme dans le tuto ?

      Merci, ton retour sera le bienvenu !

    Répondre à ce message

  • Ce que tu décris est exactement ce que je cherche à faire, merci. Seulement j’y arrive pas tout seul.

    Par contre j’ai essayé mais très certainement dans le désordre, j’ai déjà pleuré de l’aide ici tu peux y voir décrit ce qui est déjà en place. J’ai jamais utilisé mysql sur Mandriva, donc je sais pas ce qu’il me faudrait activer en amont, avant d’indiquer les liens symboliques pour le php.

    J’ai bien une Debian aussi mais j’ai pas (encore) installé Apache.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom