Поправил Wiki по вашим примерам
похоже мы тут не только решили вопрос, но и сделали что-то полезно для всех
В этом и есть суть комьюнити.
Speccyfighter'у отдельное спасибо за ссылку на литературу, а также за темы
Приёмы профессиональной работы в shell (справочник - вопросы не задавать. )
Приёмы профессиональной работы в shell - обсуждение
почему-то вспоминаются старые, добрые брошюрки/блокнотики "Справочник по основным командам MS DOS"
Каждая вторая книга тогда заканчивалась справочником по командам. Но времена меняются.
Присоединяйтесь. Возможно какие-то свежие мысли и наработки есть и у вас.
Иногда есть смысл собирать всё это в ascii файл и отправлять в бэкап или хотя бы в облако, но при этом не светить важные вещи: самый безопасный ноутбук это тот, у которого выдернули кабель и аппаратно выключили вайфай с блютусом, программно которые включить невозможно.
как оффтоп, но проблема:
Команда, которая показывает нам список всех загрузок системы
# journalctl --list-boots
через полчаса работы дает очень странный эфффект
...
Не странный, а страшный, - загрузку процессора более чем на 50 процентов.
и вдобавок сжирала 2 гига памяти и 2 гига свопа
Пф-ф-ф-ф... Не, ну вы умеете задавать вопросы
И это уже точно не офтоп.
Всё не так просто как кажется на первый взгляд.
С такой ошибкой systemd, появляется риск получить компьютер впавший в ступор не только из-за процессора, но и по вине дисковой подсистемы. Вернее это не их вина.
Такие баги ни при каких условиях не должны попадать в стабильный репозиторий. Любые отговорки и оправдания здесь, я воспринимаю как отмазки и разгильдяйство. Инициализация и журналирование это не тот случай.
Если у вас не один тяжёлый процесс, вы рискуете получить нулевой idle и загруженную по самое небалуйся подсистему ввода/вывода. И вариантов у вас здесь немного.
Первая причина кроется в альтах: альты выламывают шедулеры оставляя только два из них, один из которых бесполезен чуть более чем совсем и здесь у вас выбор невелик. Вернее его нет совсем.
Когда-то их у альтов было дефолтом штуки четыре. И по ситуации, к месту мог быть любой из них.
Почитайте про них:
https://www.opennet.ru/base/sys/io_scheduler_linux.txt.htmlhttps://www.opennet.ru/base/sys/linux_shedulers.txt.htmlОбратите внимание на ключевые фразы:
- Другими словами, из очереди извлекается одна программа, которая и получает практически монопольный доступ к диску. Пока эта программа работает, все остальные ожидают в очереди.
Но один вариант остаётся, - это понизить приоритет процесса, с которым есть риск ввести систему в ступор:
https://www.opennet.ru/tips/1684_nice_ionice_cfq_scheduler_backup_kernel_linux.shtmlРазные Линукс по-умолчанию используют разные шедулеры
# cat /sys/devices/pci0000:00/0000:00:1f.1/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler
noop deadline [cfq]
# cat /sys/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host2/target2:0:0/2:0:0:0/block/sdb/queue/scheduler
noop deadline [cfq]
Но если что, вы можете загрузить модуль шедулера и вручную,
# modprobe cfq-iosched
переключиться на него и последить за поведением системы
# cat /sys/devices/pci0000:00/0000:00:1f.1/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler
noop [deadline] cfq
# echo cfq > /sys/devices/pci0000:00/0000:00:1f.1/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler
# cat /sys/devices/pci0000:00/0000:00:1f.1/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler
noop deadline [cfq]
Если этот шедулер подходит больше, этот модуль можно добавить в
/etc/modules
как имя модуля без расширения.
Оперативная смена шедулера
# echo cfq > /sys/block/sda/queue/scheduler
Если хотите чтобы он был фиксированным, установите пакет sysfsutils, запустите сервис sysfs и в файл
/etc/sysfs.conf
впишите строку
block/sda/queue/scheduler = cfq
Перезапустите сервис sysfs.
решилась удалением старых (ненужных, лишних-?) файлов из папки (скорее всего оставались от установки)
ls -l /var/log/journal/7dba617ab6bb9e46d8751c1e59bffe0d
итого 81928
-rw-r-----+ 1 root systemd-journal 75497472 ноя 20 18:16 system.journal
-rw-r-----+ 1 root systemd-journal 8388608 ноя 20 18:15 user-500.journal
Жаль что вы не сохранили выбросов в терминал.
Но в любом случае это напрашивается на багрепорт.
Такого не должно быть ни при каком раскладе:
Но даже с IDE винчестером 4200 rpm, эта команда не должна превышать одной секунды
# time -f %E journalctl --list-boots
0 b4ec07ddb954425bb0880b320fadc1a7 Thu 2016-10-27 21:47:48 +03—Thu 2016-10-27 21:59:57 +03
0:00.45
Вообще-то я не люблю светить идентификаторы, но в данном случае для системы на sysv это значения не имеет. А это именно идентификатор и эта команда выдаст содержимое:
# journalctl -b b4ec07ddb954425bb0880b320fadc1a7
ИМХО:
Касательно этой темы, здесь сложность в том, что здесь пересекаются множество вещей и это не одна проблема сама в себе.