Перемещайте файлы между Linux и OpenBSD и сохраняйте свойства файлов.

Существует множество вещей, на которые файловая система может тратить дисковое пространство, не связанное с содержимым файлов.

df берет количество использованных и доступных блоков непосредственно из файловой системы, а du просто суммирует размер блоков, выделенных каждому файлу, поэтому любые не связанные с ФС структуры данных не учитываются.

Совершенно нормально, что du показывает меньше используемого пространства, чем df. Странно, что разница так велика, особенно для редко изменяемого корневого раздела. Вы как-то настраивали свою ФС? Вы также пробовали du --inodes для сравнения с df -i?

5
05.09.2017, 09:15
5 ответов

Я использую монтирование NFS. Мой /homeсмонтирован как на Ubuntu, так и на OpenBSD с сервера OpenBSD NFS, и у меня нет проблем (одинаковый UID/GID в обеих системах! ).

Если у вас двойная -загрузка и вы просто хотите время от времени передавать несколько файлов, tarархивы на USB-накопителе FAT32 будут работать очень хорошо.

Я никогда не пытался разделить разделы между Linux и OpenBSD (Я бы использовал виртуальные машины вместо двойной -загрузки ). Звучит сложно, но в базовой системе OpenBSD 6.1 есть команда mount_ext2fs, поэтому файловые системы EXT2 должны поддерживаться хотя бы в базовой степени.

3
27.01.2020, 20:40

Быстрый тест с помощью tar. Я считаю, что ключ, о котором вы можете не знать, это флаг или опция -p. Это (в основном )попытка сохранить права доступа к файлам (и многое другое ).

В системе FreeBSD (, но может быть OpenBSD или даже OSX):

mkdir t1-dir
touch t1-dir/t1-test
touch t1-dir/t1-read-only
chmod 600 t1-dir/t1-read-only
tar czf t1.tgz t1-dir
ls -l t1-dir
total 0
-rw-------   1 tigger  tigger     0  5 Sep 16:24 t1-read-only
-rw-r--r--   1 tigger  tigger     0  5 Sep 16:24 t1-test

В системе Linux (минут спустя):

sftp <freebsd system>
get t1.tgz
exit
tar xzpf t1.tgz
ls -l t1-dir
total 0
-rw------- 1 tigger tigger 0 Sep  5 16:24 t1-read-only
-rw-r--r-- 1 tigger tigger 0 Sep  5 16:24 t1-test

Если эти две системы находятся в одной локальной сети, вы можете настроить -общий ресурс NFS или Samba на любой из них. Лично у меня есть выделенный файловый и мультимедийный сервер (FreeBSD )с набором NFS -для общих файлов между FreeBSD и Linux и набором Samba -для Windows 10 и OSX.

1
27.01.2020, 20:40

OpenBSD поддерживает ext2 и ext3 с разрешениями на чтение/запись и сохранение. OpenBSD не поддерживает ext4.

Чтобы смонтировать файловую систему linux (sd0a, например, )на машине openbsd, выполните действия от имени пользователя root:

mkdir /mnt/linux
mount_ext2fs /dev/sd0a /mnt/linux

Используйте mount_ext2fsтакже для монтирования файловых систем ext3.

Затем вы можете копировать файлы между каталогами, используя cpили tar, например, так:

(cd /mnt/linux && tar cf -.) | (cd /home/pkdick/linux && tar xpf -) 

Если вы хотите постоянно совместно использовать каталог linux с openbsd, используйте NFS. (OpenBSD поддерживает только версии NFS с 1 по 3 ).

На стороне Linux объявите экспорт и запустите демоны nfs. На стороне OpenBSD введите (в следующих строках, замените linuxhostnameименем хоста или IP-адресом вашего linux box):

mkdir /mnt/linux

# to check that NFS services are available on your linux box:
rpcinfo -p linuxhostname

# to see the NFS exports available on your linux box:
showmount -e linuxhostname

# Then, for example, if you have an export /home/pkdick on your linux box:
mount linuxhostname:/home/pkdick /mnt/linux

Вы можете объявить это монтирование в вашем /etc/fstab:

linuxhostname:/home/pkdick /mnt/linux nfs rw,nodev 0 0
0
27.01.2020, 20:40

OpenBSD предлагает -поддержку только для чтения для ext4файловых систем :это полезно, если вы можете напрямую подключить Linux-диск к системе OpenBSD.

Как и в большинстве случаев с BSD, соответствующие справочные страницы превосходны. Вот несколько для начала :ext4(5)mount_ext2fs(8)

Часто задаваемые вопросы по установке диска OpenBSD(https://www.openbsd.org/faq/faq14.html)также полезны.

Ваши разделы, вероятно, будут найдены в/dev/sdX[d-p](для дисков с драйверами SCSI )или/dev/wdX[d-p](для дисков, использующих совместимый с WD100x драйвер ).

sysctl hw.disknamesдаст вам список дисков в вашей системе.

Чтобы узнать, какие разделы доступны на диске :disklabel sdX(замените sdX на свой диск

Чтобы смонтировать диск ext4, прочитайте только -:

# mount -r /dev/sdX[d-p] /mountpoint

замените sdX[d -p] на указанный вами раздел и /mountpoint на место, которое вы хотите смонтировать. Для этого шага вам потребуется доступ администратора.

После того, как вы смонтировали его только для чтения, вы сможете копировать файлы на новый диск, избегая узких мест в сети, которые могут возникнуть при использовании NFS для выполнения задачи.

0
27.01.2020, 20:40

Ext2 — это, пожалуй, единственный общий формат файловой системы между Linux и BSD, который по умолчанию сохраняет разрешения. Если идентификаторы пользователей или групп различаются, вам может потребоваться использовать chown или chgrp. Временные метки EXT2 имеют очень грубое разрешение, EXT4 — разрешение в наносекундах. Известно, что варианты EXT, включая EXT4, уничтожают данные (YMMV ), так что будьте осторожны.

BSD mtree (8 )доступен в некоторых дистрибутивах Linux (, например. OpenSUSE )и может использоваться для сохранения и восстановления разрешений, временных меток, флагов, владельца/группы и т. д. (т.е. использование файлов mtree для хранения метаданных может использоваться даже с файловыми системами, которые не могут хранить эти данные напрямую, включая варианты FAT ). Если на то пошло, bsdtar также доступен в некоторых дистрибутивах Linux, поэтому вы можете использовать совместимые версии с обеих сторон.

Если у вас две работающие системы (, а не одна мультизагрузочная система ), rsync через сетевое подключение также может сохранить такие метаданные. Если вы не использовали rsync, вам придется долго учиться,но это довольно гибко, как только вы освоитесь.

Я использовал варианты EXT для хранения общих данных в мультизагрузочных системах и rsync по сети для совместного использования и синхронизации данных между машинами. Есть даже драйвера для систем MS для чтения и записи EXT2. Самый большой чудак, который я знаю среди систем (Я мало знаю о macos, и я хотел бы оставить его таким )это illumos и основанные на нем дистрибутивы, которые не имеют ничего общего со всеми остальными (изначально использует ZFS, может поддерживать UFS, возможно, NTFS, но не EXT; нет UFS для машин MS и ограниченная доступность ZFS для некоторых вариантов Windows. [и если у вас нет емкости диска корпоративного уровня -и вспомогательного персонала, чтобы оставаться в курсе beadm и т. д., вам, вероятно, не нужна ZFS]; illumos также не поддерживает USB 3, поэтому, если вы не ограничитесь портами и устройствами USB 2 или ниже, передача через USB невозможна ).

0
11.08.2020, 21:08

Теги

Похожие вопросы