<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://kb.rvmgroup.it/index.php?action=history&amp;feed=atom&amp;title=Script_mappatura_dischi_HP_per_Zfs</id>
	<title>Script mappatura dischi HP per Zfs - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://kb.rvmgroup.it/index.php?action=history&amp;feed=atom&amp;title=Script_mappatura_dischi_HP_per_Zfs"/>
	<link rel="alternate" type="text/html" href="https://kb.rvmgroup.it/index.php?title=Script_mappatura_dischi_HP_per_Zfs&amp;action=history"/>
	<updated>2026-05-05T19:30:26Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://kb.rvmgroup.it/index.php?title=Script_mappatura_dischi_HP_per_Zfs&amp;diff=10291&amp;oldid=prev</id>
		<title>Gabriele.vivinetto: Created page with &quot;Questo script mappa i dischi HP per posizione fisica, seriale e device per uso con ZFS  &lt;pre&gt; #!/bin/bash  printf &quot;|%4s|%4s|%3s|%3s|%18s|%8s|%38s|\n&quot; SLOT PORT BOX BAY SERIAL...&quot;</title>
		<link rel="alternate" type="text/html" href="https://kb.rvmgroup.it/index.php?title=Script_mappatura_dischi_HP_per_Zfs&amp;diff=10291&amp;oldid=prev"/>
		<updated>2019-11-06T13:53:06Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Questo script mappa i dischi HP per posizione fisica, seriale e device per uso con ZFS  &amp;lt;pre&amp;gt; #!/bin/bash  printf &amp;quot;|%4s|%4s|%3s|%3s|%18s|%8s|%38s|\n&amp;quot; SLOT PORT BOX BAY SERIAL...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Questo script mappa i dischi HP per posizione fisica, seriale e device per uso con ZFS&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
