LINUX.ORG.RU

Debian 9: init скрипты

 


0

1

Есть скрипт запуска zram. Если кладу его в /etc/init.d и пишу

systemctl start zram
запускается, если же enable, пишет:
zram.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zram
Вроде как должен стартовать при запуске или нет? Если нет, тогда зачем выполняется команда и зачем там другие скрипты лежат? А если писать юнит, тогда после какого таргета его стартовать?


А если писать юнит, тогда после какого таргета его стартовать?

У меня так:

[Unit]
Description=Mount /var/tmp as zram
Conflicts=umount.target
After=local-fs.target
Before=umount.target display-manager.service

[Service]
Type=oneshot
RemainAfterExit=true

ExecStart=/usr/sbin/zram-init -d1 -s2 -alz4 -text4 -orelatime -m1777 6144 /var/tmp
ExecStop=/usr/sbin/zram-init -d1 0 /var/tmp

[Install]
WantedBy=multi-user.target

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

Это я уже видел тут в какой-то теме ) Кстати, расписать сможешь строки

Conflicts=umount.target

Before=umount.target display-manager.service

WantedBy=multi-user.target

Что-то остальные притихли, не хотят подать руку помощи инвалиду )

Barlok
() автор топика
Ответ на: комментарий от Barlok

Conflicts=umount.target

Этот таргет отрабатывает до shutdown.target, отвечает за размонтирование, и когда этот таргет становится активен, наш юнит не должен сопротивляться и пытаться заново запуститься.

Before=umount.target display-manager.service

Тут фиг его знает, уже не помню, даже если и читал, когда тащил юнит к себе.

WantedBy=multi-user.target

По уму тут надо было бы какой-нибудь более ранний таргет, но я поленился читать документацию, всё равно мне tmp-диры нужны только когда залогинюсь.

r3lgar ★★★★★
()
Ответ на: комментарий от anonymous

Ext4 научился в нормальный discard?

Фиг его знает, работает, и ладно.

/var/tmp, может все таки /tmp?

И /tmp тоже, но у меня гента (хоть и временно в заморозке), так что ннада и /var/tmp.

Использую связку zram-f2fs.

Тут где-то недавно проскакивала тема про проблемы с f2fs, так что я пожалуй воздержусь от.

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

Ext4 научился в нормальный discard?

Фиг его знает, работает, и ладно.

Тестировал я ext4 на распаковке, удалении, сборке хромиума. Часто то переставал удалять, то не мог найти свободное место при пустом фс, то сборка отваливалась на невозможности создать файл и тп. Без discard работает без проблем, но как забъет память, то не отдает, что логично.

И /tmp тоже, но у меня гента (хоть и временно в заморозке), так что ннада и /var/tmp.

Я /tmp отдал для zram, /var/tmp пишется на диск, тк «/var» - по мне обозначает более персистетный стораж. По умолчанию PORTAGE_TMPDIR=«/tmp», для прожорливых пакетов - var-tmp.conf с PORTAGE_TMPDIR=«/var/tmp».

Использую связку zram-f2fs.

Тут где-то недавно проскакивала тема про проблемы с f2fs, так что я пожалуй воздержусь от.

У себя тестировал ext4, reizerfs, f2fs. Reizerfs не поддерживает discard, но по нагрузке лучше ext4 без discard. Ext4 c discard глючит (см. выше), да еще безбожно грузит систему при интесивной работе с фс. C f2fs ни разу проблем не было (начал использовать linux-4.9).

anonymous
()
Ответ на: комментарий от Radjah

Ну с юнитами я разберусь как-нибудь, а вот что насчет systemd-sysv-generator? В мане только пару слов о том, что этот пес переобразовывает init скрипты.

Этот таргет отрабатывает до shutdown.target, отвечает за размонтирование, и когда этот таргет становится активен, наш юнит не должен сопротивляться и пытаться заново запуститься.

Дык, а чего ему сопротивляться? Рестарт не прописан, а сам скрипт попросту в шелл переменные расставляет по zram, да модуль подгружает.

Barlok
() автор топика
Ответ на: комментарий от anonymous

Ext4 c discard глючит (см. выше), да еще безбожно грузит систему при интесивной работе

Насчет глюков не скажу, не компилирую на SSD. Но ext4 с discard не тормозит при работе с файлами.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

Но ext4 с discard не тормозит при работе с файлами.

Грузить и тормозить - это достаточно ортогональные понятия. Хотя при ограниченных ресурсах одно может привести к другому. Распаковка исходников хромиума для ext4-zram сжирает больше системного времени чем для f2fs-zram при практически одинковом реальном времени. При этом у ext4 с discard как минимум есть баг с определением свободного места.

