Config fstab voir apache pour /var/www sur sdb au lieu de /var/(www) sur sda

Salut les fous (note aux modérateurs, c’est des plus amical :sunglasses:),

hihihi, content de vous revoir tout de même, après quelques années loin mais pas trop, de Debian, (ubuntu, ou pas d’ordi, mais jamais windows ! lord i swear !). De l’eau a coulé sous les ponts depuis ma première stable (Sarge), et là je suis un peu Stretch avec un souci de config au niveau partitions. (l’eau a coulée, ma mémoire aussi, j’ai plus trop pied). Bref ! …

Voilà mon souci, sda contient le système. Mais j’ai voulu placer /var/www sur sdb.
Donc j’ai partitionné /var/www sur /dev/sdbx, tandis que j’ai le var de la racine en partition logique /dev/sdax. Evidemment apache à l’install m’a placé www dans /var, sans voir la partition sdbx /var/www (ma faute c’est clair).
Alors je regardais un peu comment mv, binder, etc, bref les solutions, et j’ai choppé mal à la tête, en m’imaginant faire des trucs du style:
mv /var/www (de sda) vers /var/www (sdbx) heum heum …
ou encore /var/www bind /var/www heu …

J’ai besoin d’un éclair de lumière svp.
Faut-il dire à Apache où se trouve son rep www ?
Comment dire au système que /var/www, c’est une partition à part entière, pas un rep dans sa partition /var ?

Merci.

ps: (Mattotop, Ricardo, Franb, Ash, Debianhadic, Ed … Et les autres que j’oublie: Hello)

Bonjour Usinaquoi :slight_smile:

# fdisk /dev/sd[ab] -l

et le contenu de /etc/fstab nous aiderait un peu… :wink:

En gros, il faudrait utiliser l’UUID ou le LABEL de la partition sdbx (destinée à www)
pour l’indiquer comme partition à monter sur le répertoire /var/www

Mais il faut effectivement déplacer le contenu de /var/www vers sdbx au préalable.

Autant le faire dans les formes, sereinement, avec les informations.

Certes, provisoirement c’est ça car j’ai encore des partitions non montées pas trop configurées :

# <file system> <mount point>   <type>  <options>       <dump>  <pass>

# / was on /dev/sda1 during installation
UUID=4994bbcf-1fb9-4d25-814d-c3ba8365ad9d /               ext4    errors=remount-ro,noatime,commit=60	0       1

# /data was on /dev/sdb6 during installation
UUID=940d97a1-6067-4a65-a948-0139a7ecdfda /data           ext4    defaults	0       2

# /home was on /dev/sda8 during installation
UUID=efaacf30-ae81-4b9e-b3ad-e99dd08bf500 /home           ext4    defaults,noatime,commit=60	0       2

# /tmp was on /dev/sda7 during installation
UUID=f6b47e38-26bc-4627-8026-56ffd1526920 /tmp            ext4    defaults,noatime	0       2

# /var was on /dev/sda5 during installation
UUID=bfb4b520-3a7b-48b9-8405-eb12abb523d1 /var            ext4    defaults,noatime	0       2

# /var/www was on /dev/sdb5 during installation
UUID=fb8aa6d7-0ab5-4245-bd9d-09f08c25c38f /var/www        ext4    defaults	0       2

# swap was on /dev/sda6 during installation
UUID=90a8e461-4b73-4b30-80d4-d9e172f6f19a none            swap    sw	0       0

et mtab:

sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
udev /dev devtmpfs rw,nosuid,relatime,size=8174384k,nr_inodes=2043596,mode=755 0 0
devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=1637136k,mode=755 0 0
/dev/sda1 / ext4 rw,noatime,errors=remount-ro,commit=60,data=ordered 0 0
securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,mode=755 0 0
cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0
pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0
cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0
cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0
cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0
cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0
cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0
cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0
cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0
cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0
cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0
systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=1739 0 0
mqueue /dev/mqueue mqueue rw,relatime 0 0
hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
tmpfs /tmp tmpfs rw,nosuid,nodev 0 0
/dev/sdb6 /data ext4 rw,relatime,data=ordered 0 0
/dev/sda8 /home ext4 rw,noatime,commit=60,data=ordered 0 0
/dev/sda5 /var ext4 rw,noatime,data=ordered 0 0
/dev/sdb5 /var/www ext4 rw,relatime,data=ordered 0 0
tmpfs /run/user/112 tmpfs rw,nosuid,nodev,relatime,size=1637132k,mode=700,uid=112,gid=114 0 0
tmpfs /run/user/1000 tmpfs rw,nosuid,nodev,relatime,size=1637132k,mode=700,uid=1000,gid=1000 0 0

