Естественная сортировка FreeBSD с помощью ls и рекурсии

Когда вы обновляете ядро, вы фактически обновляете пакет ядра . В большинстве дистрибутивов Linux это просто регистрирует пакет в менеджере пакетов, добавляет новые модули в /lib/modules,добавьте initramfs и ядро ​​​​под /bootи, возможно, обновите записи загрузчика и некоторые другие действия. Обычно это не заменяет загруженное ядро ​​​​в памяти.

При загрузке само ядро ​​загружается в память. То есть, даже если файл был загружен из (, например./boot/vmlinuz)исчезает, он не нужен после первоначальной загрузки ядра.

Даже если он был необходим для чего-то, (скажем, для отладочной информации )и был заменен, любой, у кого уже есть открытый дескриптор файла, все равно сможет использовать этот файл, поскольку резервные данные не будут удалены до тех пор, пока счетчик ссылок рассматриваемого inode не станет равным 0 (само ядро ​​не нуждается в такой ссылке, поскольку оно уже загружено в память, в отличие от запуска процессов из исполняемых файлов пользовательского пространства ). Эти блоки обычно могут быть полностью освобождены с диска, если только вы не выполняете какую-либо пользовательскую -космическую программу для этого файла. Ядро Linux не выгружает свою собственную память и даже распаковывает себя на лету при запуске. Не существует способов /proc/.../exeили /proc/.../fdдля доступа к загруженному /boot/vmlinuz — ядро ​​может даже не смонтировать устройство, с которого оно было загружено, в ситуации сетевой загрузки или загрузки с USB -.

Обычно ядро ​​не обновляется. Обычно это делается при перезагрузке или во время kexec. То, что вы описываете , существует для ограниченных случаев использования, таких как kpatch , kgraft и ksplice , но в целом они могут использоваться только для небольших и целевых исправлений, а не для новых выпусков ядра основной ветки разработки.

1
04.05.2021, 17:02
1 ответ

Вы можете счесть это читерством, но вы можете установить либо:

  • LSD (LSDeluxe ), который является очень мощным обновлением/вариантом.

  • GNU Coreutils , инструменты, к которым вы привыкли. Или просто GNU ls .

Установить:

pkg install lsd
pkg install coreutils
1
28.07.2021, 11:35

Теги

Похожие вопросы