anonymous
()
Ответ на: комментарий от anonymous

При этом у ext4 с discard как минимум есть баг с определением свободного места.

Как его воспроизвести и можно ли избежать ?

Deleted
()
Ответ на: комментарий от Deleted

Последний раз проверял полгода назад, сейчас не хочу, тк не имеет смысла в виду того, что по всем параметрам проиграывает zram-f2fs. Zram с lz4, на нем ext4 с настройками по умолчанию, монтирую с discard. Распаковал хромиум, удалил все, при попытке повтроно распаковать прерывается из-за отсутсвия места. df говорит, что после удаления свободное место не увеличивается.

anonymous
()
Ответ на: комментарий от anonymous

Zram с lz4, на нем ext4 с настройками по умолчанию, монтирую с discard.

У меня используется только ext4 + discard. После удаления место возвращается. Так что у тебя специфичная проблема.

Deleted
()
Ответ на: комментарий от Deleted

только ext4 + discard

Зачем тогда discard? Если блочное устройство не поддерживает trim, то discard ни на что не влияет (практически). Lvm-thin, kvdo?

anonymous
()
Ответ на: комментарий от Deleted

Ssd - это своеобразное блочное устройство со своей логикой, поэтому у ссд важно качество контроллера. И в наружу он может выставлять, а может и не выставлять trim, или даже если есть trim, то это просто заглушка, потому что trim нынче стало модно-молодежно.

anonymous
()
Ответ на: комментарий от anonymous

Тестировал я ext4 на распаковке, удалении, сборке хромиума. Часто то переставал удалять, то не мог найти свободное место при пустом фс, то сборка отваливалась на невозможности создать файл и тп. Без discard работает без проблем, но как забъет память, то не отдает, что логично.

Если ты о discard на zram, то я даже не пробовал, оно искаропки просто работает. llvm/clang вмещались впритык, но пакеты после них тоже собирались, значит отпускает. Не знаю, что ты там намутил.

Я /tmp отдал для zram

У меня тоже вначале было, но я рассудил так: у меня там 512M, пишут туда редко и мало, ну и пусть будет tmpfs. На дебьяне оно вообще не маунтпоинт искаропки.

/var/tmp пишется на диск

В генте туда портаж распаковывает сорцы, так что если /var на HDD, то это полный анус.

тк «/var» - по мне обозначает более персистетный стораж

Да, но не весь и не везде. /var/cache — да, /var/tmp в генте — групповое изнасилование диска в извращённой форме.

reizerfs

На мелких файлах со временем начинает дико тормозить (я юзал в качестве ФС корня некоторое время).

Reizerfs не поддерживает discard, но по нагрузке лучше ext4 без discard

В zram — возможно. ФС топорная, но надёжная, если не надо на десять вперёд один стораж.

да еще безбожно грузит систему при интесивной работе с фс

Это и на SSD так.

C f2fs ни разу проблем не было (начал использовать linux-4.9).

Я как-то ставил на флэшку, но оно прожило недолго, флэшку надо периодически тыкать в компы, на которых стоит Оффтопик ОС.

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

Если ты о discard на zram, то я даже не пробовал, оно искаропки просто работает.

Не пробовал, но рабоает. Как про Достоевского. Где работает, что работает, когда работает? Zram+ext4+discard?

/tmp .., /var/tmp

/var/tmp нужен, в первую очередь, для временных файлов, которые должны пережить перезагрузку. А такие файлы существуют. Только после этого, он используется как более вместительное временное хранилище. /tmp - это временное хранилище по умолчанию, в том числе для portage.

reiserfs

с точки зрения насилования блочного устройства, reiser более щадящий чем ext4, судя по расходу системного времени при файловых операциях для zram. Так что да, хороший кеш и и реализация очереди команд для диска очень важно для ext4.
Насколько помню у reiser-zram тратится почти 2 раза меньше системного времени, чем ext4-zram.

да еще безбожно грузит систему при интесивной работе с фс

Это и на SSD так.

еще один камень в огород ext4.

C f2fs ни разу проблем не было (начал использовать linux-4.9).

Я как-то ставил на флэшку, но оно прожило недолго, флэшку надо периодически тыкать в компы, на которых стоит Оффтопик ОС.

Это было сказано для zram. А живучесть флешек - это больше про кривизну драйверов для них на разных ОС и контроллеров этих флешек.

anonymous
()
Ответ на: комментарий от anonymous

Не пробовал, но рабоает. Как про Достоевского. Где работает, что работает, когда работает? Zram+ext4+discard?

У меня вещества закончились, так что продолжения не будет.

reiser более щадящий чем ext4

