Как подключить старый жесткий диск от SCO Unix в Linux?

Вопрос или проблема

Моему начальнику нужны некоторые файлы со старого жесткого диска. У нас он подключен через адаптер PATA на USB.

dmesg
[1568641.572757] sd 4:0:0:0: [sdc] 12594960 512-байтных логических блоков: (6.44 GB/6.00 GiB)
[1568641.573263] sd 4:0:0:0: [sdc] Защита от записи отключена
[1568641.573272] sd 4:0:0:0: [sdc] Режим Sense: 00 38 00 00
[1568641.574935] sd 4:0:0:0: [sdc] Запрос данных кэша не удался
[1568641.574946] sd 4:0:0:0: [sdc] Предполагается кэширование: запись через
[1568641.654625] sd 4:0:0:0: [sdc] Подключен SCSI диск

fdisk -l

Диск /dev/sdc: 6448 MB, 6448619520 байт, 12594960 секторов
Единицы измерения = секторы по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
Тип метки диска: dos
Идентификатор диска: 0x44c21828

Диск из системы SCO Unix, поэтому это либо sysv, либо HTFS (не HPFS). Я пытаюсь смонтировать его на ПК с Centos Linux.

Я скопировал весь диск с помощью dd в /var/tmp/scodisk. Я использовал strings и извлёк большой текстовый файл, который содержит много из того, что ему нужно, но с ним сложно работать.

Поддержка файловой системы sysv была удалена, поэтому я нашёл и скомпилировал драйвер HTFS.

sudo mount -t fuse ./htfs /mnt/scodisk
    mount: /home/wsd/htfs-0.1.1/src/htfs на /mnt/scodisk тип fuse.htfs (rw,relatime,user_id=0,group_id=0)

sudo mount -t fuse ./htfs --source /dev/sdc --target /mnt/scodisk
    /bin/sh: /dev/sdc: Отказано в доступе

sudo mount -t fuse ./htfs --source /var/tmp/scodisk --target /mnt/scodisk
    /bin/sh: /var/tmp/scodisk: Отказано в доступе

cd /usr/sbin ln -s /home/wsd/htfs-0.1.1/src/htfs mount.htfs

lsblk --fs (нет UUID на строке sdc)

sudo mount -t fuse ./htfs /dev/sdc (sdc исчезает из fdisk -l)

Чего мне не хватает?

Ответ или решение

Чтобы подключить старый жесткий диск из системы SCO Unix к компьютеру с Linux, необходимо использовать правильный подход, учитывая специфические особенности файловой системы и оборудования. В вашем случае мы имеем дело с файловой системой HTFS или SYSV, подключенной через адаптер PATA-USB. Приведём детальный план действий для решения этой задачи.

Теория

Файловые системы SCO Unix, такие как HTFS (High Throughput File System), имеют свои особенности и не поддерживаются напрямую современными версиями ядра Linux. Для работы с ними требуется использование вспомогательных инструментов и драйверов. HTFS обладает иными механизмами уплотнения файлов и обработки метаданных по сравнению с более распространёнными ext4 или FAT, что делает невозможным её стандартное монтирование в Linux.

Пример

Вы уже предприняли несколько шагов для извлечения данных с диска, включая использование dd для создания образа, компиляцию и использование драйвера для HTFS, а также попытки монтирования диска с помощью FUSE (Filesystem in Userspace). Проблемы с которыми вы столкнулись (такие как отказ в доступе и исчезновение диска после попытки монтирования), указывают на необходимость более детальной проработки конфигурации и прав доступа.

Применение

  1. Проверка оборудования и прав доступа:

    • Убедитесь, что адаптер PATA-USB корректно подключен и распознаётся системой. Используйте команды lsusb и dmesg для диагностики.
    • Проверьте, что вы имеете необходимые права доступа для работы с устройствами. Возможно, требуется выполнение команд с правами суперпользователя (root).
  2. Создание образа диска (если ещё не сделано):

    • Создание образа дало бы возможность работать с копией, исключая риск повреждения оригинального диска. Команда dd if=/dev/sdc of=/var/tmp/scodisk.img bs=512 позволяет создать образ диска.
  3. Конфигурация и компиляция драйвера HTFS:

    • Убедитесь, что драйвер HTFS корректно установлен и сконфигурирован. Проверьте путь и права доступа к исполняемым файлам драйвера.
    • Возможно, стоит проверить совместимость версии ядра Linux с драйвером.
  4. Монтирование диска через FUSE:

    • Попробуйте использовать отладочный режим через FUSE: sudo mount -t fuse ./htfs /dev/sdc /mnt/scodisk -o debug чтобы выявить источник ошибки.
    • Убедитесь, что пути, указанные в команде монтирования, существуют и доступные. Проверьте права на директории /mnt/scodisk.
  5. Анализ и устранение ошибок:

    • Посмотрите сообщения об ошибках в dmesg после неудачных попыток монтирования.
    • Использование strace может помочь отследить системные вызовы, делаемые вашим процессом монтирования, что позволит выявить точные причины отказа.
  6. Альтернативные решения:

    • Если проблема не решается, вы можете рассмотреть виртуализацию старой ОС SCO Unix и подключение образа диска к виртуальной машине. Это даст возможность использовать родную файловую систему ОС для доступа к данным.
  7. Извлечение данных:

    • Если по-прежнему не удается смонтировать диск, можно рассмотреть использование утилит восстановления данных, таких как photorec или testdisk, которые способны восстанавливать файлы даже при отсутствии монтированного файлового пространства.

Следуя этим рекомендациям, вы увеличите вероятность успешного доступа к данным на старом диске. Работа с устаревшими системами всегда требует осторожности и терпения, особенно когда используемые технологии давно не поддерживаются.

Оцените материал
Добавить комментарий

Капча загружается...