Cette phrase ne veut rien dire. On partitionne un disque, pas un répertoire.
On monte une partition sur un répertoire.

Je ne sais pas si c’est ta faute, mais ce que tu veux dire n’est pas clair du tout. Si une partition était montée sur /var/www, alors apache n’a pas pu “placer” un autre répertoire www dans /var, et les données écrites dans /var/www sont stockées dans cette partition. Tu l’as montée ou pas ? [EDIT] D’après fstab et mount, oui. Donc quel est le problème ? [/EDIT]

Tu peux parfaitement configurer apache pour utiliser un autre répertoire que /var/www, comme /srv qui est maintenant l’emplacement standardisé pour les données des serveurs.

Du calme Pascal lol, je reprends …
j’ai fait une réinstall hier, pour l’instant je nage un peu vois-tu.
Tu me parles de /srv ? très bien, j’ai rien contre . /var/www ou /srv ça me va, pourvu que ce soit une partition à part. Apache lui il a pas calculé la norme à laquelle tu fais allusion.

J’ai deux ssd, j’installe stretch sur sda, et le ssd plus gros, sdb, je veux y mettre un max de données, comme le multimédia et les répertoires serveurs.
Comment je partitionne et configure à ton avis (je suis prêt à tout réinstallé, toutes mes données sont sauvegarder sur un hdd), pour l’instant ya ce fstab, mais je suis ouvert à tout.

Donc je répète mes deux questions pas claires, comment puis-je définir une partition spécifiques aux données serveurs et multimédia considérée par apache comme son répertoire à lui, et si on garde l’idée de /var/www, il faut que le système sache que /var/log c’est ‘/dev/sda5 /log’ mais que /var/www c’est ‘/dev/sdb5/www’ … ?

@anon44391915

fdisk /dev/sd[ab] -l
# fdisk /dev/sd[ab] -l
Disque /dev/sda : 111,8 GiB, 120034123776 octets, 234441648 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0x75e4192a

Périphérique Amorçage    Début       Fin  Secteurs Taille Id Type
/dev/sda1    *            2048  38223871  38221824  18,2G 83 Linux
/dev/sda2             38225918 234440703 196214786  93,6G  5 Étendue
/dev/sda5             38225920  51615743  13389824   6,4G 83 Linux
/dev/sda6             51617792  85037055  33419264    16G 82 partition d'échange Linux / Solaris
/dev/sda7             85039104  87443455   2404352   1,2G 83 Linux
/dev/sda8             87445504 234440703 146995200  70,1G 83 Linux


Disque /dev/sdb : 232,9 GiB, 250059350016 octets, 488397168 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 4096 octets
taille d'E/S (minimale / optimale) : 4096 octets / 4096 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xff7f5a8f

Périphérique Amorçage     Début       Fin  Secteurs Taille Id Type
/dev/sdb1    *             2048  48828415  48826368  23,3G 83 Linux
/dev/sdb2              48830462 488396799 439566338 209,6G  5 Étendue
/dev/sdb5              48830464 244140031 195309568  93,1G 83 Linux
/dev/sdb6             244142080 488396799 244254720 116,5G 83 Linux

La partition 2 ne commence pas sur une frontière de cylindre physique.

Ça semble être fait ; tu as :

/dev/sda5 monté sur /var (donc /var/log est dans /dev/sda5)
/dev/sdb5 monté sur /var/www
/dev/sdb6 monté sur /data

Type d’étiquette de disque : dos

je suis choqué, c’est quoi ça ??
et le message (en rouge dans ma console) à la fin :

La partition 2 ne commence pas sur une frontière de cylindre physique.

c’est pas un souci d’alignement des blocs que j’ai lu quelque part ? ça me choque aussi.

En apparence c’est bon, mais pas en vrai, par exemeple si je veux me rendre dans le rep où j’édite les données de www/monsite, si je fais cd /var/www/monsite je vais dans sda, est ce qu’il me suffit juste de linker /var/www de sda -> /var/www de sdb ?
Je comprends pas bien en fait, d’où le cafouillage des mots et des idées.
Je peux encore repartionner intelligemment sdb, pour moins me compliquer la vie, mais vous conseils seraient précieux.

PascalHambourg m’a dit que c’est sans importance une fois, plus maintenant.
Je ne connais pas ça en profondeur.

Comment le vois-tu ? que le répertoire courant /var/www/monsite est dans sda ?

Il est plus sage de prendre ton temps.
Nous allons comprendre avant d’agir précipitamment.

Je voudrais bien que @PascalHambourg revienne ici un peu :wink:
Ils sont hyper partitionnés tes SSD ; c’est pas - trop - un mal en soi.

