리눅스 운영체제 설치 완료 및 외장형 디스크를 연결한 후에 시스템을 재부팅을 하면 디스크의 순서가
변경되서 올라오는 경우가 있습니다..(PCI로 연결된 이더넷도 순서가 변경되서 올라오죠 아마..ㅜㅜ)
시스템이 재부팅 되면 Disk의 PCI 버스등 여러가지 X86 아키텍쳐상 가장 먼저 전기신호를 받고 감지된
디스크를 가장 우선순위에 두고 인식 하기 때문이겠죠, 관련해서 아래와 같이 디스크의 순서 즉 DISK Order에 대한 부분을 처리하는 Work Arround 입니다.
문제
- Originally the system has one local disk /dev/sda, then connected with a new external storage (a storage array or a fiber-channel or a SAS disk). After the system was booted up, the internal disk on the server were changed to /dev/sdb while the external disks on the fiber storage were now /dev/sda.
- How to control scsi device ordering during boot. For instance, having the local storage be mapped to sd names before the SAN storage. An example of this would /dev/sda being local and /dev/sdb being external.
- scsi order discovery between local RAID and HBA Qlogic
- Sometimes when we reboot a server which take part in cluster (and only this server currently), the boot hang because HBA Qlogic card is seen as scsi0 instead of local RAID and so no boot partition is available.
환경
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- SAN/Storage
해결
- There are various options that can help control individual device/path names:
- Specify a module load order. For example: if you are using the modules ips and qla2200 for internal and external storage and wanted ips module to load first, we could add something similar to the lines below in
/etc/modprobe.d/scsi-order.conf
install qla2200 { /sbin/modprobe ips; } ; /sbin/modprobe --first-time --ignore-install qla2200
Next it is important to rebuild your initramfs, which can be done by following the article below How do I rebuild the initial ramdisk image in Red Hat Enterprise Linux?.
Note:
scsi-order.conf
is a chosen name and can be changed to suit your needs.Specify the module load ordering in the bootloader, in
/boot/grub/grub.conf
. The following arguments simply needed to be appended to the kernel line.
rdloaddriver=ips,qla2200
For RHEL 6 there's another alternative: exclude modules from the initial ramdisk. For example: if you don't need SAN-based LUNs to boot the system (i.e. the root filesystem is local) you could configure
dracut
(the utility that maintainsinitramfs
) to omit the HBA modules. This would make local drives get the lower device names (sda, etc). This approach is explained in: How to remove a particular module from RHEL 6 kernel initrd ?.For a more generic version of this instruction please see How do I create initramfs using dracut on Red Hat Enterprise Linux 6?
[출처 : https://access.redhat.com/site/solutions/67778]
[참고 : https://access.redhat.com/site/solutions/44389]
[참고 : https://access.redhat.com/site/node/45626]
'Linux 이야기. > LInux Article.' 카테고리의 다른 글
Automatic NUMA Balancing에 대한 소개 (0) | 2014.04.14 |
---|---|
리눅스 LVM 사이즈 변경에 대한 절차 (0) | 2014.04.07 |
EMC ALUA Mode Multipath 구성 (0) | 2014.03.31 |
難攻不落(난공불락) 리눅스 및 오픈소스 인프라 세미나 발표양식 (0) | 2014.03.21 |
2014 難攻不落(난공불락) 리눅스 및 오픈소스 인프라 세미나 강사진 (2) | 2014.02.27 |