Назад | Перейти на главную страницу

Centos 6 - переместить папку на другой диск с сохранением пути URL

У меня есть выделенный сервер с 4 жесткими дисками по 500 ГБ, работающий на Centos 6. Мой основной диск был заполнен, и это привело к остановке сервера MySQL, для чего мне пришлось освободить место для решения этой проблемы (временно).

Ниже приведен результат выполнения следующей команды parted -l

Model: ATA MB0500EBNCR (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End    Size    Type      File system     Flags
 1      1049kB  525MB  524MB   primary   ext2            boot
 2      525MB   492GB  491GB   primary   ext4
 3      492GB   496GB  4295MB  primary   linux-swap(v1)
 4      496GB   500GB  4295MB  extended
 5      496GB   500GB  4294MB  logical   ext4


Model: ATA MB0500EBNCR (scsi)
Disk /dev/sdb: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags


Model: ATA MB0500EBNCR (scsi)
Disk /dev/sdc: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags


Model: ATA MB0500EBNCR (scsi)
Disk /dev/sdd: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags

Эта папка «/home/admin/domains/mydomain.com/public_html/Documents» имеет большой размер, и я хотел бы переместить ее в другой раздел. (От «sda» к «sdb»)

Как правильно это сделать, сохранив URL-путь к файлам в новом разделе? mydomain.com/Documents

Для этого есть несколько вариантов.

Быстро и грязно

Подход q & d (хороший для того, чтобы впоследствии предложить лучшее решение, не беспокоясь постоянно) может быть одним из следующих.

а) символическая ссылка. Очень простой подход. Скопируйте файлы в целевой каталог. Переименуйте исходный каталог. затем ln -s NEWDIR /home/admin/domains/mydomain.com/public_html/Documents где NEWDIR - это абсолютный путь к выбранному вами месту хранения.

б) Bind-Mount. Вполне возможно, что подход с символической ссылкой не работает (документы будут отображаться как недоступные). Это побочный эффект конфигурации сервера (разрешено ли веб-серверу следовать символическим ссылкам или нет). В случае, если сервер не следует символической ссылке, сделайте это вместо этого (после копирования + переименования, как раньше, или если вы сначала попробовали символическую ссылку: после удаления символической ссылки с помощью rm /home/admin/domains/mydomain.com/public_html/Documents): mkdir /home/admin/domains/mydomain.com/public_html/Documents && mount -o bind NEWDIR /home/admin/domains/mydomain.com/public_html/Documents

Изменить: при выполнении привязки-монтирования и не следуя шагам к «фактическому решению» (по какой-либо причине), дополнительно добавьте монтирование к /etc/fstab s.t. он сохраняется после перезагрузки сервера.

Актуальное решение

Все обычные веб-серверы можно настроить для чтения файлов из разных каталогов. Отредактируйте конфигурацию, указав новый каталог, и перезапустите / перезагрузите сервер. Затем он может обслуживать файлы из другого места по одному и тому же URL-адресу.

Очистка

Если вы последовали моему совету сначала «убрать» файлы, после того, как все заработает, эту копию можно удалить.