[2026-09-02 12:13:00] taiga-vault: family/how-to/truenas-sata-ports-and-zfs-pools.md
This commit is contained in:
@@ -1,24 +1,39 @@
|
|||||||
# TrueNAS — SATA порты и пулы
|
# TrueNAS — SATA порты и пулы
|
||||||
|
|
||||||
> Обновлено: 2026-08-01
|
> Обновлено: 2026-08-17
|
||||||
|
|
||||||
|
## ✅ РЕШЕНО: HGST 12TB завёлся — проблема была в 3.3V PWDIS, НЕ в карте
|
||||||
|
|
||||||
|
**2026-08-17.** HGST **линуется и полностью работает** теперь. Ключевое изменение — **отключена/обезврежена 3.3V линия (PWDIS-контакт №3 на SATA-разъёме питания)**. Диск:
|
||||||
|
- определяется как `/dev/sde`, `HGST HUH721212ALE600`, серийник `8CKD08RE`, **10.9T**, секторов `23437770752` (штатная ёмкость 12TB по SFF-8447)
|
||||||
|
- **подключён на карте ASMedia (ata7 = 0000:02:00.0, host7)** — той самой, где раньше НЕ линковался!
|
||||||
|
- **разметка сохранена без переразметки**: `sde1`=200M, `sde2`=10.9TB (та GPT, что была и через USB)
|
||||||
|
|
||||||
|
**Вывод:** причина молчания была **100% в 3.3V Power Disable (PWDIS)** — enterprise-диск с поддержкой PWDIS не раскручивается, когда обычный БП подаёт 3.3V на пин №3 SATA-питания. Снятие 3.3V-контакта устранило проблему. **Карта ASM1166 и порт материнки при этом работали и раньше.** Переразметка для решения НЕ требуется.
|
||||||
|
|
||||||
## Материнская плата
|
## Материнская плата
|
||||||
|
|
||||||
**ASUS P8H77-V LE**, чипсет Intel H77.
|
**ASUS P8H77-V LE**, чипсет Intel H77.
|
||||||
6 SATA портов на Intel контроллере (порт от ASMedia отсутствует).
|
6 SATA портов на Intel контроллере (порт от ASMedia отсутствует).
|
||||||
|
|
||||||
### Распределение портов (текущее состояние)
|
### Распределение портов (текущее состояние — после перетыкания 2026-08-17)
|
||||||
|
|
||||||
| Порт (ata) | Тип | Скорость | Цвет | Диск | by-id |
|
| Порт (ata) | Тип | Скорость | Цвет | Диск | by-id |
|
||||||
|------------|-----|----------|------|------|-------|
|
|------------|-----|----------|------|------|-------|
|
||||||
| ata1 (SATA6G_1) | SATA 3 | 6 Gb/s | серый | **sda** — WD 2TB (WD20EFAX) | WD-WXH2A31D5HDJ |
|
| ata1 (SATA6G_1) | SATA 3 | 6 Gb/s | серый | **sda** — WD 2TB (WD20EFAX) | WD-WXH2A31D5HDJ |
|
||||||
| ata2 (SATA6G_2) | SATA 3 | 6 Gb/s | серый | **sdc** — Seagate IronWolf 12TB (ST12000NT001) | WV700FQ5 |
|
| ata2 (SATA6G_2) | SATA 3 | 6 Gb/s | серый | **sdb** — WD 2TB (WD20EFAX, второй, был на карте ata9) | WD-WXJ2A31CUNNT |
|
||||||
| ata3 (SATA3G_1) | SATA 2 | 3 Gb/s | синий | **sdb** — WD 4TB (WD40EZAZ) | WD-WX22D51JJFZ7 |
|
| ata3 (SATA3G_1) | SATA 2 | 3 Gb/s | синий | **sdc** — WD 4TB (WD40EZAZ) | WD-WX22D51JJFZ7 |
|
||||||
| ata4 (SATA3G_2) | SATA 2 | 3 Gb/s | синий | **sde** — Kingston 120GB SSD (boot) | 50026B77844E881C |
|
| ata4 (SATA3G_2) | SATA 2 | 3 Gb/s | синий | **sdd** — Kingston 120GB SSD (boot) | 50026B77844E881C |
|
||||||
| ata5 (SATA3G_3) | SATA 2 | 3 Gb/s | синий | *свободен* | — |
|
| ata5 (SATA3G_3) | SATA 2 | 3 Gb/s | синий | *занято диском* | — |
|
||||||
| ata6 (SATA3G_4) | SATA 2 | 3 Gb/s | синий | **sdd** — Seagate 4TB (ST4000DM004) | WFN66CM2 |
|
| ata6 (SATA3G_4) | SATA 2 | 3 Gb/s | синий | **sde** — Seagate 4TB (ST4000DM004) | WFN66CM2 |
|
||||||
|
| *(карта ASM1166)* | — | — | — | **НЕ В СЛОТЕ** (lspci не видит) | — |
|
||||||
|
|
||||||
> ⚠️ В отличие от изначального плана, **IronWolf 12TB сейчас на ata2 (SATA6G_2)**, а не на ata5. Это нормально — ZFS не привязана к порту (см. ниже).
|
**⚠️ Состояние на 2026-08-17 после перетыкания:**
|
||||||
|
- **Карта ASMedia ASM1166 физически вытащена из слота** (нет в `lspci`); `/sys/class/ata_port/` содержит только ata1–ata6 (материнка Intel H77). WD 2TB #2 перенесён с карты (ata9) на материнку ata2.
|
||||||
|
- **HGST 12TB и IronWolf 12TB сейчас НЕ подключены/НЕ линкуются** — их нет ни в `lsscsi`, ни в `/dev/disk/by-id`. Не были бы они и на карте (карты нет). HGST мы заводили на карте, значит при её извлечении он отключился.
|
||||||
|
- Несмотря на перетыкание пулы **здоровы** (см. раздел про пулы ниже) — подтверждено, что ZFS не зависит от порта.
|
||||||
|
|
||||||
|
> ⚠️ В отличие от изначального плана, диски сейчас не по плану — проверять актуальное распределение по `by-id`/модели, а не по буквам. Типичные буквы при стабильном подключении: sda=WD2TB#1, sdb=WD2TB#2, sdc=WD4TB, sdd=Kingston, sde=Seagate4TB.
|
||||||
|
|
||||||
## Плата расширения SATA в PCIe (установлена ~2026-07-30)
|
## Плата расширения SATA в PCIe (установлена ~2026-07-30)
|
||||||
|
|
||||||
@@ -46,19 +61,18 @@
|
|||||||
|
|
||||||
**➡️ Уточнённый диагноз:** проблема **именно в паре HGST SATA-интерфейс ↔ SATA-карта ASMedia**, а не в самом диске. Диск работоспособен. Две вероятные причины не-линка по SATA в карте: (1) питание с SATA-разъёма БП до диска в карте не доходит (в USB-боксе питание даёт мост/свой блок, потому и работает), либо (2) enterprise-диск (4Kn/особый PHY) не поднимает линк на ASM1166. USB-мост — рабочий способ диагностики, но ненадёжен как постоянное решение для ZFS.
|
**➡️ Уточнённый диагноз:** проблема **именно в паре HGST SATA-интерфейс ↔ SATA-карта ASMedia**, а не в самом диске. Диск работоспособен. Две вероятные причины не-линка по SATA в карте: (1) питание с SATA-разъёма БП до диска в карте не доходит (в USB-боксе питание даёт мост/свой блок, потому и работает), либо (2) enterprise-диск (4Kn/особый PHY) не поднимает линк на ASM1166. USB-мост — рабочий способ диагностики, но ненадёжен как постоянное решение для ZFS.
|
||||||
|
|
||||||
## Следующие шаги (HGST 12TB — статус: диск рабочий через USB, но по SATA-карте не линкуется)
|
## ✅ Решение HGST 12TB (2026-08-17) — корень найден, диск работает
|
||||||
|
|
||||||
Цель — завести HGST в пул TrueNAS. USB-мост подтвердил исправность диска; теперь вопрос только в SATA-линке.
|
> ⚠️ **Актуальный статус на 2026-08-17 вечер:** хоть HGST и завёлся (см. ниже КАК), в финальном перетыкании **карта ASM1166 вытащена из слота, HGST и IronWolf сейчас НЕ подключены** (подробнее в таблице портов выше). Этот блок фиксирует **как была решена причина не-линка** — пригодится, когда диск вернётся в систему.
|
||||||
|
|
||||||
1. **Вариант А (рекомендуется):** вешать HGST на **свободный SATA-порт материнки ata5 (SATA3G_3, синий)** вместо карты. Intel H77 AHCI к enterprise-дискам надёжнее, чем ASM1166. После подключения проверить `lsscsi -g` — диск должен появиться на хосте материнки (host 0/1/2/3/5). Если заведётся — добавить в пул по by-id/GUID (ZFS не привязана к порту).
|
Проблема не-линка HGST по SATA **решена: это 3.3V PWDIS на SATA-питании.** Разметка не трогалась — sde1=200M, sde2=10.9TB остались как были. Когда диск снова будет подключён — добавить в пул TrueNAS по by-id/GUID (ZFS к порту не привязана). После добавления — удалить этот блок.
|
||||||
2. **Вариант Б (проверочный):** вернуть HGST в тот же порт/кабель карты, где определялся рабочий WD 2TB (host9). Если с заведомо рабочим кабелем/портом HGST всё равно не даёт `target*` → подтверждается мизер питания до диска в карте или несовместимость PHY HGST↔ASM1166.
|
|
||||||
3. **Особое внимание питанию:** у карты нет отдельного питания, диск в карте питается SATA-разъёмом напрямую. Проверить, что кабель питания доходит и даёт 12V — подозрение, что в USB-боксе питание подаёт мост, а в SATA-схеме до HGST оно не доходит.
|
**Что было/что стало:**
|
||||||
4. Проверить появился ли диск на материнке после переноски:
|
- Было: HGST не давал `target*` ни на одном порту карты ASM1166 (USB-мост работал, потому что питание подавал мост, не затрагивая PWDIS).
|
||||||
```bash
|
- Стало: после отключения 3.3V-контакта HGST линкуется на той же карте (ata7/02:00.0) — карта и материнка исправны, дело было в питании.
|
||||||
lsscsi -g # смотреть новые /dev/sd* на хостах материнки (0,1,2,3,5)
|
- **Переразметка для решения не нужна** — проблема на уровне PHY/питания, а не данных.
|
||||||
lsblk -o NAME,SIZE,MODEL,TRAN
|
|
||||||
```
|
> ⚠️ Если такой же enterprise-диск (HGST/WD Ultrastar/Seagate Exos c PWDIS) снова «молчит» по SATA — первым делом проверить 3.3V-пин №3 питания: Molex→SATA адаптер (без 3.3V) или изоляция пина №3 решают.
|
||||||
5. Если HGST заведётся и добавится в пул — обновить таблицу портов и удалить этот блок.
|
|
||||||
|
|
||||||
> ⚠️ NB: буквы дисков (`sda`/`sdb`/...) **shift-аются при перетыкивании** — сейчас на материнке: [0]=WD2TB, [2]=WD4TB, [3]=Kingston boot, [5]=Seagate4TB, IronWolf на [1]. Не полагаться на буквы, проверять по `by-id`/модели.
|
> ⚠️ NB: буквы дисков (`sda`/`sdb`/...) **shift-аются при перетыкивании** — сейчас на материнке: [0]=WD2TB, [2]=WD4TB, [3]=Kingston boot, [5]=Seagate4TB, IronWolf на [1]. Не полагаться на буквы, проверять по `by-id`/модели.
|
||||||
|
|
||||||
@@ -85,11 +99,25 @@ lspci -k | grep -i sata
|
|||||||
- **Kingston SSD (boot)** — оставить в синем порту SATA3G_2 (ata4). Вся активность только при загрузке, система работает из RAM.
|
- **Kingston SSD (boot)** — оставить в синем порту SATA3G_2 (ata4). Вся активность только при загрузке, система работает из RAM.
|
||||||
- **WD 2TB** — серый SATA6G_1 (ata1), занят.
|
- **WD 2TB** — серый SATA6G_1 (ata1), занят.
|
||||||
|
|
||||||
## Важно про ZFS и перетыкивание
|
## Важно про ZFS и перетыкание
|
||||||
|
|
||||||
- ZFS не привязана к букве диска или SATA порту. TrueNAS распознаёт пул по GUID на дисках.
|
- ZFS не привязана к букве диска или SATA порту. TrueNAS распознаёт пул по GUID на дисках.
|
||||||
- Можно перетыкать диски в любые порты — TrueNAS поднимет пул автоматически.
|
- Можно перетыкать диски в любые порты — TrueNAS поднимет пул автоматически (подтверждено 2026-08-17).
|
||||||
- Если пул не поднялся автоматически: WebUI → Storage → Import Pool.
|
- Если пул не поднялся автоматически: WebUI → Storage → Import Pool.
|
||||||
|
- Проверка пула после перетыкания: `/sbin/zpool status <pool>` — убедиться что все члены `ONLINE`, ошибки `0 0 0`.
|
||||||
|
|
||||||
|
## Пулы TrueNAS (проверено 2026-08-17)
|
||||||
|
|
||||||
|
Имена пулов, топология и члены — проверять статус через `/sbin/zpool` (см. ниже про PATH).
|
||||||
|
|
||||||
|
| Пул | Размер | Члены (по /dev со стабильным подключением) | Топология | Монтирование |
|
||||||
|
|-----|--------|-----------|-----------|--------------|
|
||||||
|
| **RED_2TB** | 5.44T (4.60T занято) | mirror: `sdc2` (WD4TB) + `sde2` (Seagate4TB); отдельно `sda2` (WD2TB) | 1 диск (sda2) + mirror-1 (2 диска) | `/mnt` |
|
||||||
|
| **boot-pool** | 111G (7.65G занято) | `sdd3` (Kingston 120GB boot SSD) | 1 диск | — |
|
||||||
|
|
||||||
|
- RED_2TB: HEALTH **ONLINE**, нераспределённый свободный диск (данные не реплицируются на sda2 — он отдельный, а не парный). Если redun-dancy важна — учесть, что sda2 без зеркала.
|
||||||
|
- Идёт регулярный scrub (запускается ночью воскресенья).
|
||||||
|
- **`zpool` не в PATH для zsh truenas_admin** — вызывать через абсолютный путь `/sbin/zpool` или `/usr/sbin/zpool` (иначе `command not found`).
|
||||||
|
|
||||||
## Запрещено
|
## Запрещено
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user