alexdsp |
|
Темы:
22
Сообщения:
307
Участник с: 07 февраля 2008
|
Сделал уже довольно давно себе юнит по вики для /etc/rc.local - всё вроде бы работало нормально до тех пор, пока я не прописал туда несколько строчек с участием hdparm, типа hdparm -S 36 "название диска". То есть, я просто задаю таймаут на отключение через 3 минуты ненужному в линуксе диску с виндовс. Ну или тупо пытаюсь диск выключить. Если ту самую строчку с hdparm выполнить вручную из рутовой консоли - всё работает правильно. Из /etc/rc.local - нет, притом, что все остальные строчки (пишущие в /proc и /sys) отрабатываются нормально. В принципе понятно, что юнит выполняется слишком быстро и в логах видно, что SATA переподнимается ядром заново. Хотел бы спросить, что надо писать в юните в строчке After= ? Я попробовал запускать юнит и после сислога, и после сети. Результата не достиг. Вики очень мутный. У меня ещё много вопросов по systemd, но обо всём по порядку... |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Вопрос, зачем включать что бы потом выключить?
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
alexdsp |
|
Темы:
22
Сообщения:
307
Участник с: 07 февраля 2008
|
nafanjaВот и я спрашиваю. Зачем и почему ядро включает диск уже после моего юнита? Повторяю ещё раз. Юнит слишком рано запускается. Хотелось бы его запуск отложить на некоторое время, когда ядро со всеми модулями уже спокойно отработало. |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
сделай для команды отключения отдельный юнит без скрипта. а просто с нужной командой. посмотри в списке запущенных юнитов тот диск после которого нужно стартовать и пропиши его в афте будут выглядеть похоже на это: dev-disk-byx2did-atax2dSAMSUNG_HD160JJ_S08HJ10Y754894.device dev-disk-byx2did-atax2dST34313A_6DL0D3DJ.device или просто попробуй сначала замаскировать этот юнит..
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
alexdsp |
|
Темы:
22
Сообщения:
307
Участник с: 07 февраля 2008
|
nafanjaПонятно... это сработает... Но это будет жёсткая привязка к имени диска. Плюс ещё в самой команде выключения через hdparm будет привязка во второй раз. Как-то некрасиво оно. По идее бы в rc.local это запихнуть - как-то универсальнее что ли и привычнее. Нужно только задержать его исполнение на некоторое время. Не хотелось бы на каждый чих городить лишние юниты... |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Не хотелось бы на каждый чих городить лишние юниты...Не хотелось, но сам разраб советует так делать!
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
alexdsp |
|
Темы:
22
Сообщения:
307
Участник с: 07 февраля 2008
|
nafanjaКак их потом контролировать? При помощи чего? Слишком много телодвижений выходит по каждому поводу и вместе.Не хотелось бы на каждый чих городить лишние юниты...Не хотелось, но сам разраб советует так делать! А тут все личные фишки и настройки собраны в одном файле. В чём противоречие? Обычным текстовым редактором правится. Да и в концепцию systemd вписано, как юнит оформлено. Просто запускается слишком рано. Надо позже. Я точно знаю, здесь есть люди до тонкостей понимающие как работает systemd. Думаю, никакого труда не составило бы подсказать решение. Вот что у меня в /etc/systemd/system/myscript.service [Unit] Description=My script After=network.target [Service] ExecStart=/etc/rc.local [Install] WantedBy=multi-user.target Вот что в /etc/rc.local #!/bin/bash # # /etc/rc.local: Local multi-user start-up script. # echo 1024 > /sys/class/rtc/rtc0/max_user_freq echo 1024 > /proc/sys/dev/hpet/max-user-freq /usr/bin/hdparm -S 36 /dev/disk/by-id/ata-Hitachi_HDS723020BLA642_MN3220F30BJTUE /usr/bin/hdparm -y /dev/disk/by-id/ata-Hitachi_HDS723020BLA642_MN3220F30BJTUE |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Как их потом контролировать? При помощи чего?вот что бы контролировать и нужны отдельные юниты, и их начальник системд Думаю, никакого труда не составило бы подсказать решение.http://archlinux.org.ru/forum/topic/11744/?page=1#post-111352
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
alexdsp |
|
Темы:
22
Сообщения:
307
Участник с: 07 февраля 2008
|
nafanjaВот! Спасибо большое! :)) Кажется, это оно!Как их потом контролировать? При помощи чего?вот что бы контролировать и нужны отдельные юниты, и их начальник системдДумаю, никакого труда не составило бы подсказать решение.http://archlinux.org.ru/forum/topic/11744/?page=1#post-111352 |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Но это будет жёсткая привязка к имени диска.вот что бы передавать параметр в юнит и придуман суфикс после символа @ в имени юнита http://www.freedesktop.org/software/systemd/man/systemd.unit.html получилось бы например такое имя сервиса [email protected] а включать его для любого винта можно было бы так systemctl enable [email protected]_HDS723020BLA642_MN3220F30BJTUE.service внутренности сервиса сам написать попробуй...
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |