---
title: "Diagnose and replace a defective disk"
sidebar_label: "Diagnose and replace a defective disk"
description: "How to check disk health and replace a disk if it is defective"
sidebar_position: 7
---

import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import {CustomTable} from '@selectel/docux/components'
import Formbricks from '@theme/MDXComponents/Formbricks'

# Diagnose and replace a defective disk

You can [check the drive status](#disk-check) using SMART (Self-Monitoring, Analysis and Reporting Technology) attributes. If the check confirms that the drive is faulty, you can [replace the faulty drive](#replace-disk).

## Check disk health \{#disk-check}

1. [Obtain SMART attributes](#obtain-smart-attributes).
2. [Assess SMART attribute values](#assess-smart-attribute-values).

### 1. Obtain SMART attributes \{#obtain-smart-attributes}

The method for obtaining SMART attributes depends on the operating system installed on the server and how the disk is connected to the server:

* without a RAID controller — the disk is connected directly to the motherboard or via an HBA controller;
* via a RAID controller — the disk is connected via an Adaptec or MegaRAID controller installed on the server.

<Tabs queryString="obtain-smart-attributes">
  <TabItem value="linux" default>
    <TabItemLabel>
      Linux
    </TabItemLabel>

    <Tabs queryString="smart-attributes-linux">
      <TabItem value="linux-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Install the `smartmontools` package — a set of utilities for monitoring the status of HDDs and SSDs that support SMART technology.

           ```bash
           apt-get install smartmontools
           ```

        3. Output the disk information:

           ```bash
           lsblk
           ```

           The response will contain information about the disks. Remember or copy the disk names. For example:

           ```bash
           NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
           sda           8:0    0   1.8T  0 disk
           └─sda1        8:1    0   1.8T  0 part /mnt/data
           sdb           8:16   0 931.5G  0 disk
           └─sdb1        8:17   0 931.5G  0 part /mnt/backup
           nvme0n1     259:0    0 465.8G  0 disk
           ├─nvme0n1p1 259:1    0   512M  0 part /boot/efi
           ├─nvme0n1p2 259:2    0    16G  0 part [SWAP]
           └─nvme0n1p3 259:3    0 449.3G  0 part /
           ```

           Here `sda`, `sdb`, `nvme0n1` are the disk names.

        4. Start reading SMART attributes. The command to run depends on the disk interface:

           * for SATA:

           ```bash
           smartctl -iA /dev/<disk_name>
           ```

           Specify `<disk_name>` — the disk name you copied in step 3.

           * for NVME:

           ```bash
           nvme smart-log /dev/<disk_name>
           ```

           Specify `<disk_name>` — the disk name you copied in step 3.
      </TabItem>

      <TabItem value="linux-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Install the `smartmontools` package — a set of utilities for monitoring the status of HDDs and SSDs that support SMART technology.

           ```bash
           apt-get install smartmontools
           ```

        3. Get the RAID controller numbers:

           ```bash
           arcconf LIST
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           Controllers found: 1
           ----------------------------------------------------------------------
           Controller information
           ----------------------------------------------------------------------
           Controller ID             : Status, Slot, Mode, Name, SerialNumber, WWN
           ----------------------------------------------------------------------
           Controller 1:             : Optimal, Slot 3, RAID, Adaptec SmartRAID, 0X00XXXX000, 50000D0000X01234
           ```

           Here `1` in the `Controller 1` value is the RAID controller number.

        4. Get the disk identifiers and channel numbers on which the disks are connected to the RAID controller:

           ```bash
           arcconf getconfig <raid_number>
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 3.

           The response will contain information about the disks. Remember or copy the disk identifiers and channel numbers. For example:

           ```bash
           ----------------------------------------------------------------------
           Physical Device information
           ----------------------------------------------------------------------
               Device #5
                   Device is a Hard drive
                   State                              : Online
                   Supported                          : Yes
                   Transfer Speed                     : SATA 3.0 Gb/s
                   Reported Channel,Device(T:L)       : 0,5(5:0)
           ```

           Here `Reported Channel,Device(T:L): 0,5(5,0)` is information about the disk connected to the controller, where:

           * `0` — the channel number of the controller to which the disk is connected;
           * `5` — the disk identifier on the controller.

        5. Get the logical SCSI device names:

           ```bash
           sg_map
           ```

           The response will contain a list of mappings between logical SCSI device names (`/dev/sg*`) and block disk names (`/dev/sd*`). Remember or copy the logical SCSI device names. For example:

           ```bash
           /dev/sg0  /dev/sda
           /dev/sg1  /dev/sdb
           ```

           Here `sg0`, `sg1` are the logical SCSI device names.

        6. Start reading SMART attributes:

           ```bash
           smartctl -iA -d aacraid,<raid_number>,<logical_unit_number>,<device_id> /dev/<scsi_name>
           ```

           Specify:

           * `<raid_number>` — the RAID controller number you copied in step 3;
           * `<logical_unit_number>` — the channel number with the disk, which you copied in step 4;
           * `<device_id>` — the disk identifier on the RAID controller, which you copied in step 4;
           * `<scsi_name>` — the logical SCSI device name you copied in step 5.
      </TabItem>

      <TabItem value="linux-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Install the `smartmontools` package — a set of utilities for monitoring the status of HDDs and SSDs that support SMART technology.

           ```bash
           apt-get install smartmontools
           ```

        3. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        4. Get the indices of the disks installed on the RAID controller:

           ```bash
           storcli /c<raid_number> show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 3.

           The response will contain information about the disks installed on the RAID controller. Remember or copy the disk indices. For example:

           ```bash
           Drive Information :
           ---------------------------------------------------------------------------------
           EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp Type
           ---------------------------------------------------------------------------------
           252:4    39 Onln   1 446.625 GB SATA SSD N   N  512B INTEL SSDSC2KB480G8 U  -
           252:5    40 Onln   0 893.750 GB SATA SSD N   N  512B INTEL SSDSC2KB960G8 U  -
           ---------------------------------------------------------------------------------
           ```

           Here the values `39`, `40` in the `DID` field are the disk indices.

        5. Get the names of the disks installed on the RAID controller:

           ```bash
           lsscsi
           ```

           The response will contain information about the disks installed on the RAID controller. Remember or copy the disk names. For example:

           ```bash
           [32:0:0:0]   disk    LSI      MR9271-8i        3.46  /dev/sda
           [32:1:0:0]   disk    LSI      MR9271-8i        3.46  /dev/sdb
           ```

           Here `sda`, `sdb` are the disk names.

        6. Start reading SMART attributes:

           ```bash
           smartctl -iA -d megaraid,<disk_index> /dev/<disk_name>
           ```

           Specify:

           * `<disk_index>` — the disk index you copied in step 4;
           * `<disk_name>` — the disk name you copied in step 5.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="windows">
    <TabItemLabel>
      Windows
    </TabItemLabel>

    <Tabs queryString="smart-attributes-windows">
      <TabItem value="windows-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Install [smartmontools](https://www.smartmontools.org/wiki/Download#InstalltheWindowspackage) — a set of utilities for monitoring the status of HDDs and SSDs that support SMART technology.

        3. Run PowerShell as an administrator.

        4. Output the disk information:

           ```bash
           smartctl --scan
           ```

           The response will contain information about the disks. Remember or copy the disk names. For example:

           ```bash
           /dev/sda -d ata # Kingston SSD
           /dev/sdb -d ata # Seagate HDD
           /dev/nvme0 -d nvme # Samsung NVMe
           ```

           Here `sda`, `sdb`, `nvme0` are the disk names.

        5. Start reading SMART attributes:

           ```bash
           smartctl -A /dev/<disk_name>
           ```

           Specify `<disk_name>` — the disk name you copied in step 4.
      </TabItem>

      <TabItem value="windows-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Download and install [Adaptec maxView Storage Manager](https://storage.microsemi.com/en-us/downloads/) — a graphical interface for managing and monitoring Adaptec RAID controllers. It can be used to view SMART attributes for each physical disk.

        3. Run maxView Storage Manager.

        4. In the **Enterprise View** menu, expand the list of disks for the required RAID controller.

        5. Select the disk.

        6. Open the SMART tab.
      </TabItem>

      <TabItem value="windows-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Download and install [StorCLI](https://techdocs.broadcom.com/us/en/storage-and-ethernet-connectivity/enterprise-storage-solutions/12gbs-megaraid-tri-mode-software/1-0/v11673309/v11673342/v11673407.html) — a utility for managing MegaRAID controllers.

        3. Run PowerShell as an administrator.

        4. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        5. Get the enclosure identifier and slot numbers where the disks are installed on the RAID controller:

           ```bash
           storcli /c<raid_number> /eall /sall show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 4.

           The response will contain information about the disks. Remember or copy the enclosure identifier and slot numbers. For example:

           ```bash
           Drive Information :

           ---------------------------------------------------------------------------------
           EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp Type
           ---------------------------------------------------------------------------------
           252:4    39 Onln   1 446.625 GB SATA SSD N   N  512B INTEL SSDSC2KB480G8 U  -
           252:5    40 Onln   0 893.750 GB SATA SSD N   N  512B INTEL SSDSC2KB960G8 U  -
           ---------------------------------------------------------------------------------
           ```

           Where:

           * the value `252` in the `EID` field is the enclosure identifier in which the disk is installed;
           * the values `4`, `5` in the `Slt` field are the slot numbers in the enclosure where the disk is installed.

        6. Start reading SMART attributes:

           ```bash
           storcli /c<raid_number> /e<enclosure_id> /s<slot_id> show all
           ```

           Specify:

           * `<enclosure_id>` — the enclosure identifier you copied in step 5;
           * `<slot_id>` — the slot number in the enclosure, which you copied in step 5.
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

### 2. Assess SMART attributes \{#assess-smart-attribute-values}

A disk is considered defective if at least one of the SMART attributes meets the specified conditions.

<Tabs queryString="assess-smart-attribute-values">
  <TabItem value="smart-hdd" default>
    <TabItemLabel>
      HDD disks
    </TabItemLabel>

    <CustomTable>
      <table>
        <tbody>
          <tr>
            <th />

            <th>Attribute description</th><th>Field</th><th>Attribute value</th>
          </tr>

          <tr>
            <th>5 Reallocated\_Sector\_Ct</th><td>Number of sectors reallocated due to errors</td><td>RAW\_VALUE</td><td>> 0</td>
          </tr>

          <tr>
            <th>7 Seek\_Error\_Rate</th><td>Error rate during positioning of the head assembly</td><td>VALUE</td><td>\< 45</td>
          </tr>

          <tr>
            <th>9 Power\_on\_hours</th><td>Power-on hours</td><td>RAW\_VALUE</td><td>> 43800</td>
          </tr>

          <tr>
            <th>10 Spin\_Retry\_Count</th><td>Number of retries to spin up the disk to operating speed if the first attempt failed</td><td>RAW\_VALUE</td><td>> 10</td>
          </tr>

          <tr>
            <th>197 Current\_Pending\_Sector</th><td>Number of sectors in the waiting queue for reallocation</td><td>RAW\_VALUE</td><td>> 0</td>
          </tr>

          <tr>
            <th>198 Offline\_Uncorrectable</th><td>Number of sectors on the disk that the disk controller tried to fix by itself</td><td>RAW\_VALUE</td><td>> 0</td>
          </tr>
        </tbody>
      </table>
    </CustomTable>
  </TabItem>

  <TabItem value="smart-ssd">
    <TabItemLabel>
      SSD disks
    </TabItemLabel>

    <CustomTable>
      <table>
        <tbody>
          <tr>
            <th />

            <th>Attribute description</th><th>Field</th><th>Attribute value</th>
          </tr>

          <tr>
            <th>175 Power Loss Protection Failure</th><td>Status of the mechanism that prevents data corruption during a sudden power loss</td><td>VALUE</td><td>\< 10</td>
          </tr>

          <tr>
            <th>184 End-to-End Error Detection Count</th><td>Number of errors detected during data transfer between the RAID controller and memory and back</td><td>RAW\_VALUE</td><td>> 9</td>
          </tr>

          <tr>
            <th>231 Life Left (SSDs) or Temperature</th><td>Percentage of remaining SSD life until the end of service life</td><td>VALUE</td><td>\< 11</td>
          </tr>

          <tr>
            <th>232 Available Reserved Space</th><td>Indicates that spare blocks for replacing damaged memory cells are almost exhausted</td><td>VALUE</td><td>\< 11</td>
          </tr>

          <tr>
            <th>233 Media Wearout Indicator</th><td>SSD flash memory wear level</td><td>VALUE</td><td>\< 11</td>
          </tr>
        </tbody>
      </table>
    </CustomTable>
  </TabItem>

  <TabItem value="smart-nvme">
    <TabItemLabel>
      NVME drives
    </TabItemLabel>

    <CustomTable>
      <table>
        <tbody>
          <tr>
            <th />

            <th>Attribute description</th><th>Attribute value</th>
          </tr>

          <tr>
            <th>Available Spare</th><td>Percentage of spare memory cells that can be used instead of those that have failed</td><td>\< 11</td>
          </tr>

          <tr>
            <th>Percentage Used</th><td>Memory wear level</td><td>> 105</td>
          </tr>

          <tr>
            <th>Media and Data Integrity Errors</th><td>Number of write or read errors on the media</td><td>> 0</td>
          </tr>
        </tbody>
      </table>
    </CustomTable>
  </TabItem>
</Tabs>

## Replace a defective disk \{#replace-disk}

You can determine if a drive is faulty by [checking the drive status](#disk-check). If [assessing SMART attributes](#assess-smart-attribute-values) shows that the drive is faulty, you can initiate a replacement. To do this:

1. [Obtain the serial number of the defective disk](#get-serial-number-of-defective-disk).
2. [Coordinate the disk replacement](#coordinate-disk-replacement).
3. If the disk is added to a RAID array, [remove the disk from the RAID array](#remove-disk-from-array).
4. [Illuminate the disk](#disk-light).
5. [Check the disk in the system](#check-disk-in-system).
6. If the disk was in a RAID array, [add the disk to the RAID array](#add-disk-to-array).

### 1. Obtain the serial number of the defective disk \{#get-serial-number-of-defective-disk}

<Tabs queryString="get-serial-number-of-defective-disk">
  <TabItem value="linux" default>
    <TabItemLabel>
      Linux
    </TabItemLabel>

    <Tabs queryString="serial-number-linux">
      <TabItem value="linux-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Obtain the serial number of the defective disk; to do this, display information about the disks:

           ```bash
           lsblk -o name,serial,model
           ```

           The response will contain information about the disks. Copy the serial number of the defective disk. For example:

           ```bash
           NAME    SERIAL            MODEL
           sdb     S0H0N0XYZ123456   Samsung SSD 970 EVO Plus 500GB
           nvme0n1 S0D0NX0M001234    Samsung SSD 980 PRO 1TB
           ```

           Here `SERIAL` is the disk serial number.
      </TabItem>

      <TabItem value="linux-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Get the RAID controller numbers:

           ```bash
           arcconf LIST
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           Controllers found: 1
           ----------------------------------------------------------------------
           Controller information
           ----------------------------------------------------------------------
           Controller ID             : Status, Slot, Mode, Name, SerialNumber, WWN
           ----------------------------------------------------------------------
           Controller 1:             : Optimal, Slot 3, RAID, Adaptec SmartRAID, 0X00XXXX000, 50000D0000X01234
           ```

           Here `1` in the `Controller 1` value is the RAID controller number.

        3. Obtain the serial number of the defective disk; to do this, display information about the disks:

           ```bash
           arcconf getconfig <raid_number>
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 2.

           The response will contain information about the disks. Copy the serial number of the defective disk. For example:

           ```bash
           ----------------------------------------------------------------------
           Physical Device information
           ----------------------------------------------------------------------
               Device #5
                   Device is a Hard drive
                   State                                : Online
                   Block Size                           : 512 Bytes
                   Supported                            : Yes
                   Programmed Max Speed                 : SATA 6.0 Gb/s
                   Transfer Speed                       : SATA 6.0 Gb/s
                   Reported Channel,Device(T:L)         : 0,5(5:0)
                   Model                                : TOSHIBA MG06ACA800
                   Serial number                        : Y0Y0A00WWWRE
           ```

           Here `Serial number` is the disk serial number.
      </TabItem>

      <TabItem value="linux-mega-raid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        3. Obtain the serial number of the defective disk; to do this, display information about the disks:

           ```bash
           storcli /c<raid_number> show all | grep SN
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 2.

           The response will contain information about the disks. Copy the serial number of the defective disk. For example:

           ```bash
           Drive Information :
           --------------------------------------------------------------------------------------------
           EID:Slt DID State  DG  Size Intf Med SED PI SeSz Model               Sp Type   SN
           --------------------------------------------------------------------------------------------
           252:0   11  Onln   0  1.8 TB SAS  HDD N   N  512B TOSHIBA MG06ACA800  U  U      X8X0X000AAAE
           252:1   12  Onln   0  1.8 TB SAS  HDD N   N  512B TOSHIBA MG06ACA800  U  U      A9A0A00RRRRJ
           252:2   13  Onln   0  1.8 TB SAS  HDD N   N  512B TOSHIBA MG06ACA800  U  U      W9W0Y00RRHHA
           ```

           Here `SN` is the disk serial number.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="windows">
    <TabItemLabel>
      Windows
    </TabItemLabel>

    <Tabs queryString="serial-number-windows">
      <TabItem value="windows-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run PowerShell as an administrator.

        3. Obtain the serial number of the defective disk; to do this, display information about the disks:

           ```bash
           wmic diskdrive get model,serialnumber
           ```

           The response will contain information about the disks. Copy the serial number of the defective disk. For example:

           ```bash
           Model                   SerialNumber
           TOSHIBA MG06ACA800      X8X0X000AAAE
           TOSHIBA MG06ACA800      A9A0A00RRRRJ
           ```

           Here `SerialNumber` is the disk serial number.
      </TabItem>

      <TabItem value="windows-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run maxView Storage Manager.

        3. In the **Enterprise View** menu, expand the list of disks for the required RAID controller.

        4. Select the defective disk.

        5. Copy the disk serial number.
      </TabItem>

      <TabItem value="windows-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run PowerShell as an administrator.

        3. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        4. Obtain the serial number of the defective disk; to do this, display information about the disks:

           ```bash
           storcli /c<raid_number> show all | grep SN
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 2.

           The response will contain information about the disks. Copy the serial number of the defective disk. For example:

           ```bash
           Drive Information :
           ------------------------------------------------------------------------------
           EID:Slt DID State  DG  Size Intf Med SED PI SeSz Model          Sp Type  SN
           ------------------------------------------------------------------------------
           252:0   11  Onln   0  1.8 TB SAS  HDD N   N  512B ST1800MM0129  U  U      Z1A2B3C4
           252:1   12  Onln   0  1.8 TB SAS  HDD N   N  512B ST1800MM0129  U  U      Z1A2B3C5
           252:2   13  Onln   0  1.8 TB SAS  HDD N   N  512B ST1800MM0129  U  U      Z1A2B3C6
           ```

           Here `SN` is the disk serial number.
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

### 2. Coordinate the disk replacement \{#coordinate-disk-replacement}

1. [Create a ticket](https://my.selectel.ru/tickets/create/). In the ticket, specify:

   * [the obtained SMART attributes](#obtain-smart-attributes);
   * [the serial number of the defective disk](#get-serial-number-of-defective-disk).

2. If the disk replacement is approved, a Selectel employee will specify a convenient time and the duration of the work. The duration of the work will be required to determine the time for [illuminating the disk](#disk-light).

### 3. Remove the disk from the RAID array \{#remove-disk-from-array}

If the disk is in a RAID array, [remove the disk from the array](/dedicated/troubleshooting/replace-disk-raid.mdx#remove-disk-from-array).

### 4. Illuminate the disk \{#disk-light}

At the time designated for the work, we will inform you in the ticket that we are ready to proceed with the disk replacement.

If we cannot illuminate the drive and our engineers are unable to identify it by serial number, you will need to turn off the server to replace the drive. In this case, we will notify you about the identification issue and coordinate the server downtime in the ticket.

<Tabs queryString="disk-light">
  <TabItem value="linux" default>
    <TabItemLabel>
      Linux
    </TabItemLabel>

    <Tabs queryString="disk-light-linux">
      <TabItem value="linux-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        To illuminate the drive, put a load on it; for example, you can perform a write or read operation. If you remove the drive while these operations are running, you will encounter read errors. This is expected behavior because the command is attempting to access data on a drive that has already been removed.

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Output the disk information:

           ```bash
           lsblk
           ```

           The response will contain information about the disks. Remember or copy the disk name. For example:

           ```bash
           NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
           sda           8:0    0   1.8T  0 disk
           └─sda1        8:1    0   1.8T  0 part /mnt/data
           sdb           8:16   0 931.5G  0 disk
           └─sdb1        8:17   0 931.5G  0 part /mnt/backup
           nvme0n1     259:0    0 465.8G  0 disk
           ├─nvme0n1p1 259:1    0   512M  0 part /boot/efi
           ├─nvme0n1p2 259:2    0    16G  0 part [SWAP]
           └─nvme0n1p3 259:3    0 449.3G  0 part /
           ```

           Here `sda`, `sdb`, `nvme0n1` are the disk names.

        3. Illuminate the disk:

           ```bash
           dd if=/dev/<disk_name> of=/dev/null
           ```

           Specify `<disk_name>` — the disk name you copied in step 2.
      </TabItem>

      <TabItem value="linux-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Get the RAID controller numbers:

           ```bash
           arcconf LIST
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           Controllers found: 1
           ----------------------------------------------------------------------
           Controller information
           ----------------------------------------------------------------------
           Controller ID             : Status, Slot, Mode, Name, SerialNumber, WWN
           ----------------------------------------------------------------------
           Controller 1:             : Optimal, Slot 3, RAID, Adaptec SmartRAID, 0X00XXXX000, 50000D0000X01234
           ```

           Here `1` in the `Controller 1` value is the RAID controller number.

        3. Get the disk identifier and channel number on which the disk is connected to the RAID controller::

           ```bash
           arcconf getconfig <raid_number>
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 2.

           The response will contain information about the disks. Remember or copy the disk identifier and channel number. For example:

           ```bash
           ----------------------------------------------------------------------
           Physical Device information
           ----------------------------------------------------------------------
               Device #5
                   Device is a Hard drive
                   State                              : Online
                   Supported                          : Yes
                   Transfer Speed                     : SATA 3.0 Gb/s
                   Reported Channel,Device(T:L)       : 0,5(5:0)
           ```

           Here `Reported Channel,Device(T:L): 0,5(5,0)` is information about the disk connected to the controller, where:

           * `0` — the controller channel number to which the disk is connected;
           * `5` — the disk identifier on the controller.

        4. Illuminate the disk:

           ```bash
           arcconf IDENTIFY <raid_number> DEVICE <channel_id> <device_id> ... [TIME <blink_time>][nologs]
           ```

           Specify:

           * `<raid_number>` — the RAID controller number you copied in step 2;
           * `<channel_id>` — the channel number you copied in step 3;
           * `<device_id>` — the disk identifier on the RAID controller, which you copied in step 3;
           * `<blink_time>` — the duration of the indication in seconds. The disk must be illuminated until it is replaced. You can clarify the approximate time of the work in the ticket.
      </TabItem>

      <TabItem value="linux-mega-raid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        3. Get the enclosure identifier and slot number where the disk is installed on the RAID controller:

           ```bash
           storcli /c<raid_number> show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 2.

           The response will contain information about the disks connected to the RAID controller. Remember or copy the enclosure identifier and slot number. For example:

           ```bash
           Drive Information :
           ---------------------------------------------------------------------------------
           EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp Type
           ---------------------------------------------------------------------------------
           252:4    39 Onln   1 446.625 GB SATA SSD N   N  512B INTEL SSDSC2KB480G8 U  -
           252:5    40 Onln   0 893.750 GB SATA SSD N   N  512B INTEL SSDSC2KB960G8 U  -
           ---------------------------------------------------------------------------------
           ```

           Where:

           * the value `252` in the `EID` field is the enclosure identifier in which the disk is installed;
           * the values `4`, `5` in the `Slt` field are the slot numbers in the enclosure where the disk is installed.

        4. Illuminate the disk:

           ```bash
           storcli /c<raid_number>/e<enclosure_id>/s<slot_id> start locate
           ```

           Specify:

           * `<raid_number>` — the RAID controller number to which the disk is connected;
           * `<enclosure_id>` — the enclosure identifier you copied in step 3;
           * `<slot_id>` — the slot number in the enclosure, which you copied in step 3.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="windows">
    <TabItemLabel>
      Windows
    </TabItemLabel>

    <Tabs queryString="disk-light-windows">
      <TabItem value="windows-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        To illuminate the drive, put a load on it; for example, you can perform a write or read operation. If you remove the drive while these operations are running, you will encounter read errors. This is expected behavior because the command is attempting to access data on a drive that has already been removed.

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run PowerShell as an administrator.

        3. Illuminate the disk:

           ```bash
           diskspd -b128K -d<blink_time> -h -o32 -t8 -r <disk_volume>
           ```

           Specify:

           * `<blink_time>` — the duration of the indication in seconds. The disk must be illuminated until it is replaced. You can clarify the approximate time of the work in the ticket;
           * `<disk_volume>` — a volume on the disk, for example `C:`.
      </TabItem>

      <TabItem value="windows-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run maxView Storage Manager.

        3. In the **Enterprise View** menu, expand the list of disks for the required RAID controller.

        4. Select the disk.

        5. Click **Locate**.
      </TabItem>

      <TabItem value="windows-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        2. Run PowerShell as an administrator.

        3. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

        4. Get the enclosure identifier and slot number where the disk is installed on the RAID controller:

           ```bash
           storcli /c<raid_number> show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 3.

           The response will contain information about the disks. Remember or copy the enclosure identifier and slot numbers. For example:

           ```bash
           Drive Information :
           ---------------------------------------------------------------------------------
           EID:Slt DID State DG       Size Intf Med SED PI SeSz Model               Sp Type
           ---------------------------------------------------------------------------------
           252:4    39 Onln   1 446.625 GB SATA SSD N   N  512B INTEL SSDSC2KB480G8 U  -
           252:5    40 Onln   0 893.750 GB SATA SSD N   N  512B INTEL SSDSC2KB960G8 U  -
           ---------------------------------------------------------------------------------
           ```

           Where:

           * the value `252` in the `EID` field is the enclosure identifier in which the disk is installed;
           * the values `4`, `5` in the `Slt` field are the slot numbers in the enclosure where the disk is installed.

        5. Illuminate the disk:

           ```bash
           storcli /c<raid_number>/e<enclosure_id>/s<slot_id> start locate
           ```

           Specify:

           * `<raid_number>` — the RAID controller number you copied in step 3;
           * `<enclosure_id>` — the enclosure identifier you copied in step 4;
           * `<slot_id>` — the slot number in the enclosure, which you copied in step 4.
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

### 5. Check the disk in the system \{#check-disk-in-system}

<Tabs queryString="check-disk-in-system">
  <TabItem value="linux" default>
    <TabItemLabel>
      Linux
    </TabItemLabel>

    <Tabs queryString="check-disk-linux">
      <TabItem value="linux-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Make sure the disk has initialized in the system:

           ```bash
           lsblk
           ```

        4. If the disk is missing from the list, restart the server. If the disk has not initialized in the system after the restart, inform us in the ticket.
      </TabItem>

      <TabItem value="linux-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Make sure the disk has initialized in the system:

           3.1. Get the RAID controller numbers:

           ```bash
           arcconf LIST
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           Controllers found: 1
           ----------------------------------------------------------------------
           Controller information
           ----------------------------------------------------------------------
           Controller ID             : Status, Slot, Mode, Name, SerialNumber, WWN
           ----------------------------------------------------------------------
           Controller 1:             : Optimal, Slot 3, RAID, Adaptec SmartRAID, 0X00XXXX000, 50000D0000X01234
           ```

           Here `1` in the `Controller 1` value is the RAID controller number.

           3.2. Obtain information about the disks connected to the RAID controller:

           ```bash
           arcconf getconfig <raid-number>
           ```

           Specify `<raid-number>` — the RAID controller number you copied in step 3.1.

        4. If the disk has not initialized in the system, inform us in the ticket.
      </TabItem>

      <TabItem value="linux-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Make sure the disk has initialized in the system:

           3.1. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

           3.2. Obtain information about the disks connected to the RAID controller:

           ```bash
           storcli /c<raid_number> show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 3.1.

        4. If the disk has not initialized in the system, inform us in the ticket.

        5. Disable the indication on the RAID controller:

           ```bash
           storcli /c<raid_number>/e<enclosure_id>/s<slot_id> stop locate
           ```

           Specify:

           * `<raid_number>` — the RAID controller number you copied in step 3.1;
           * `<enclosure_id>` — the enclosure identifier you copied in step 3.2;
           * `<slot_id>` — the slot number in the enclosure, which you copied in step 3.2.
      </TabItem>
    </Tabs>
  </TabItem>

  <TabItem value="windows">
    <TabItemLabel>
      Windows
    </TabItemLabel>

    <Tabs queryString="check-disk-windows">
      <TabItem value="windows-no-raid" default>
        <TabItemLabel>
          Without a RAID controller
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Run PowerShell as an administrator.

        4. Make sure the disk has initialized in the system:

           ```bash
           wmic diskdrive get model,name,serialnumber
           ```

        5. If the disk is missing from the list, restart the server. If the disk has not initialized in the system after the restart, inform us in the ticket
      </TabItem>

      <TabItem value="windows-adaptec">
        <TabItemLabel>
          Adaptec
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Make sure the disk has initialized in the system:

           3.1. Run maxView Storage Manager.

           3.2. In the **Enterprise View** menu, expand the list of disks for the required RAID controller.

        4. If the disk has not initialized in the system, inform us in the ticket.

        5. Disable the indication on the RAID controller. To do this, select the disk and click **Stop**.
      </TabItem>

      <TabItem value="windows-megaraid">
        <TabItemLabel>
          MegaRAID
        </TabItemLabel>

        1. Wait for a message from a Selectel employee in the ticket confirming that the disk has been replaced.

        2. [Connect to the server via SSH](/dedicated/manage/connect-to-server.mdx#connect-via-ssh) or via [KVM console](/dedicated/manage/connect-to-server.mdx#connect-via-kvm-console).

        3. Run PowerShell as an administrator.

        4. Make sure the disk has initialized in the system:

           4.1. Get the RAID controller numbers:

           ```bash
           storcli64 show all
           ```

           The response will contain information about the RAID controllers. Remember or copy the RAID controller number. For example:

           ```bash
           System Overview :
           ===============

           ------------------------------------------------------------------------------------
           Ctl Model                   Ports PDs DGs DNOpt VDs VNOpt BBU sPR DS  EHS ASOs Hlth
           ------------------------------------------------------------------------------------
           0   AVAGOMegaRAIDSAS9361-8i     8   4   2     0   2     0 Opt On  1&2 Y      3 Opt
           ------------------------------------------------------------------------------------
           ```

           Here `0` in the `Ctl` field is the RAID controller number.

           4.2. Obtain information about the disks connected to the RAID controller:

           ```bash
           storcli /c<raid_number> /eall /sall show all
           ```

           Specify `<raid_number>` — the RAID controller number you copied in step 4.1.

        5. If the disk has not initialized in the system, inform us in the ticket.

        6. Disable the indication on the RAID controller:

           ```bash
           storcli /c<raid_number>/e<enclosure_id>/s<slot_id> stop locate
           ```

           Specify:

           * `<raid_number>` — the RAID controller number you copied in step 4.1;
           * `<enclosure_id>` — the enclosure identifier you copied in step 4.2;
           * `<slot_id>` — the slot number in the enclosure, which you copied in step 4.2.
      </TabItem>
    </Tabs>
  </TabItem>
</Tabs>

### 6. Add the disk to the RAID array \{#add-disk-to-array}

If the disk was in a RAID array, [add the replaced disk to the array](/dedicated/troubleshooting/replace-disk-raid.mdx#add-disk-to-array).

<Formbricks />