printf &amp;quot;|%4s|%4s|%3s|%3s|%18s|%8s|%38s|\n&amp;quot; SLOT PORT BOX BAY SERIAL DEV SCSI&lt;br /&gt;
for SLOT in 0 2&lt;br /&gt;
	do&lt;br /&gt;
	for PD in $(ssacli controller slot=${SLOT} pd all show| tr -s &amp;#039; &amp;#039;| grep &amp;#039;^ physicaldrive&amp;#039;| cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
	do&lt;br /&gt;
		#echo SLOT=$SLOT&lt;br /&gt;
&lt;br /&gt;
		PORT=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ Port&amp;#039; | cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo PORT=$PORT&lt;br /&gt;
&lt;br /&gt;
		BOX=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ Box&amp;#039; | cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo BOX=$BOX&lt;br /&gt;
&lt;br /&gt;
		BAY=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ Bay&amp;#039; | cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo BAY=$BAY&lt;br /&gt;
&lt;br /&gt;
		SERIAL=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ Serial&amp;#039; | cut -f 4 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo SERIAL=$SERIAL&lt;br /&gt;
&lt;br /&gt;
		WWID=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ WWID&amp;#039; | cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo WWID=$WWID&lt;br /&gt;
&lt;br /&gt;
		#SCSI=$(echo $WWID | cut -c 4-)&lt;br /&gt;
		#SCSI=/dev/disk/by-id/scsi-35000$( printf &amp;quot;%x\n&amp;quot; $((0x${SCSI} - 0x1))	)&lt;br /&gt;
		#echo SCSI=$SCSI&lt;br /&gt;
&lt;br /&gt;
		DEV=$(ssacli controller slot=${SLOT} pd $PD show detail | tr -s &amp;#039; &amp;#039; | grep &amp;#039;^ Disk Name&amp;#039; | cut -f 4 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
		#echo DEV=$DEV&lt;br /&gt;
		&lt;br /&gt;
		SHORTDEV=$(echo $DEV| cut -f 3 --delimiter=&amp;#039;/&amp;#039;)&lt;br /&gt;
		#echo SHORTDEV=$SHORTDEV&lt;br /&gt;
&lt;br /&gt;
		SCSI=$( /bin/ls -l /dev/disk/by-id/| grep ${SHORTDEV}$ | tr -s &amp;#039; &amp;#039; | cut -f 9 --delimiter=&amp;#039; &amp;#039;| grep ^scsi)&lt;br /&gt;
		#echo SCSI=/dev/disk/by-id/$SCSI&lt;br /&gt;
		#echo &amp;quot;========================================&amp;quot;&lt;br /&gt;
printf &amp;quot;|%4s|%4s|%3s|%3s|%18s|%8s|%38s|\n&amp;quot; $SLOT $PORT $BOX $BAY $SERIAL $DEV &amp;quot;/dev/disk/by-id/$SCSI&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	: &amp;#039;&lt;br /&gt;
	Smart Array P440ar in Slot 0 (Embedded) (HBA Mode)&lt;br /&gt;
&lt;br /&gt;
	   HBA Drives&lt;br /&gt;
&lt;br /&gt;
		  physicaldrive 2I:6:7&lt;br /&gt;
&lt;br /&gt;
			 Port: 2I&lt;br /&gt;
			 Box: 6&lt;br /&gt;
			 Bay: 7&lt;br /&gt;
			 Status: OK&lt;br /&gt;
			 Drive Type: HBA Mode Drive&lt;br /&gt;
			 Interface Type: SAS&lt;br /&gt;
			 Size: 600 GB&lt;br /&gt;
			 Drive exposed to OS: True&lt;br /&gt;
			 Logical/Physical Block Size: 512/512&lt;br /&gt;
			 Rotational Speed: 10500&lt;br /&gt;
			 Firmware Revision: HPD1&lt;br /&gt;
			 Serial Number: WFJ1QS1C&lt;br /&gt;
			 WWID: 5000C500C15857BD&lt;br /&gt;
			 Model: HP      EG000600JWJNP&lt;br /&gt;
			 Current Temperature (C): 34&lt;br /&gt;
			 Maximum Temperature (C): 44&lt;br /&gt;
			 PHY Count: 2&lt;br /&gt;
			 PHY Transfer Rate: 12.0Gbps, Unknown&lt;br /&gt;
			 Drive Authentication Status: OK&lt;br /&gt;
			 Carrier Application Version: 11&lt;br /&gt;
			 Carrier Bootloader Version: 6&lt;br /&gt;
			 Disk Name: /dev/sdq &lt;br /&gt;
			 Mount Points: None&lt;br /&gt;
			 Sanitize Erase Supported: False&lt;br /&gt;
			 Shingled Magnetic Recording Support: None&lt;br /&gt;
	&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	# | grep -i &amp;#039;physicaldrive\|WWID&amp;#039;&lt;br /&gt;
	done&lt;br /&gt;
done&lt;br /&gt;
exit 1&lt;br /&gt;
&lt;br /&gt;
# /bin/ls -l /dev/disk/by-id/| grep scsi | grep sd.$ | sort -k 11 | tr -s &amp;#039; &amp;#039; |cut -f 9 # ./mappatura_dischi&lt;br /&gt;
,11 --delimiter=&amp;#039; &amp;#039;| sed -e &amp;#039;s_../../_/dev/_&amp;#039;&lt;br /&gt;
&lt;br /&gt;
echo CONTROLLER 1&lt;br /&gt;
ssacli controller slot=2 pd all show detail | grep -i &amp;#039;physicaldrive\|WWID&amp;#039;&lt;br /&gt;
&lt;br /&gt;
# zpool add DATA mirror /dev/disk/by-id/scsi-35000cca07d2e7090 /dev/disk/by-id/scsi-35000cca07d2fd30c &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DISKS=$(cat /proc/partitions | tr -s &amp;#039; &amp;#039;|cut -f 5 --delimiter=&amp;#039; &amp;#039;| grep -v &amp;#039;[0-9]$&amp;#039;| sort)&lt;br /&gt;
&lt;br /&gt;
for DISK in $DISKS&lt;br /&gt;
do&lt;br /&gt;
	SERIAL=$(smartctl -i /dev/$DISK | grep &amp;quot;Serial number&amp;quot; | tr -s &amp;#039; &amp;#039;| cut -f 3 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
	WWN=$(/bin/ls -l /dev/disk/by-id/ | grep $DISK | grep wwn | tr -s &amp;#039; &amp;#039; | cut -f 9 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
	SCSI=$(/bin/ls -l /dev/disk/by-id/ | grep $DISK | grep scsi | tr -s &amp;#039; &amp;#039; | cut -f 9 --delimiter=&amp;#039; &amp;#039;)&lt;br /&gt;
&lt;br /&gt;
	echo DISK   = /dev/$DISK&lt;br /&gt;
	echo SERIAL = $SERIAL&lt;br /&gt;
	echo WWN    = /dev/disk/by-id/$WWN&lt;br /&gt;
	echo SCSI   = /dev/disk/by-id/$SCSI&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L&amp;#039;output è tipo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
|SLOT|PORT|BOX|BAY|            SERIAL|     DEV|                                  SCSI|&lt;br /&gt;
|   0|  1I|  6|  1|          0BGV9DLF|/dev/sdj|/dev/disk/by-id/scsi-35000cca07d2fd3d4|&lt;br /&gt;
|   0|  1I|  6|  2|          0BGV9NMF|/dev/sdi|/dev/disk/by-id/scsi-35000cca07d2fd7b8|&lt;br /&gt;
|   0|  1I|  6|  3|          0BGV95RF|/dev/sdh|/dev/disk/by-id/scsi-35000cca07d2fd080|&lt;br /&gt;
|   0|  1I|  6|  4|          0BGUJS4F|/dev/sdg|/dev/disk/by-id/scsi-35000cca07d2e7090|&lt;br /&gt;
|   0|  2I|  6|  5|          0BGV9ZGF|/dev/sdk|/dev/disk/by-id/scsi-35000cca07d2fdc7c|&lt;br /&gt;
|   0|  2I|  6|  6|BTYM731104XC480BGN|/dev/sdl|/dev/disk/by-id/scsi-33001438042b7bd69|&lt;br /&gt;
|   0|  2I|  6|  7|          WFJ1QS1C|/dev/sdq|/dev/disk/by-id/scsi-35000c500c15857bf|&lt;br /&gt;
|   2|  1I|  4|  1|          0BGV2JHF|/dev/sdd|/dev/disk/by-id/scsi-35000cca07d2f6c9c|&lt;br /&gt;
|   2|  1I|  4|  2|          0BGV9MDF|/dev/sdc|/dev/disk/by-id/scsi-35000cca07d2fd720|&lt;br /&gt;
|   2|  1I|  4|  3|          0BGV62PF|/dev/sdb|/dev/disk/by-id/scsi-35000cca07d2fa1fc|&lt;br /&gt;
|   2|  1I|  4|  4|          0BGV9AZF|/dev/sda|/dev/disk/by-id/scsi-35000cca07d2fd30c|&lt;br /&gt;
|   2|  1I|  4|  5|          0BGV8PHF|/dev/sde|/dev/disk/by-id/scsi-35000cca07d2fc920|&lt;br /&gt;
|   2|  1I|  4|  6|BTYM7312071V480BGN|/dev/sdf|/dev/disk/by-id/scsi-33001438042e1d745|&lt;br /&gt;
|   2|  1I|  4|  7|          WFJ1XCA4|/dev/sdp|/dev/disk/by-id/scsi-35000c500c17080af|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lo slot è il controller, la Bay è il cassetto.&lt;br /&gt;
&lt;br /&gt;
Per creare un vdev mirror con i dischi 7 di due controller diversi:&lt;br /&gt;
  zpool add DATA mirror /dev/disk/by-id/scsi-35000c500c15857bf /dev/disk/by-id/scsi-350 ~&lt;br /&gt;
00c500c17080af&lt;br /&gt;
&lt;br /&gt;
In questo modo i mirror sono fatti con dischi su controller diversi ma nello stesso cassetto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  pool: DATA&lt;br /&gt;
 state: ONLINE&lt;br /&gt;
  scan: scrub repaired 0B in 7h10m with 0 errors on Sun Oct 13 07:34:24 2019&lt;br /&gt;
config:&lt;br /&gt;
&lt;br /&gt;
	NAME                              STATE     READ WRITE CKSUM&lt;br /&gt;
	DATA                              ONLINE       0     0     0&lt;br /&gt;
	  mirror-0                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fd3d4        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2f6c9c        ONLINE       0     0     0&lt;br /&gt;
	  mirror-2                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fd7b8        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fd720        ONLINE       0     0     0&lt;br /&gt;
	  mirror-3                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fd080        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fa1fc        ONLINE       0     0     0&lt;br /&gt;
	  mirror-4                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2e7090        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fd30c        ONLINE       0     0     0&lt;br /&gt;
	  mirror-5                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fdc7c        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000cca07d2fc920        ONLINE       0     0     0&lt;br /&gt;
	  mirror-6                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000c500c15857bf        ONLINE       0     0     0&lt;br /&gt;
	    scsi-35000c500c17080af        ONLINE       0     0     0&lt;br /&gt;
	logs&lt;br /&gt;
	  mirror-1                        ONLINE       0     0     0&lt;br /&gt;
	    scsi-33001438042b7bd69-part1  ONLINE       0     0     0&lt;br /&gt;
	    scsi-33001438042e1d745-part1  ONLINE       0     0     0&lt;br /&gt;
	cache&lt;br /&gt;
	  sdl2                            ONLINE       0     0     0&lt;br /&gt;
	  sdf2                            ONLINE       0     0     0&lt;br /&gt;
&lt;br /&gt;
errors: No known data errors&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Gabriele.vivinetto</name></author>
	</entry>
</feed>