Да, но это накладывает свои ограничения.

Насколько помню у reiser-zram тратится почти 2 раза меньше системного времени, чем ext4-zram.

Не пробовал ReiserFS в zram.

еще один камень в огород ext4.

Другой стабильной замены ему нет. ZFS прикручивается только сбоку на сопли, других вариантов я не вижу (Btrfs — гамно!).

Это было сказано для zram.

Мне лень извращаться, потому кроме Ext4/Ext2 ничего не пробовал.

А живучесть флешек - это больше про кривизну драйверов

Я не о живучести самой железки, а о том, что пришлось принудительно сменить ФС, чтобы иметь возможность таскать данные с венд.

r3lgar ★★★★★
()
Ответ на: комментарий от r3lgar

zram
zfs
btrfs
иметь возможность таскать данные с венд.
...
вещества
не пробовал
лень извращаться

Пациент путается в показаниях, пишет про вещества и извраты, но не пробовал. А мне не стыдно, пробовал и понравилось.

anonymous
()
Ответ на: комментарий от r3lgar

Я вам тут не мешаю? ) Тема не про использование zram в качестве tmpfs ) Хоть и интересно. Зачем только там создавать ext4 со всеми прибамбасами и использовать discard, сомнительное занятие. Имхо, проще юзать zram в качестве свопа, а tmpfs в качестве tmpfs. Что не влезет в tmpfs уйдет в своп. Есть еще вопросы о том почему у меня suspend to ram не фурычит на любых дровах и что будет делать journald с логом если достигнут максимальный размер, но вряд ли тут кто-то подсобит ) Извращенцы одни собрались )

Barlok
() автор топика
Ответ на: комментарий от Barlok

Извращенцы одни собрались )
/etc/init.d
systemctl

Вот тут согласен.

юзать zram в качестве свопа

Ну тут тем более согласен

Если по теме, то в тегах zram. Во всех моих сообщениях все действия происходят с zram, кроме случаев когда собеседник хочет вывести разговор на полностью несвязанныее с zram темы. А проблемы у тебя из-за того, что у тебя бардак и мешанина systemd с sysvinit. И эта проблема решается уменьшением этого барадака самостоятельно. А помощь со стороны только, если все расчистить бульдозером и построить на равной площадке.

anonymous
()
Ответ на: комментарий от anonymous

В смысле бардак? Я поставил чистую систему с netinstall, далее все настроил и накатил кеды. Не я пихал в init.d скрипты и не я делал в systemd поддержку sysv скриптов, я только пытаюсь понять зачем там эти скрипты

barlok@debian:~$ ls /etc/init.d/
bluetooth         cron  gdomap      irqbalance         kmod       networking       pppd-dns  saned  udev                 uuidd
console-setup.sh  dbus  hwclock.sh  keyboard-setup.sh  minissdpd  network-manager  procps    sddm   unattended-upgrades  x11-common
подозреваю для совместимости с sysv, и почему мой не хочет стартовать. А что до zram, пока не на чем потестить, а как урезать озу в лине я не знаю. На андроиде без zram система тормозила и ребуталась. Отзывы пока только положительные нашел. Когда закончу собирать систему, планирую перенести на нетбук.

Barlok
() автор топика
Ответ на: комментарий от Barlok

В смысле бардак?..

... дальше ты описываешь этот самый бардак. Я даже боюсь перечислить все несочетаемые слова, которые ты использовал в одном абзаце.

anonymous
()
Ответ на: комментарий от Barlok

Я вам тут не мешаю? )

Честно сказать, я уже не помню, о чём этот тред. (%

zram в качестве tmpfs

Не в качестве, а вместо.

Зачем только там создавать ext4 со всеми прибамбасами и использовать discard, сомнительное занятие.

Затем, что zram — это устройство, а не файловая система. Для управления файлами на устройстве нужна файловая система, потому она там нужна. Если ты будешь использовать tmpfs в zram, то смысла в zram нет, так как в этом случае ты используешь оперативную память напрямую, без сжатия zram.

Имхо, проще юзать zram в качестве свопа

А вот и нет. И вообще, для этого есть zswap.

а tmpfs в качестве tmpfs

zram и tmpfs — разные сущности и выполняют разные задачи.

Что не влезет в tmpfs уйдет в своп.

И если ты используешь tpmfs для ускорения компиляции, например, то когда данные полезут в swap, ты получишь СИЛЬНОЕ падение скорости и производительности.

почему у меня suspend to ram не фурычит на любых дровах

А причём здесь дрова?
У тебя есть swap? Он прописан в kernel commandline? А в fstab?

что будет делать journald с логом если достигнут максимальный размер

Удалит старые, чтобы записать новые и не упереться в квоту.

Извращенцы одни собрались )

