→ Applies to: SynetoOS 4.x
Step 1. Connect to SynetoOS appliance via SSH as admin
ssh admin@<your_ip_address_or_hostname>
Step 2. Change into Solaris shell (in case you're directed to an unsupported shell)
un sh
Step 3. Remove this file
rm ~admin/ .bash_profile
After running the command, you need to perform logout and login again
Step 4. Get root privileges
sudo su -
Step 5. Check pool status
zpool status
EXAMPLE
pool: hybrid id: 2909731745170149149 state: DEGRADED status: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state. action: Wait for the resilver to complete. scan: resilver in progress since Wed May 14 01:01:49 2025 2.67T scanned at 117M/s, 2.64T issued at 116M/s, 3.77T total 1.31T resilvered, 70.15% done, 0 days 02:49:15 to go config: NAME STATE READ WRITE CKSUM hybrid DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c0t5000C500E2D7E32Bd0 ONLINE 0 0 0 spare-1 FAULTED 0 0 0 c0t5000C500CEB66C17d0 FAULTED 0 0 0 too many errors c0t5000C500CEB4390Fd0 ONLINE 0 0 0 mirror-1 ONLINE 0 0 0 c0t5000C500DDEBF05Bd0 ONLINE 0 0 0 c0t5000C500CEE6FD63d0 ONLINE 0 0 0 logs mirror-2 ONLINE 0 0 0 c0t5002538E19C2C994d0 ONLINE 0 0 0 c0t5002538E19C2C96Bd0 ONLINE 0 0 0 cache c0t55CD2E4151DAF0D0d0 ONLINE 0 0 0 spares c0t5000C500CEB4390Fd0 INUSE currently in use errors: No known data errors
Step 6. Check iostat error
iostat -nE |grep Error
EXAMPLE
root@syneto:/var/storage/support# iostat -nE | grep Errors c1t0d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 c2t0d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 c2t1d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 c0t5000C5009A63A607d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 c0t5000C5009A4EEBCBd0 Soft Errors: 0 Hard Errors: 56 Transport Errors: 1 c0t5000C5009A3C8BBFd0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0 c0t5000C500C254BF03d0 Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
IMPORTANT
If the counters from the iostat -nE command show a value of zero for each device, it will be necessary to perform the Step 7 (optional).
If the counters from the iostat -nE command show a value different from 0 for any device, it will be necessary to perform Step 8 (optional)
Step 7 (optional). Clear pool error (replace <pool_name> with the correct information)
zpool clear <pool_name>
IMPORTANT
This command should be run outside of working hours.
The system will not be blocked, but cleaning operations may slow it down.
Step 8 (optional). Create /tmp/run_smart_tests.sh file
vi /tmp/run_smart_tests.sh
IMPORTANT
Make sure to copy and paste the exact lines below.#!/bin/bash output_file="/tmp/smart_results.txt" > "$output_file" RED=$(tput setaf 1) YELLOW=$(tput setaf 3) GREEN=$(tput setaf 2) RESET=$(tput sgr0) echo "Running SMART tests on disks..." for disk in $(smartctl --scan | awk '{print $1}'); do echo "SMART analysis for $disk..." # Full SMART acquisition smart_output=$(smartctl -a "$disk") echo "$smart_output" >> "$output_file" # Data extraction serial=$(echo "$smart_output" | grep -i "Serial number" | awk -F: '{print $2}' | xargs) health=$(echo "$smart_output" | grep -i "SMART Health Status" | awk -F: '{print $2}' | xargs) defects=$(echo "$smart_output" | grep -i "grown defect list" | awk '{print $NF}') nonmedium=$(echo "$smart_output" | grep -i "Non-medium error count" | awk '{print $NF}') read_errors=$(echo "$smart_output" | grep -i "^read:" | awk '{print $2}') write_errors=$(echo "$smart_output" | grep -i "^write:" | awk '{print $2}') # Estimated wear via load-unload cycles specified=$(echo "$smart_output" | grep -i "Specified load-unload" | awk '{print $NF}') accumulated=$(echo "$smart_output" | grep -i "Accumulated load-unload" | awk '{print $NF}') if [[ "$specified" =~ ^[0-9]+$ ]] && [[ "$accumulated" =~ ^[0-9]+$ ]]; then usage_percent=$((100 * accumulated / specified)) life_left=$((100 - usage_percent)) else usage_percent="N/A" life_left="N/A" fi # Color based on remaining life color=$GREEN if [[ "$life_left" =~ ^[0-9]+$ ]]; then if [ "$life_left" -lt 75 ]; then color=$RED elif [ "$life_left" -lt 90 ]; then color=$YELLOW fi fi echo -e "${color}Disk: $disk (Serial: ${serial:-N/A})${RESET}" echo -e " - SMART health status: ${health:-N/A}" echo -e " - Estimated remaining life: ${life_left}%" echo -e " - Grown Defect List: ${defects:-N/A}" echo -e " - Read errors: ${read_errors:-N/A}" echo -e " - Write errors: ${write_errors:-N/A}" echo -e " - Non-medium errors: ${nonmedium:-N/A}" echo "" done
Step 9 (optional). Run run_smart_tests.sh
chmod +x run_smart_tests.sh
./run_smart_tests.sh
The result will be saved in the file
/tmp/smart_results.txt
.
Only in case of error, contact Syneto support to proceed with disk replacement.