Ядро не видит SATA диск

Да, винт на терабайт. Пробую...
Отключил лишние диски. Результат:

# lsmod | grep ahci
ahci                   25731  0
libahci                31364  1 ahci

# cat /proc/scsi/scsi
Attached devices:
Host: scsi8 Channel: 00 Id: 00 Lun: 00
  Vendor:          Model: USB FLASH DRIVE  Rev: PMAP
  Type:   Direct-Access                    ANSI  SCSI revision: 00

# systool -b scsi -v
Bus = "scsi"

  Device = "8:0:0:0"
  Device path = "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host8/target8:0:0/8:0:0:0"
    blacklist           =
    delete              = <store method only>
    device_blocked      = "0"
    device_busy         = "0"
    dh_state            = "detached"
    eh_timeout          = "10"
    evt_capacity_change_reported= "0"
    evt_inquiry_change_reported= "0"
    evt_lun_change_reported= "0"
    evt_media_change    = "0"
    evt_mode_parameter_change_reported= "0"
    evt_soft_threshold_reached= "0"
    inquiry             =
    iocounterbits       = "32"
    iodone_cnt          = "0x778"
    ioerr_cnt           = "0x1"
    iorequest_cnt       = "0x778"
    max_sectors         = "240"
    modalias            = "scsi:t-0x00"
    model               = "USB FLASH DRIVE "
    queue_depth         = "1"
    queue_type          = "none"
    rescan              = <store method only>
    rev                 = "PMAP"
    scsi_level          = "0"
    state               = "running"
    timeout             = "30"
    type                = "0"
    uevent              = "DEVTYPE=scsi_device
DRIVER=sd
MODALIAS=scsi:t-0x00"
    vendor              = "        "

  Device = "host0"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata1/host0"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host1"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata2/host1"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host2"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata3/host2"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host3"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata4/host3"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host4"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata5/host4"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host5"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata6/host5"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host6"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata7/host6"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host7"
  Device path = "/sys/devices/pci0000:00/0000:00:11.0/ata8/host7"
    uevent              = "DEVTYPE=scsi_host"

  Device = "host8"
  Device path = "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host8"
    uevent              = "DEVTYPE=scsi_host"

  Device = "target8:0:0"
  Device path = "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host8/target8:0:0"
    uevent              = "DEVTYPE=scsi_target"

# ls /sys/bus/scsi/drivers/sd/8:0:0:0/block/
sda

# ls /sys/devices/pci0000:00/0000:00:11.0
ata1
ata2
ata3
ata4
ata5
ata6
ata7
ata8
broken_parity_status
class
config
consistent_dma_mask_bits
d3cold_allowed
device
dma_mask_bits
driver
enable
firmware_node
iommu_group
irq
local_cpulist
local_cpus
modalias
msi_bus
msi_irqs
numa_node
power
remove
rescan
resource
resource0
resource1
resource2
resource3
resource4
resource5
subsystem
subsystem_device
subsystem_vendor
uevent
vendor
В выводах не видно твоего диска, а в выводе lsmod | grep ahci не видно одного модуля libata
Ded1997
# lsmod | grep ahci
ahci 25731 0
libahci 31364 1 ahci
Не видно модуля libata, смотрим зависимости
modinfo ahci | grep depends
depends: libahci,libata
ну и пройдемся до конца
смотрим libata
modinfo libata | grep depends
depends: scsi_mod
смотрим scsi_mod
modinfo scsi_mod | grep depends
depends:
Нужно также посмотреть и тебе, точнее проверить наличие этих зависимых модулей
lsmod | grep libata - но похоже точно нет, а значит пробовать его загрузить
# modprobe -v libata
-v для увеличения информативности. Если заругается, пробуй загрузить scsi_mod, а уж потом libata и в конце снова смотри lsmod | grep ahci .
Если все будет нормально, смотри будет ли виден твой диск. Если с модулем будет все нормально, а диска всеравно не будет, тогда нужно пробовать дать контроллеру команду «перечитать» список устройств (как это делать можешь почитать, например, здесь или погугли)

EDIT 1
Ded1997
Отключил лишние диски.
Может я что то перепутал и не так понял - это же model = "USB FLASH DRIVE " не искомый диск? - я правильно понял?
Ошибки не исчезают с опытом - они просто умнеют
Выполняю...
Ded1997, посмотри мое дополнение в части model = "USB FLASH DRIVE "
Ошибки не исчезают с опытом - они просто умнеют
vasek, да, это установочная флешка.
Не получилось. Модули вообще никакой информации не предоставили при запуске, спокойно, молча запустились. На echo "- - -" >/sys/class/scsi_host/hostX/scan я получил Invalid argument, хотя этот метод публикуется в различных гайдах этого года, до сих пор.
Ded1997
Не получилось. Модули вообще никакой информации не предоставили при запуске, спокойно, молча запустились.
Я так и не понял, все модули загрузились нормально? Смотри тогда вывод dmesg - грепай по ahci, libata, можно и SCSI - или каждый в отдельности или все вместе
dmesg | grep -E "libata|SCSI|ahci"
Если модули не загрузились, делать что то дальше бесполезно.
Ded1997
На echo "- - -" >/sys/class/scsi_host/hostX/scan я получил Invalid argument, хотя этот метод публикуется в различных гайдах этого года, до сих пор.
Все работает, проверил у себя
echo "- - -" > /sys/class/scsi_host/host0/scan
и смотрим вывод - # dmesg | tail
[ 5396.315766] ata1.00: ACPI cmd 00/00:00:00:00:00:a0 (NOP) rejected by device (Stat=0x51 Err=0x04)
[ 5396.316572] ata1.00: ACPI cmd 00/00:00:00:00:00:a0 (NOP) rejected by device (Stat=0x51 Err=0x04)
[ 5396.316677] ata1.00: configured for UDMA/100
[ 5396.326937] ata1: EH complete
[ 5451.857881] ata1: hard resetting link
[ 5452.171840] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 5452.172561] ata1.00: ACPI cmd 00/00:00:00:00:00:a0 (NOP) rejected by device (Stat=0x51 Err=0x04)
[ 5452.173366] ata1.00: ACPI cmd 00/00:00:00:00:00:a0 (NOP) rejected by device (Stat=0x51 Err=0x04)
[ 5452.173470] ata1.00: configured for UDMA/100
[ 5452.183665] ata1: EH complete
По идее конечно нужно давать эту команду для конкретного устройства, т. е.
echo "scsi add-single-device H B T L " > /proc/scsi/scsi
где
H = Host контроллер
B = Bus шина
T = Target "цель"
L = LUN (номер устройства)
А вот когда устройство не известно, то или перебирают все HOST (есть даже скрипт перебора), но советуют и ту, что применил ты.
Не понятно что у тебя или контроллер что то путает или система что то не понимает ..... или может все-таки модуль ahci не загрузился полностью?
Смотри подробно все логи. А так одно гадание.
UPD - можно еще попытаться поиграться с параметром libata.force= - значения ищи сам, на память не помню.
Ошибки не исчезают с опытом - они просто умнеют
Ded1997
echo "- - -" >/sys/class/scsi_host/hostX/scan
а почему hostX - только сейчас заметил, конечно будет инвалид. Перебери все HOST -0, 1, 2 ....

Смотри как запускал я - echo "- - -" > /sys/class/scsi_host/host0/scan - я знаю точно, что у меня HDD на HOST 0
Ошибки не исчезают с опытом - они просто умнеют
vasek, я их перебирал, пробелы между знаками оставлял, ок, попробую ещё раз.
 
Зарегистрироваться или войдите чтобы оставить сообщение.