J’ai besoin de temps moi aussi pour savoir quoi dire.

T’inquiètes Remi merci.
je sais que je ne suis pas dans /var/www de sdb avec le navigateur de fichier, si je fais
un echo “toto”> /var/www/fictest le fichier de test est bien dans www de sda, pas dans www de sdb.

ahhh ya Mattotop qui arrive lol

Salut @Usinaquoi
Bon, si tu veux isoler /var/www sur une autre partition sans avoir à trop rien changer, à faire en console et en root:

  • tu montes ta partition sur /srv (modification du fstab pour que ça soit permanent),
  • tu passes en mode mono pour arrêter les services utilisant /var/www , systemctl isolate rescue.target ,
  • tu déplaces ton contenu web sur la nouvelle partition mv /var/www/* /srv,
  • rmdir /var/www
  • ln -s /srv /var/www
  • systemctl isolate graphical.target ou reboot
1 J'aime

ok, mais sache que pour l’instant tout est vide, ce que j’ai à mettre est sauvegardé ailleurs avant réinstalle (je suis juste passé du hdd classique aux ssd avec 5 ans de retard c’est tout). Je fais quand même comme tu dis ?

Salut Matt au fait, trop bien.

Non mais:
je monte /var/www (de sdb5) sur /srv ?
et je me place / pour linker /srv -> /var/www ?
et je mets quoi du coup dans fstab pour ça ?
(excuse mais je suis un peu largué)

Alors en fait, j’avais pas vu en détail ton fstab, et tu as déjà ça:

# /var/www was on /dev/sdb5 during installation
UUID=fb8aa6d7-0ab5-4245-bd9d-09f08c25c38f /var/www        ext4    defaults	0       2

Du coup, ce que je t’ai suggéré ne sert à rien, tu as déjà ta config de /var/www sur une partition séparée.
Et je ne comprends plus du tout ce que tu as comme problème, en fait…

A 13h, déjà fatigué ?
Note que moi aussi, un peu.

1 J'aime

Bonjour,

Que retourne les commandes suivantes stp ?

mount /var/www
mount

J’ai survolé le sujet et je suis comme @mattotop :

# mount /var/www
mount: /dev/sdb5 est déjà monté ou /var/www est occupé
        /dev/sdb5 est déjà monté sur /var/www

normal.
mount tout court me renvoie le mtab de tout à l’heure …

Bon , vous voulez dire qu’en fait j’ai qu’à supprimer le répertoire www dans /“sda5”, et apache lui il va tranquillement servir /sdb5/www/monsite ? (monsite n’existe pas encore physiquement sur les disques).
j’ai pas encore jeté un oeil à apache, je suis dans la préparation de base. (apache est configuré là par défaut parce que je viens de réinstaller le système, mais j’ai mes fichiers de config et les datas ailleurs que je rapatrierai quand tout sera prêt).

non mais c’est sûr que si j’invoque mount, la commande va voir les partoches et donc /dev/sdb5.
bon pour éviter toute confusion, je rmdir /var/www, là où apache s’est installé. Comme ça quand je vous dis /var/www dorénavant, je parlerai de sdb5 ok ?

Non.

On garde le répertoire /var/www de sda vide pour monter dessus la partition sdb5
Comme c’est présentement le cas (le montage).

Tu peux essayer de faire (service arrêté) :

# approximations

umount /var/www
ls -ld /var/www
du -h --max-depth=0 /var/www

Si /var/www ne contient rien, tu peux remonter /dev/sdb5 dessus.

mount /var/www

Je n’ai pas réussi à comprendre la preuve indiquée avec le navigateur de fichier.

Tout nous indique que /dev/sdb5 se monte sur /var/www
Donc, une fois monté :

touch /var/www/test-sdb5

Doit créer un fichier test-sdb5 à la racine de la partition /dev/sdb5

Mais nooon c’est pas présentemment le cas !!! c’est là où le bas blaisse à coup sur, moi j’ai partitionné sdb avec une partition logique sdb5 dont le point de montage est / mais pas / de sda, non non, / de sdb :stuck_out_tongue_closed_eyes:
le var de /var/www (sdb5), c’est entierement sur sdb5 :blush:

[Edit:] Cette réponse était le dernier acte de ma confusion story

Bon dis toi que sdb est vide, je vais le formater, comme ça c’est plus clean. il est vide de toute façon. Je fais quoi comme partitions dessus, en imaginant que je veux une partoche publique, un privée, le tout contenant de la vidéo mais surtout, surtout, de la musique. Et que apache puisse servir tout ça (le publique).

Tu as donc créé une arborescence /var/www à la racine de sdb5 ?

OK

Je vais à table.