부팅 시 외부 USB 3 HDD(Seagate Backup Plus 1T)가 연결된 경우 Debian 테스트 시스템의 Initramfs가 필요한 커널 모듈을 자동으로 로드하지 못합니다. initramfs 쉘로 부팅하면 케이블을 뽑았다가 다시 연결하면 장치가 표시되고 마운트할 수 있습니다.
initramfs에는 이 장치가 필요하지 않지만 /dev/
initramfs에 의해 생성된 파일 시스템은 필요한 기본 OS로 전달됩니다. 장치를 사용하려면 케이블을 꽂았다가 뽑아야 합니다.
이 장치를 마운트하기 위해 initramfs를 어떻게 설정합니까?아니면 하드웨어 버스를 통과하여 udev가 놓친 initramfs의 모든 장치를 처리하도록 기본 OS에 어떻게 지시합니까?
추가 정보
장치를 껐다가 켜면 두 개의 새 모듈이 로드됩니다.
# lsmod
Module Size Used by
uas 24576 0
usb_storage 69632 1 uas
다음 모듈은 initramfs 이미지에서 사용할 수 있습니다.
# lsinitramfs /boot/initrd.img-4.6.0-1-amd64 |grep -E '(uas|usb-storage)'
lib/modules/4.6.0-1-amd64/kernel/drivers/usb/storage/usb-storage.ko
lib/modules/4.6.0-1-amd64/kernel/drivers/usb/storage/uas.ko
uname
, 장치 출력을 연결한 후 dmesg
:lsusb
# uname -a
Linux pingwin 4.6.0-1-amd64 #1 SMP Debian 4.6.4-1 (2016-07-18) x86_64 GNU/Linux
# dmesg
[ 53.412599] usb 2-2: new SuperSpeed USB device number 2 using xhci_hcd
[ 53.429652] usb 2-2: New USB device found, idVendor=0bc2, idProduct=ab24
[ 53.429659] usb 2-2: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 53.429662] usb 2-2: Product: BUP Slim BK
[ 53.429664] usb 2-2: Manufacturer: Seagate
[ 53.429667] usb 2-2: SerialNumber: NA7K016V
[ 53.455444] usbcore: registered new interface driver usb-storage
[ 53.458787] scsi host6: uas
[ 53.458962] usbcore: registered new interface driver uas
[ 53.459440] scsi 6:0:0:0: Direct-Access Seagate BUP Slim BK 0302 PQ: 0 ANSI: 6
[ 53.497569] sd 6:0:0:0: Attached scsi generic sg2 type 0
[ 53.497586] sd 6:0:0:0: [sdb] Spinning up disk...
[ 54.503950] ...ready
[ 56.518071] sd 6:0:0:0: [sdb] 1953525167 512-byte logical blocks: (1.00 TB/932 GiB)
[ 56.518077] sd 6:0:0:0: [sdb] 2048-byte physical blocks
[ 56.687950] sd 6:0:0:0: [sdb] Write Protect is off
[ 56.687960] sd 6:0:0:0: [sdb] Mode Sense: 4f 00 00 00
[ 56.688242] sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 56.699372] sdb: sdb1
[ 56.700399] sd 6:0:0:0: [sdb] Attached SCSI disk
# lsusb -v -d 0bc2:ab24
Bus 004 Device 002: ID 0bc2:ab24 Seagate RSS LLC
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 9
idVendor 0x0bc2 Seagate RSS LLC
idProduct 0xab24
bcdDevice 1.00
iManufacturer 2 Seagate
iProduct 3 BUP Slim BK
iSerial 1 NA7K016V
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 121
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 36mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 4
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 98
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Data-in pipe (0x03)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Data-out pipe (0x04)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Status pipe (0x02)
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 0
Command pipe (0x01)
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 22
bNumDeviceCaps 2
USB 2.0 Extension Device Capability:
bLength 7
bDescriptorType 16
bDevCapabilityType 2
bmAttributes 0x00000002
Link Power Management (LPM) Supported
SuperSpeed USB Device Capability:
bLength 10
bDescriptorType 16
bDevCapabilityType 3
bmAttributes 0x00
wSpeedsSupported 0x000e
Device can operate at Full Speed (12Mbps)
Device can operate at High Speed (480Mbps)
Device can operate at SuperSpeed (5Gbps)
bFunctionalitySupport 1
Lowest fully-functional device speed is Full Speed (12Mbps)
bU1DevExitLat 10 micro seconds
bU2DevExitLat 2047 micro seconds
Device Status: 0x000c
(Bus Powered)
U1 Enabled
U2 Enabled
udevadm
initramfs 및 작업 시스템의 출력(거의 동일하며 유일한 차이점은 , stat
및 iodone_cnt
입니다 ) :ioerr_cnt
iorequest_cnt
urbnum
# udevadm info -a -p /sys/block/sdb on initramfs
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0/6:0:0:0/block/sdb':
KERNEL=="sdb"
SUBSYSTEM=="block"
DRIVER==""
ATTR{alignment_offset}=="0"
ATTR{badblocks}==""
ATTR{capability}=="50"
ATTR{discard_alignment}=="0"
ATTR{events}==""
ATTR{events_async}==""
ATTR{events_poll_msecs}=="-1"
ATTR{ext_range}=="256"
ATTR{inflight}==" 0 0"
ATTR{range}=="16"
ATTR{removable}=="0"
ATTR{ro}=="0"
ATTR{size}=="1953525167"
ATTR{stat}==" 72 0 4254 232 0 0 0 0 0 136 232"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0/6:0:0:0':
KERNELS=="6:0:0:0"
SUBSYSTEMS=="scsi"
DRIVERS=="sd"
ATTRS{device_blocked}=="0"
ATTRS{device_busy}=="0"
ATTRS{dh_state}=="detached"
ATTRS{eh_timeout}=="10"
ATTRS{evt_capacity_change_reported}=="0"
ATTRS{evt_inquiry_change_reported}=="0"
ATTRS{evt_lun_change_reported}=="0"
ATTRS{evt_media_change}=="0"
ATTRS{evt_mode_parameter_change_reported}=="0"
ATTRS{evt_soft_threshold_reached}=="0"
ATTRS{inquiry}==""
ATTRS{iocounterbits}=="32"
ATTRS{iodone_cnt}=="0x7a"
ATTRS{ioerr_cnt}=="0x8"
ATTRS{iorequest_cnt}=="0x7a"
ATTRS{model}=="BUP Slim BK "
ATTRS{queue_depth}=="30"
ATTRS{queue_type}=="simple"
ATTRS{rev}=="0302"
ATTRS{scsi_level}=="7"
ATTRS{state}=="running"
ATTRS{timeout}=="30"
ATTRS{type}=="0"
ATTRS{vendor}=="Seagate "
ATTRS{vpd_pg80}==""
ATTRS{vpd_pg83}==""
ATTRS{wwid}=="naa.5000000000000001"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0':
KERNELS=="target6:0:0"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6':
KERNELS=="host6"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0':
KERNELS=="4-2:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="uas"
ATTRS{authorized}=="1"
ATTRS{bAlternateSetting}==" 1"
ATTRS{bInterfaceClass}=="08"
ATTRS{bInterfaceNumber}=="00"
ATTRS{bInterfaceProtocol}=="62"
ATTRS{bInterfaceSubClass}=="06"
ATTRS{bNumEndpoints}=="04"
ATTRS{supports_autosuspend}=="0"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2':
KERNELS=="4-2"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="9"
ATTRS{bMaxPower}=="144mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bcdDevice}=="0100"
ATTRS{bmAttributes}=="80"
ATTRS{busnum}=="4"
ATTRS{configuration}==""
ATTRS{devnum}=="2"
ATTRS{devpath}=="2"
ATTRS{idProduct}=="ab24"
ATTRS{idVendor}=="0bc2"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Seagate"
ATTRS{maxchild}=="0"
ATTRS{product}=="BUP Slim BK"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="removable"
ATTRS{serial}=="NA7K016V"
ATTRS{speed}=="5000"
ATTRS{urbnum}=="371"
ATTRS{version}==" 3.00"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4':
KERNELS=="usb4"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{authorized_default}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="09"
ATTRS{bDeviceProtocol}=="03"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="9"
ATTRS{bMaxPower}=="0mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bcdDevice}=="0406"
ATTRS{bmAttributes}=="e0"
ATTRS{busnum}=="4"
ATTRS{configuration}==""
ATTRS{devnum}=="1"
ATTRS{devpath}=="0"
ATTRS{idProduct}=="0003"
ATTRS{idVendor}=="1d6b"
ATTRS{interface_authorized_default}=="1"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Linux 4.6.0-1-amd64 xhci-hcd"
ATTRS{maxchild}=="4"
ATTRS{product}=="xHCI Host Controller"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="unknown"
ATTRS{serial}=="0000:00:14.0"
ATTRS{speed}=="5000"
ATTRS{urbnum}=="47"
ATTRS{version}==" 3.00"
looking at parent device '/devices/pci0000:00/0000:00:14.0':
KERNELS=="0000:00:14.0"
SUBSYSTEMS=="pci"
DRIVERS=="xhci_hcd"
ATTRS{broken_parity_status}=="0"
ATTRS{class}=="0x0c0330"
ATTRS{consistent_dma_mask_bits}=="64"
ATTRS{d3cold_allowed}=="1"
ATTRS{device}=="0x1e31"
ATTRS{dma_mask_bits}=="64"
ATTRS{driver_override}=="(null)"
ATTRS{enable}=="1"
ATTRS{irq}=="29"
ATTRS{local_cpulist}=="0-3"
ATTRS{local_cpus}=="0f"
ATTRS{msi_bus}=="1"
ATTRS{numa_node}=="-1"
ATTRS{subsystem_device}=="0x1949"
ATTRS{subsystem_vendor}=="0x103c"
ATTRS{vendor}=="0x8086"
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
SUBSYSTEMS==""
DRIVERS==""
# udevadm info -a -p /sys/block/sdb on booted system
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0/6:0:0:0/block/sdb':
KERNEL=="sdb"
SUBSYSTEM=="block"
DRIVER==""
ATTR{alignment_offset}=="0"
ATTR{badblocks}==""
ATTR{capability}=="50"
ATTR{discard_alignment}=="0"
ATTR{events}==""
ATTR{events_async}==""
ATTR{events_poll_msecs}=="-1"
ATTR{ext_range}=="256"
ATTR{inflight}==" 0 0"
ATTR{range}=="16"
ATTR{removable}=="0"
ATTR{ro}=="0"
ATTR{size}=="1953525167"
ATTR{stat}==" 72 0 4254 328 0 0 0 0 0 272 328"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0/6:0:0:0':
KERNELS=="6:0:0:0"
SUBSYSTEMS=="scsi"
DRIVERS=="sd"
ATTRS{device_blocked}=="0"
ATTRS{device_busy}=="0"
ATTRS{dh_state}=="detached"
ATTRS{eh_timeout}=="10"
ATTRS{evt_capacity_change_reported}=="0"
ATTRS{evt_inquiry_change_reported}=="0"
ATTRS{evt_lun_change_reported}=="0"
ATTRS{evt_media_change}=="0"
ATTRS{evt_mode_parameter_change_reported}=="0"
ATTRS{evt_soft_threshold_reached}=="0"
ATTRS{inquiry}==""
ATTRS{iocounterbits}=="32"
ATTRS{iodone_cnt}=="0xd1"
ATTRS{ioerr_cnt}=="0x48"
ATTRS{iorequest_cnt}=="0xd1"
ATTRS{model}=="BUP Slim BK "
ATTRS{queue_depth}=="30"
ATTRS{queue_type}=="simple"
ATTRS{rev}=="0302"
ATTRS{scsi_level}=="7"
ATTRS{state}=="running"
ATTRS{timeout}=="30"
ATTRS{type}=="0"
ATTRS{vendor}=="Seagate "
ATTRS{vpd_pg80}==""
ATTRS{vpd_pg83}==""
ATTRS{wwid}=="naa.5000000000000001"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6/target6:0:0':
KERNELS=="target6:0:0"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0/host6':
KERNELS=="host6"
SUBSYSTEMS=="scsi"
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2/4-2:1.0':
KERNELS=="4-2:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="uas"
ATTRS{authorized}=="1"
ATTRS{bAlternateSetting}==" 1"
ATTRS{bInterfaceClass}=="08"
ATTRS{bInterfaceNumber}=="00"
ATTRS{bInterfaceProtocol}=="62"
ATTRS{bInterfaceSubClass}=="06"
ATTRS{bNumEndpoints}=="04"
ATTRS{supports_autosuspend}=="0"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4/4-2':
KERNELS=="4-2"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="00"
ATTRS{bDeviceProtocol}=="00"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="9"
ATTRS{bMaxPower}=="144mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bcdDevice}=="0100"
ATTRS{bmAttributes}=="80"
ATTRS{busnum}=="4"
ATTRS{configuration}==""
ATTRS{devnum}=="2"
ATTRS{devpath}=="2"
ATTRS{idProduct}=="ab24"
ATTRS{idVendor}=="0bc2"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Seagate"
ATTRS{maxchild}=="0"
ATTRS{product}=="BUP Slim BK"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="removable"
ATTRS{serial}=="NA7K016V"
ATTRS{speed}=="5000"
ATTRS{urbnum}=="592"
ATTRS{version}==" 3.00"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb4':
KERNELS=="usb4"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{authorized_default}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="09"
ATTRS{bDeviceProtocol}=="03"
ATTRS{bDeviceSubClass}=="00"
ATTRS{bMaxPacketSize0}=="9"
ATTRS{bMaxPower}=="0mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 1"
ATTRS{bcdDevice}=="0406"
ATTRS{bmAttributes}=="e0"
ATTRS{busnum}=="4"
ATTRS{configuration}==""
ATTRS{devnum}=="1"
ATTRS{devpath}=="0"
ATTRS{idProduct}=="0003"
ATTRS{idVendor}=="1d6b"
ATTRS{interface_authorized_default}=="1"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="Linux 4.6.0-1-amd64 xhci-hcd"
ATTRS{maxchild}=="4"
ATTRS{product}=="xHCI Host Controller"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="unknown"
ATTRS{serial}=="0000:00:14.0"
ATTRS{speed}=="5000"
ATTRS{urbnum}=="47"
ATTRS{version}==" 3.00"
looking at parent device '/devices/pci0000:00/0000:00:14.0':
KERNELS=="0000:00:14.0"
SUBSYSTEMS=="pci"
DRIVERS=="xhci_hcd"
ATTRS{broken_parity_status}=="0"
ATTRS{class}=="0x0c0330"
ATTRS{consistent_dma_mask_bits}=="64"
ATTRS{d3cold_allowed}=="1"
ATTRS{device}=="0x1e31"
ATTRS{dma_mask_bits}=="64"
ATTRS{driver_override}=="(null)"
ATTRS{enable}=="1"
ATTRS{irq}=="29"
ATTRS{local_cpulist}=="0-3"
ATTRS{local_cpus}=="0f"
ATTRS{msi_bus}=="1"
ATTRS{numa_node}=="-1"
ATTRS{subsystem_device}=="0x1949"
ATTRS{subsystem_vendor}=="0x103c"
ATTRS{vendor}=="0x8086"
looking at parent device '/devices/pci0000:00':
KERNELS=="pci0000:00"
SUBSYSTEMS==""
DRIVERS==""
# /etc/udev/udev.conf (the same on booted system and in initramfs)
# see udev.conf(5) for details
#
# udevd is started in the initramfs, so when this file is modified the
# initramfs should be rebuilt.
#udev_log="info"
디스크가 컴퓨터의 USB 3 포트에 연결되어 있는지 아니면 USB 2 포트에 연결되어 있는지는 중요하지 않습니다.
initramfs 초기화 전에 연결된 USB2 장치가 올바르게 인식되고 설정됩니다. 다른 USB 3 장치도 영향을 받는지 확인할 수 없습니다. 그러나 친구의 컴퓨터(Ubuntu 16.04 사용)에서 이 디스크를 사용해 볼 수 있었습니다. /dev/
부팅 후 문제가 해결되어 작동했습니다.
initramfs-tools를 통해 또는 dracut을 통해 initramfs를 생성하는지 여부는 중요하지 않습니다.
/dev/sdb*
부팅하기 전에 케이블이 연결되어 있더라도 완전히 부팅된 시스템에서 이 HDD와 관련된 콘텐츠를 사용할 수 있도록 하려면 어떻게 해야 합니까?
답변1
글쎄, 이것은 터무니없는 추측이자 해결 방법(그리고 문제에 대한 적절한 이해가 아님)이지만 작동할 것입니다.
예를 들어 udev
규칙 파일을 만들고 /etc/udev/rules.d/z30-seagate-disk.rules
다음 규칙을 추가합니다.
ATTRS{manufacturer}=="Seagate", ATTRS{product}=="BUP Slim BK", SYMLINK+="seagate"
이렇게 하면 두 번째 패스가 강제 실행 udev
되고 디스크가 /dev/seagate
블록 장치로 추가됩니다. 또한 파일 을 FILES
변수 /etc/mkinitcpio.conf
에 추가하여 initramfs
.mkinitcpio -p linux
initramfs
면책 조항: Debian이 아닌 Arch에서 테스트되었으며 USB 3.0을 사용하지 않았습니다.
uas
또 다른 해결 방법은 (USB SCSI)가 항상 커널에 의해 로드되도록 강제하는 것입니다 . 파일에 추가하고 /etc/modules-load.d/seagate-disk.conf
모듈 이름을 말하십시오.
uas
usb_storage
usbcore
scsi_mod
usb_common
이론적으로는 그게 전부 uas
이지만 문제를 재현할 수 없으므로 USB HDD를 관리하는 데 필요한 모든 것을 무차별 대입하려고 노력할 것입니다. FILES
에 파일을 다시 추가하십시오 /etc/mkinitcpio.conf
.
이렇게 하면 커널이 uas
항상 로드됩니다. 아마도 버스를 통해 실행될 때 udev
커널이 USB 모듈을 로드하지 않기 때문에 USB 허브/버스에 아무것도 로드되지 않았다고 잘못 가정할 수 있습니다.
답변2
포함을 편집 /etc/modules
하고 추가합니다 uas
.
그런 다음 실행합니다 update-initramfs
(예: 현재 실행 중인 커널 또는 설치된 모든 커널의 initramfs 업데이트 update-initramfs -u -k $(uname -r)
).-k all
/etc/modules
udev
나열된 모듈은 해당 모듈이 필요하다는 것을 다른 것이 감지하는지 여부에 관계없이 자동으로 로드됩니다.
이는 모듈이 로드되는 특정 순서를 강제로 적용하려는 경우에도 유용합니다. 따라서 이 모듈은 foo
항상 모듈보다 먼저 로드됩니다 bar
(물론 이전에 로드된 모듈이 이에 의존하지 않는 한 bar
).
로드하는 모든 모듈과 마찬가지로 modprobe
파일에서 로드 시간 옵션을 설정할 수 있습니다 /etc/modprobe.d/
.
예를 들어 다음과 같은 합계를 나열했습니다 spl
.zfs
/etc/modules
/etc/modprobe.d/zfs.conf
# use minimum 4GB and maxmum of 8GB RAM for ZFS ARC
options zfs zfs_arc_min=4294967296 zfs_arc_max=8589934592
모듈이 알고 있는 로드 시간 옵션을 알고 싶다면 modinfo [module] | grep parm
.module을 uas
사용하세요.