AuroraAnea Posted March 11, 2023 Share Posted March 11, 2023 Hello, Hope everyone are having a good day! I have successfully been running quick smart checks on my drives using user scripts and this script: #!/bin/bash for i in {b..z}; do smartctl --test=short /dev/sd$i done But this only work with drives up to 25 (sdz) And i have 26 drives installed at the moment, which put the identifier up to sdaa, and the script doesn´t work if i set it as: #!/bin/bash for i in {b..aa}; do smartctl --test=short /dev/sd$i done Any hints on that i am doing wrong? Quote Link to comment
Solution apandey Posted March 11, 2023 Solution Share Posted March 11, 2023 try this instead #!/bin/bash for disk in $(lsblk -I8,65,66 -ndo name); do smartctl --test=short /dev/${disk} done it lists names of all devices using lsblk, where major device numbers as 8, 65 or 66 (sd*), then loops through them Quote Link to comment
AuroraAnea Posted March 11, 2023 Author Share Posted March 11, 2023 1 hour ago, apandey said: try this instead #!/bin/bash for disk in $(lsblk -I8,65,66 -ndo name); do smartctl --test=short /dev/${disk} done it lists names of all devices using lsblk, where major device numbers as 8, 65 or 66 (sd*), then loops through them Thanks for the quick reply, that solved it, does exactly what i needed. Thanks again and have a mighty fine day! Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.