Rescan linux scsi disks

Rescan linux scsi disks

NAME

rescan-scsi-bus.sh - rescan the SCSI bus.

SYNOPSIS

rescan-scsi-bus.sh [ -l ] [ -w ] [ -c ] [ -r ] [ host. ]

DESCRIPTION

rescan-scsi-bus.sh is a program that is used to rescan the SCSI bus using the SCSI add- single-device feature of the Linux SCSI layer.

OPTIONS

-l Activates scanning for LUNs 0 .. 7 (default: 0). -L NUM Activates scanning for LUNs 0 .. LUN (default: 0). --luns=LIST Scan only LUNs in LIST. -w Enables scanning for device IDs 0 .. 15 (default: 0 .. 7). --ids=LIST Scan only device IDs in LIST. -i, --issue-lip Issue a FibreChannel LIP reset (default: disabled). -r, --remove Enables removing of devices (default: disabled). --forceremove Remove and readd every device (dangerous). -c Enables scanning of channels 0 1 (default: 0). --channels=LIST Scan only channels in LIST. host, --hosts=LIST If host adapters are given, only these are scanned (default: all). --nooptscan Don't stop looking for LUNs if 0 is not found. --color Use coloured prefixes OLD/NEW/DEL. LIST is a comma separated list of single values and ranges (no spaces allowed), e.g. 0,2-3,8,10-15.

AUTHOR

AVAILABILITY

rescan-scsi-bus.sh is available from http://www.garloff.de/kurt/linux/scsidev/ March 1998 RESCAN-SCSI-BUS.SH(8)

© 2019 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.

Источник

🐧 Как сканировать / обнаруживать новые LUN и SCSI-диски на Linux

Когда система Linux подключена к SAN (Storage Area Network), вам необходимо повторно просканировать службу iSCSI, чтобы обнаружить новые LUN.

Для этого вы должны предоставить группе хранения данных номер WWN хоста Linux и требуемый размер LUN.

После того, как группа хранения сопоставит LUN с заданным хостом Linux, они предоставят вам новые сведения о LUN.

LUN в терминах хранения называется последовательным шестнадцатеричным номером LUN.

Вам необходимо просканировать хост SCSI, чтобы найти новые LUN, назначенные группой хранения.

Это можно сделать двумя способами: сканировать каждое хост-устройство scsi или запустить скрипт rescan-scsi-bus.sh для обнаружения новых дисков.

Читайте также:  Astra linux devel smolensk

После сканирования их можно будет найти в каталоге «/dev/disk/by-id».

# ll /dev/disk/by-id total 0 lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684b -> ../../sdah lrwxrwxrwx 1 root root 9 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684c -> ../../sdw . . lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684d -> ../../sdjk lrwxrwxrwx 1 root root 10 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684e -> ../../sdaa lrwxrwxrwx 1 root root 9 Jul 9 17:52 scsi-60a98000486e542d4f5a2f47694d684f -> ../../sdh

Кроме того, вы можете найти их с помощью команды Multipath, если они уже настроены с Multipath.

Multipath в основном настраивается на сервере базы данных Oracle для повышения производительности.

# multipath -ll 60a98000486e542d4f5a2f47694d684b dm-37 NETAPP,LUN C-Mode size=512G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='round-robin 0' prio=50 status=active | |- 1:0:4:18 sdoe 128:416 active ready running | |- 0:0:4:18 sdpq 131:256 active ready running | |- 0:0:5:18 sdsr 135:496 active ready running | `- 1:0:5:18 sdsq 135:480 active ready running `-+- policy='round-robin 0' prio=10 status=enabled |- 1:0:1:18 sdfw 131:32 active ready running |- 1:0:0:18 sdci 69:96 active ready running |- 0:0:1:18 sdbz 68:208 active ready running |- 0:0:0:18 sds 65:32 active ready running |- 1:0:3:18 sdmd 69:336 active ready running |- 1:0:2:18 sdjj 8:464 active ready running |- 0:0:3:34 sdjt 65:368 active ready running `- 0:0:2:34 sdgi 131:224 active ready running

Эта процедура работает в системах на базе Red Hat 6.x, 7.x и 8.x (RHEL – Red Hat Enterprise Linux), таких как CentOS и Oracle Linux.

Метод 1: Как найти новые LUN и SCSI-диски в Linux с помощью файла класса «/ sys»

Файловая система sysfs – это псевдофайловая система, которая предоставляет интерфейс для структур данных ядра.

Файлы в sysfs предоставляют информацию об устройствах, модулях ядра, файловых системах и других компонентах ядра.

Файловая система sysfs обычно монтируется в «/sys».

Обычно она устанавливается системой автоматически.

Вы можете использовать команду echo для сканирования каждого хост-устройства scsi, как показано ниже.

# echo "- - -" > /sys/class/scsi_host/host[n]/scan

Когда вы запускаете указанную выше команду для повторного сканирования всего, три тире («- – -») относятся к параметру подстановочного знака.