Спасибо.

r3lgar ★★★★★
()
Последнее исправление: r3lgar (всего исправлений: 1)
Ответ на: комментарий от r3lgar

Вопросов возникает больше чем ответов. Если запускаю дебианщину, весь день у компа с рука-лицо. В данный момент можно создать еще кучу тем с вопросами, но пару дней не хочу запускать систему вовсе. Шквал

что за apt-daily.service, почему не стартует, будет ли jornald ротацию логов делать удаляя первую запись, почему не работает сон, почему самого сна нет в логах, как убрать заставку grub2, если ukms дает прирост, почему в дистрах его нет, почему plasma-desktop не стартует автоматом, где она прописывается, почему при установке hdparm ставится powermgmt-base, а при удалении остается, после установки через debootstrap лезут ошибки (оставлено на потом), почему версия кед не совпадает с версией из вики, почему иногда update-grub+reboot виснет намертво, нужно ли ставить утилиты по acpi, может из-за этого тупняк, еще пачка вопросов по поведению systemd.

Маны тлеют, а толку мало. Сухо описаны. Это только вопросы за сегодняшний день. Как с этим жить, не знаю ) Давайте хотя бы с zram разберемся, раз уж знатоки по systemd молчат. 1гб озу, создали zram на 512мб, но не видать чтоб память уменьшилась. Также как и tmpfs. Но tmpfs ладно, уходит в некую shared memory, при нехватке будет свопить, если диск больше размера памяти. А zram что делает? Закончилась память, пошел своп, а место под zram резервируется? Какой тогда объем лучше выбрать для 1гб озу? А если размер zram больше размера памяти, будет ли идти своп сжатых данных на другой своп раздел ниже приоритетом аналогично zswap'у или же данные пойдут в несжатом виде или система просто умрет? Из полезного вычитал только про backing_dev.

Barlok
() автор топика
Ответ на: комментарий от Barlok

Еще и cut тут не работает.

Он работает только в ленте (то есть на странице новостей, скриншотов и тредов пользователя) но не внутри треда (в комментариях).

что за apt-daily.service

Ну так ты бы открыл файл, да посмотрел его содержимое. А затем открыл скрипт, который оно запускает, и ознакомился с ним.
Оно качает апдейты, но более глубоко разбираться не стал, я уже хочу спать, а ты можешь ознакомиться с: /usr/lib/apt/apt.systemd.daily.

будет ли jornald ротацию логов делать удаляя первую запись

Да, будет.

почему не работает сон

Это комплексный вопрос, для этого лучше создай новый тред, но вначале воспользуйся поиском.

почему самого сна нет в логах

Наверное потому, что он у тебя не работает.

как убрать заставку grub2

Что за заставка такая? У GRUB2 нет никаких заставок.

если ukms дает прирост, почему в дистрах его нет

Представления не имею, о чём ты.

почему plasma-desktop не стартует автоматом

Потому, что её запускает Display Manager, а ты его не установил или не настроил?

где она прописывается

Вопрос к пользователям KF5/KDE, я не из их числа.

почему при установке hdparm ставится powermgmt-base

Потому, что ты не отключил установку рекомендованных пакетов, вот оно и ставит всё, что только можно.

а при удалении остается

Я ещё не разобрался толком с deb-based (я пользователь Gentoo, недавно свалил на Debian вынужденно), но некоторые пакеты не помечаются как установленные автоматически, потому и не удаляются за ненадобностью.

после установки через debootstrap лезут ошибки (оставлено на потом)

Какие ошибки? Впрочем, когда я устанавливал дебьян из генты, у меня тоже что-то было, и я решал проблемы по мере их поступления.

почему версия кед не совпадает с версией из вики

Это вопрос к тем, кто писал статью в wiki, но точно не к пользователям этого ресурса.

почему иногда update-grub+reboot виснет намертво

Комплексный вопрос, создай тред.

нужно ли ставить утилиты по acpi, может из-за этого тупняк

Из-за этого у тебя может не работать кнопка (хардварная кнопка, а не в меню) сна, но может и других проблем насыпать, в зависимости от девайса.

еще пачка вопросов по поведению systemd

Поищи по форуму, тут много вопросов на эту тему создаётся, и навеерняка на часть из своих вопросов ты найдёшь ответы. Можешь также почитать маны, в них всё очень подробно расписано.

r3lgar ★★★★★
()
29 ноября 2018 г.

решение

для того чтобы стартовал zram нужно еще доустановить пакет apt install sysvinit-core тоже долго гуглил пока не нашел на reddit

blackrama
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.