• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Как обновить Kali Linux 2019→2020?

  • Автор темы Автор темы sinaps
  • Дата начала Дата начала
  • Теги Теги
    kali

sinaps

Green Team
06.04.2019
37
1
OS установлена на LiveUSB. Делаю всё по инструкции с
Bash:
kali@kali:~$ cat <<EOF | sudo tee /etc/apt/sources.list
deb http://http.kali.org/kali kali-rolling main non-free contrib
EOF
kali@kali:~$
kali@kali:~$ sudo apt update && sudo apt -y full-upgrade
kali@kali:~$
kali@kali:~$ [ -f /var/run/reboot-required ] && sudo reboot -f
kali@kali:~$
получаю:
Bash:
kali@kali: ~ $ grep VERSION /etc/os-release
VERSION="2020.2"
VERSION_ID="2020.2"
VERSION_CODENAME="kali-rolling"
kali@kali: ~ $ uname -r
4.19.0-kali3-amd64
kali@kali: ~ $ uname -v
#1 SMP Debian 4.19.20-1kali1 (2019-02-14)
По видимому оно как-то не полностью. Как надо правильно? Неужели необходимо переустанавливать?
 
OS установлена на LiveUSB. Делаю всё по инструкции с
Bash:
kali@kali:~$ cat <<EOF | sudo tee /etc/apt/sources.list
deb http://http.kali.org/kali kali-rolling main non-free contrib
EOF
kali@kali:~$
kali@kali:~$ sudo apt update && sudo apt -y full-upgrade
kali@kali:~$
kali@kali:~$ [ -f /var/run/reboot-required ] && sudo reboot -f
kali@kali:~$
получаю:
Bash:
kali@kali: ~ $ grep VERSION /etc/os-release
VERSION="2020.2"
VERSION_ID="2020.2"
VERSION_CODENAME="kali-rolling"
kali@kali: ~ $ uname -r
4.19.0-kali3-amd64
kali@kali: ~ $ uname -v
#1 SMP Debian 4.19.20-1kali1 (2019-02-14)
По видимому оно как-то не полностью. Как надо правильно? Неужели необходимо переустанавливать?
Попробуйте:
sudo apt-get update
sudo apt-get dist-upgrade , но мне кажется, что всё нормально обновилось, "4.19.20-1kali1 (2019-02-14)" это версия ядра и дата его сборки, далеко не факт, что тут должно стаять что то новее.
Проверил, в изменениях указано ядро #1 SMP Debian 5.4.13-1kali1 (2020-01-20), просто не произошло автоматической смены ветки ядра.
 
Последнее редактирование:
Попробуйте:
sudo apt-get update
sudo apt-get dist-upgrade
Вообще я уже так делал, но вот ещё разок.
Bash:
root@kali:/# apt-get dist-upgrade
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Расчёт обновлений… Готово
Следующие НОВЫЕ пакеты будут установлены:
  docbook-xml sgml-base sgml-data xml-core
Следующие пакеты будут обновлены:
  distro-info-data libjavascriptcoregtk-4.0-18 libwebkit2gtk-4.0-37 libyelp0 pavucontrol
  python-pkg-resources python3-pkg-resources qt5ct rtkit tzdata yelp
Обновлено 11 пакетов, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 21,0 MB архивов.
После данной операции объём занятого дискового пространства возрастёт на 3 837 kB.
Хотите продолжить? [Д/н] y

root@kali:/# apt-get dist-upgrade
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Расчёт обновлений… Готово
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Немножко обновилось, но после reboot однохренственно
Bash:
root@kali:/# uname -v
#1 SMP Debian 4.19.20-1kali1 (2019-02-14)
root@kali:/#
указано ядро #1 SMP Debian 5.4.13-1kali1 (2020-01-20), просто не произошло автоматической смены ветки ядра
Может быть мне стоит (как?) его сменить вручную? И, главное, откуда оно берётся вообще? Если
Bash:
root@kali:/# ls /boot/
config-4.19.0-kali3-amd64  grub                           System.map-5.5.0-kali1-amd64  vmlinuz-5.5.0-kali1-amd64
config-5.5.0-kali1-amd64   initrd.img-4.19.0-kali3-amd64  System.map-5.5.0-kali2-amd64  vmlinuz-5.5.0-kali2-amd64
config-5.5.0-kali2-amd64   System.map-4.19.0-kali3-amd64  vmlinuz-4.19.0-kali3-amd64
И символические ссылки в корневом каталоге
/@vmlinuz
/@vmlinuz.old
Обе указывают на
→boot/vmlinuz-5.5.0-kali1-amd64
 
Судя по файлам новое ядро уже стоит, sudo update-grub
потом cat /boot/grub/grub.cfg и вывод сюда, по идее должно же автоматически загружаться с самого нового ядра.....
 
Последнее редактирование:
Что-то ничего такого...
Bash:
root@kali:/# update-grub
bash: update-grub: команда не найдена
root@kali:/# cat /etc/grub.conf
cat: /etc/grub.conf: Нет такого файла или каталога
root@kali:/#
Это я в древности ударился, обновите страницу ,я отредактировал команду
по поводу cat это да, я исправил, но update-grub где потерялся то.....
а если
sudo grub-mkconfig -o /boot/grub/grub.cfg
или sudo grub-update
 
Последнее редактирование:
по идее должно же автоматически загружаться с самого нового ядра.....
Вообще да, но это LiveUSB c persistence, система не установлена на HDD, его нет вообще. Может в этом дело?
а если
sudo grub-mkconfig -o /boot/grub/grub.cfg
или sudo grub-update
Ничего такого нет вообще:
Код:
root@kali:/# gr<Tab>
gregorio   gresource  grog       grotty     groupdel   groupmod   grpck      grpunconv
grep       groff      grops      groupadd   groupmems  groups     grpconv
Bash:
root@kali:/# ls /boot/grub/
themes
 