# echo "c t l" > /sys/class/scsi_host/host[n]/scan
  • c – Канал на HBA
  • t – целевой идентификатор SCSI
  • l – LUN ID
  • n – номер HBA

Выполните приведенную ниже команду, чтобы найти все номера хост-шины в вашей системе.

# ls /sys/class/scsi_host host0 host1 host2

Как только вы получите номер хост-шины, выполните следующую команду, чтобы обнаружить новые диски.

# echo "- - -" > /sys/class/scsi_host/host0/scan # echo "- - -" > /sys/class/scsi_host/host1/scan # echo "- - -" > /sys/class/scsi_host/host2/scan

Кроме того, их можно просканировать с помощью «цикла for» с помощью одной команды.

# for host in ls /sys/class/scsi_host/;do echo "- - -" >/sys/class/scsi_host/$/scan; done

Вы можете проверить их с помощью команды ls, как упоминалось в начале статьи.

# ls /dev/disk/by-id | grep -i "serial-hex of LUN"

Метод 2: Как просканировать новые LUN и SCSI-диски в Linux с помощью скрипта

Убедитесь, что вы уже установили пакет «sg3_utils», чтобы использовать этот сценарий. В противном случае выполните следующую команду, чтобы установить его.

Читайте также:  Ttf microsoft linux ubuntu

Для систем RHEL/CentOS 6/7 используйте команду yum для установки sg3_utils.

Для систем RHEL / CentOS 8 и Fedora используйте команду dnf для установки sg3_utils.

Источник

Linux Rescan SCSI Bus

If you have added one to many disks to a Linux server or added partitions to an existing disk and the operating system has not yet recognized them, you might need to rescan the SCSI bus. You could simply reboot the Linux server, but that’s usually not an option for production systems.

Below are three different methods for rescanning SCSI devices that I have tested on RHEL 5 and RHEL 6.

Rescan Specific SCSI Device

This command consistently rescanned the specific SCSI device.

Replace $DEVICE with sda, sdb, sdc, etc.

echo 1 > /sys/block/$DEVICE/device/rescan 

Rescan Entire Host SCSI Bus

This command never consistently rescanned the host SCSI bus.

Replace $HOST with the SCSI host you want to scan which could be host0, host1, host2, etc. Typically $HOST is host0.

echo "- - -" > /sys/class/scsi_host/$HOST/scan 

The triple dashes, — — —, are wildcards that rescan every channel, every target, and every LUN on the specified SCSI host.

Rescan Specific SCSI Device (Deprecated)

This command never consistently rescanned the specific SCSI bus, and it has been deprecated by Red Hat.

Host:Bus:Target:LUN (0:0:2:0 in this example) might be different for your system. Run ls -al /dev/disk/by-path to find it.

echo "scsi remove-single-device 0:0:2:0" > /proc/scsi/scsi echo "scsi add-single-device 0:0:2:0" > /proc/scsi/scsi 

References

If you found this post useful and would like to help support this site — and get something for yourself — sign up for any of the services listed below through the provided affiliate links. I will receive a referral payment from any of the services you sign-up for.

Читайте также:  Run sql on linux

Get faster shipping and more with Amazon Prime: About to order something from Amazon but want to get more value out of the money you would normally pay for shipping? Sign-up for a free 30-day trial of Amazon Prime to get free two-day shipping, access to thousands of movies and TV shows, and more.

Thanks for reading and take care.

Источник

Linux: Rescan for new and changes of devices

Additionally , resize the filesystem to the maximum size. 2 steps necessary. Increase the partition and then the filesystem. Be sure your backup is up to date!
Delete (YES DELETE, you just edit the partition table. That is no problem if you do not call mkfs.ext4)the current partition and create a new with the maximum size. Get the old partition info by fdisk especially the start block of the partition.

root@debdev # fdisk -l Disk /dev/sdb: 214.7 GB, 214748364800 bytes 255 heads, 63 sectors/track, 26108 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x1649ccd6 Device Boot Start End Blocks Id System /dev/sdb1 1 13054 104856223+ 83 Linux

Delete Partition 1 (command d) and create a new primary partition (command n) at the same start block(cylinder). In this example Block 1

root@debdev # umount /deb/sdb1 root@debdev # fdisk /dev/sdb Command (m for help): d Selected partition 1 Command (m for help): n Partition number (1-4): 1 First cylinder (1-26108, default 1): 1 Last cylinder: Command (m for help): p Disk /dev/sdb: 214.7 GB, 214748364800 bytes 255 heads, 63 sectors/track, 26108 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x1649ccd6 Device Boot Start End Blocks Id System /dev/sdb1 1 26108 209712478+ 83 Linux Command (m for help): w The partition table has been altered! root@debdev # partx /dev/sdb

Or use growpart. This command grows partition 1 (if it is the last partition on the disk) to the maximum size

root@debdev # growpart /dev/sda 1

Check volume integrity and resize the filesystem.

root@debdev # e2fsck -f /dev/sdb1 root@debdev # resize2fs -p /dev/sdb1

Источник

Оцените статью
Adblock
detector