>Ничего не помогает, есть ли решение? есть, вероятно проблема:
- либо в контроллере ATA или какой там у вас
- в жестком диске - похоже он не работает в UDMA mode или шлейв не для UDMA (не 80pin)
четко можно сказать если вы загрузитесь с Frenzy LiveCD и покажете вывод:
- от dmesg
# less /var/run/dmesg.boot
# pciconf -lv
или перенаправить вывод в файл:
# pciconf -lv > /tmp/pci.log
показать вывод:
# bsdlabel adXsY (где X == номер диска, Y == номер слайса)
для IDE устройств -> ad0, ad1, ad2 ... - диск 0, диск 1, диск 2...
для SCSI -> da0, da1 ... - диск 0, диск 1
выше видно что устройства(диски) ATA и SCSI различаются по первой букве, ATA - adX,
SCSI - daX. sY - означает номера слайсов, например ad0s1 - ПЕРВЫЙ слайс на диске ad0
Ядро у FreeBSD by default должно лежать на партиции adXsYa - слайс может содержать
не более 8'ми партиций, партиции обзнаяаются буквами от "a" до "h",
"a" - партиция на которой должна быть корневая Filesystem: "/"
"b" - swap
"c" - зарезервировано и описывает весь диск/слайс целиком
начиная с "d" до "h" - рабочие, под файловые системы, итого: "a" - "/", "d" ... "h"
все остальное.
Итог, диск может быть разделен не более чем на 4'е слайса: ad0s1 ... ad0s4, каждый
слайс(кусок) - может содержать не более 8'ми партиций: ad0s1a ... ad0s1h
Это вам для понимания и правильного выполнения команд, например:
[alone]~ > mount
/dev/ad2s1a on / (ufs, local)
devfs on /dev (devfs, local)
/dev/ad2s1d on /tmp (ufs, local)
/dev/ad2s1e on /usr (ufs, local)
/dev/ad2s1f on /var (ufs, local)
/dev/ad2s1g on /home (ufs, NFS exported, local)
/dev/ad2s1h on /pub (ufs, NFS exported, local)
/dev/ad1s1a on /mnt/root (ufs, local, soft-updates)
/dev/ad1s1f on /mnt/all/1 (ufs, local, soft-updates)
/dev/ad1s1g on /mnt/all/2 (ufs, local, soft-updates)
/dev/ad1s1d on /mnt/pub (ufs, NFS exported, local, soft-updates)
/dev/ad3s1d on /pub/films (ufs, NFS exported, local)
[alone]~ >
[alone]~ > fdisk -s ad2
/dev/ad2: 238216 cyl 16 hd 63 sec
Part Start Size Type Flags
1: 63 240107427 0xa5 0x80
[alone]~ >
выше только один слайс на весь диск, ниже видим что этот слайс разделен на 8 партиций:
[alone]~ > bsdlabel ad2s1
# /dev/ad2s1:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 614400 0 4.2BSD 2048 16384 38408
b: 1048576 614400 swap
c: 240107427 0 unused 0 0 # "raw" part, don't edit
d: 1048576 1662976 4.2BSD 2048 16384 8
e: 41943040 2711552 4.2BSD 2048 16384 28552
f: 20971520 44654592 4.2BSD 2048 16384 28552
g: 20971520 65626112 4.2BSD 2048 16384 28552
h: 153509795 86597632 4.2BSD 2048 16384 28552
[alone]~ >
И последнее:
[alone]~ > atacontrol list
ATA channel 0:
Master: acd0 <NEC DVD RW ND-3500AG/2.18> ATA/ATAPI revision 0
Slave: ad1 <Maxtor 6Y080P0/YAR41BW0> ATA/ATAPI revision 7
ATA channel 1:
Master: ad2 <Maxtor 6Y120L0/YAR41BW0> ATA/ATAPI revision 7
Slave: ad3 <Maxtor 6Y120L0/YAR41BW0> ATA/ATAPI revision 7
[alone]~ >
показывает к какому контроллеру и каналу подсоединены ATA устройства,
а нижнее в каком режиме устройство работает:
[alone]~ > atacontrol mode ad1
current mode = UDMA100
[alone]~ >
Если при загрузке в Safe-mode у вас работает, видимо проблема в DMA, для дисков
выручает добавление следующей строки в файл /boot/loader.conf (man 4 ata):
/boot/loader.conf:
hw.ata.ata_dma="0"