Нде, тогда план . Вручную заменить файлы. Только пожалуйста сделайте бекап...
На самом деле моя вина, мне просто нужно чаще спать.....
 
Последнее редактирование:
Вручную заменить файлы.
С каких на какие?
Только пожалуйста сделайте бекап...
Если что-то случится, то я смогу залезть туда из BSD и всё вернуть назад. Но сделаю, конечно. ;)
На самом деле моя вина, мне просто нужно чаще спать.....
К сожалению в данном случае нужен именно Klai Linux, (и BSD использовать нельзя) а в нём для меня всё так неоднозначно, совершенно не по вашей вине.

/boot/grub/grub.cfg вот такого содержания
Bash:
search --set=root --file /live/vmlinuz
set prefix=($root)/boot/grub
configfile ($root)/boot/grub/grub.cfg
Нашёлся на втором разделе

Похоже что в случае LiveUSB единственный метод обновить всё полностью это скачать новый , записать его на вторую флешку и перенести с первой раздел persistence?
 
Похоже что в случае LiveUSB единственный метод обновить всё полностью это скачать новый , записать его на вторую флешку и перенести с первой раздел persistence?
По ссылке в комментарии " " человек предложил руками заменить существующие файлы ядра в каталоге live на новые из каталога boot, переименовах их при этом под старые.
Моя вина в том, что не проспавшись пошёл давать советы....
Сперва переместил initrd.img и vmlinuz из папки / live на моем usb на рабочий стол (для резервного копирования).
Сделайте резервную копию файлов, упомянутых в ./lib/live/mount/persistence/sdxx/live. Примечание sdxx может отличаться.
Затем я скопировал initrd.img-4.9.0-kali4-amd64 и vmlinuz из корневой папки usb persistence rw в папку / live.
Скопируйте файлы из ./boot/ в указанное выше место.
Я переименовал их в initrd.img и vmlinuz и перезагрузил. Вуаля
Переименования будет зависеть от версии ядра, я сделал это с помощью kali 2017.2 и обнаружил, что старое ядро загружалось с использованием полного имени файла, initrd.img-4.12.0-kali1-amd64, а не только initrd.img.
Возможно, вам удастся избежать переименования новых загрузочных файлов, которые будут иметь точно такое же название, как старые. Я не проверял это, вместо этого я пошел в ./lib/live/mount/persistence/sdxx/boot/grub и создал новую запись в grub.cfg, чтобы указать на обновленные файлы initrd.img и vmlinuz.
Прошу простить, я уже давно не работал с kali (особенно с live usb), так что не уверен в правильности указанных путей.
 
Последнее редактирование:
По ссылке в комментарии " "
А-а-а... Там была ссылка! Я пропустил этот момент, какие-то они незаметные.
человек предложил руками заменить существующие файлы ядра в каталоге live на новые из каталога boot
Да, вот только ... ←это_ссылка
None of the existing ISO9660-based live operating systems provide a kernel update feature: the kernel and the initrd are the only components that a live operating system cannot update, because they lay outside of the data persistence partition (if any) and the system partition is, as said, ISO9660-formatted.
The liveng whitepaper on Read the Docs shows how to accomplish what you ask:
The full aim of the liveng project is to give the Community a set of best practices in order to turn a common Debian Linux live into a live(ng) operating system which features:
native encrypted persistence;
kernel update (on a live ISO 9660 filesystem!);
UEFI, with UEFI Secure Boot compatibility, with a real efi partition.
И точно, если вставить в BSD, то этот раздел на USB можно смонтировать так:
Bash:
mount_cd9660 /dev/da1s1 /mnt/usb/
А непосредственно из Kali LInux писать в /lib/live/mount/persistence/sda1/live ничего нельзя, и при попытке его отмонтировать (вдруг он смонтирован ro?)...
Bash:
root@kali:/# umount /run/live/persistence/sda1
umount: /run/live/persistence/sda1: target is busy.
:(
 
Последнее редактирование:
а если (из под bsd) mount -t ext2fs /dev/ad10s2 /mnt/linux/ ? Должно смонтировать. Путь конечно нужно откорректировать под свой раздел и свою точку монтирования .
 
Должно смонтировать.
На USB три раздела.
/dev/ad1s1 — cd9660 загрузочный, где лежит ядро, которое нужно заменить.
/dev/ad1s2 — fat, не понял пока зачем он.
/dev/ad1s3 — ext4 persistence где лежит новое ядро.
Они все монтируются, соответственным образом. Вот только /dev/ad1s1, в котором нужно менять, исключительно для чтения, там cd9660.
а если (из под bsd) mount -t ext2fs /dev/ad10s2 /mnt/linux/
Если
Код:
mount -t ext2fs /dev/ad1s3 /mnt/linux/
То смонтируется. Читать\писать можно. Там persistence, файлы пользовательские лежат, ядро новое, пакеты. Но ядро (старое) грузится с /dev/ad1s1 а он на mount -t ext2fs обругается. А с помощью mount_cd9660 смонтируется, но только для чтения. Как вообще в раздел cd9660 что-то писать? Это же образ CD\DVD, Не знаю, сомневаюсь что такое возможно.
 
Нда, записать что то корректно не убив остальное в cd9660 не выйдет... Тогда действительно 2 расклада: 1) Если вы не используете специфические модули ядра, драйвера от nvidia и не очень беспокоитесь о возможных уязвимостях можете оставить старое ядро. С вероятностью в ~85% оно продолжит нормально работать
2) забекапить весь persistence раздел и действительно перезаписать на флешку...
Спать нужно чаще......мне. Прошу прощения за потраченное время.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!