Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » UNIX » Добавление и удаление на ходу SATA/SCSI устройств

Модерирует : ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

lavabot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Решил создать новую тему в продолжении вот этой которая уже устарела на Хабр:
 
https://habr.com/post/102387/
 
 
Вначале я написал пост в теме для новичков, но решил вынести на отдельное обсуждение, т.к сама тема интересна, а последняя информация по ней на 2012 год. Возможно появились новые команды, утилиты для работы с SATA дисками за прошедшие 6 лет.
На Хабре в комментариях публикации были упоминания о  
scsi_stop — утилита из пакета scsitools, наличествует в дефолтных репозиториях.
eject /dev/sdX  
 
Вот пост в теме для новичков, в чем у меня сейчас проблема и как лучше можно решить этот вопрос:
 
http://forum.ru-board.com/topic.cgi?forum=65&topic=6073&start=180#8
 
 
 
Добавлено:
и для удаления дисков с AHCI mode - достаточно будет выполнить команду eject /dev/sdX без предварительного umount, как флешка автоматически размонтируется из меню eject?
 
нет не работает эта команда для этого случая:
 

Код:
 
[root@localhost stan]# eject /dev/sdc
eject: /dev/sdc: is not hot-pluggable device
[root@localhost stan]#  

 
Добавлено:
a scsitools - есть в Debian; Ubuntu. меня интересует семейство Fedora
 
Добавлено:
Нужно присоединять и удалять SATA диски, вставляемые в Mobile Rack - Internal Enclosure в работающей системе.   Как это реализовать программно?
 
Добавлено:
вот нашел первую полезную информацию по этому вопросу:
 
https://ru.wikibooks.org/wiki/Настольная_книга_по_Linux#Горячее_подключение_дисков_SATA
 

Код:
 
Горячее подключение дисков SATA
echo "- - -" > /sys/class/scsi_host/host1/scan - Сканирование и инициализация нового устройства на порту host1.
ls -1 /sys/class/scsi_host/ - Вывести список портов host используемых для подключения дисков.
ls /sys/class/scsi_host/host?/device/target?/?/block - Показать на каких портах hostX подключены диски /dev/sdX.
echo 1 > /sys/block/sdb/device/delete - Деактивировать и удалить из системы диск /dev/sdb.
 
 

 
Добавлено:
Перед этой командой  
echo 1 > /sys/block/sdb/device/delete - Деактивировать и удалить из системы диск /dev/sdb.  
 
нужно вначале выполнять umount  & sync или она автоматически это делает как eject для USB накопителей?

Всего записей: 873 | Зарегистр. 02-06-2017 | Отправлено: 16:46 11-01-2019 | Исправлено: lavabot, 17:23 11-01-2019
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
нужно вначале выполнять umount  & sync или она автоматически это делает как eject для USB накопителей?
ни чего автоматически не делается, всё сами.

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 17:39 11-01-2019
lavabot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
так команд или утилит готовых не появилось для реализации этих функций?  
smartctl - не сканирует подключенные новые устройства, т.к не видит их.
Т.е единственный способ как выше написано, скрипт писать и выполнять?
И на выключение для hot-plug device же есть команда eject.  
может и для SATA дисков появилось что-то новое?

Всего записей: 873 | Зарегистр. 02-06-2017 | Отправлено: 18:18 11-01-2019 | Исправлено: lavabot, 18:20 11-01-2019
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lavabot
Есть пакет udisks2 в нём утилита udisksctl, которая немного скрасит какие-то команды.
 
Все(?) современные контроллеры умеют hot-plug. Ядро уведомляется о подключении нового диска и автоматически назначает ему номер и букву.
 
Утилита eject, на сколько мне известно ни когда и не была предназначена для работы с ATA.
 
Добавлено:
Если Вы это всё практикуете на десктопе, то к udisks2 есть gui — udiskie.
 
Хотя всё это в целом про removable media. То есть в современном мире — USB.
 
Я не понимаю какую автоматизацию и для каких  задач Вы хотите получить. Переключение дисков это. кмк, не оч частая задача. И управляется всего-то ±5 командами.
Вам же скорее надо и монтирование в какую-то точку конкретное и ещё попутно что-то, вот это и запишите в скрипт. Если не обвешивать его всевозможными проверками на случай абы чего и универсальности, то это реально будет не больше 10 строк.
 
p.s. имена пакетов могут отличаться (я по Debian смотрел)

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 00:23 12-01-2019 | Исправлено: Alukardd, 00:32 12-01-2019
lavabot

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Все(?) современные контроллеры умеют hot-plug. Ядро уведомляется о подключении нового диска и автоматически назначает ему номер и букву.  

Мой контролер видно не современный на этом компьютере Motherboard c Intel G41 Chipset;  Intel ICH7.  На другом компьютере, более современном так и происходит, новый диск определяется сразу.  
У меня на компьютерах стоит по 3 Mobile Racks  Seatay в которые мне приходится иногда вставлять дополнительные диски с данными, помимо системного. Монтировать в конкретную точку не нужно. Я их монтирую из GUI в Double Commander.  Т.е дополнительный SATA диск это типa 1 ТБ флешка.
ОС Fedora.   C утра - дня продолжу изучение вопроса, с учетом Вашей информации, спасибо.
И далее в теме для новичков, придется еще разобраться как запустить скрипт  на выполнение с рабочего стола ярлыком. Наверное через настройку файла /etc/sudoers  для работы пользователя с этим скриптом.

Всего записей: 873 | Зарегистр. 02-06-2017 | Отправлено: 02:38 12-01-2019 | Исправлено: lavabot, 02:41 12-01-2019
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lavabot
Ох, Вы аж по трём темам размазали обсуждения, ад.
 
ВСЁ. Все дальнейшия обсуждения в "новичковой" теме! Невозможно так.
 
p.s. Если считаете свой скрипт безопасным (возможно он такой и есть, если просто пересканирует шины и не принимает ни каких аргументов) то можно не заморачиваться с sudo, а дать скрипту suid bit (man chmod, внимательно читать про SETUID). Да, в современном Linux есть capabilities но это сложнее, хотя и позволяет сделать более точную выдачу привилегий, если такие предусмотрены (не на всё есть capabilities).

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 10:14 12-01-2019
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Операционные системы » UNIX » Добавление и удаление на ходу SATA/SCSI устройств


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru