21
октября
2022
15:12

Короткие советы

21 октября 2022 15:12

Сборник коротких советов.

1) Если после некорректного выключения компьютера Linux не запускается, на чёрном фоне мигает курсор: загрузиться с USB флешки в режиме Live, запустить Терминал и выполнить проверку разделов жесткого диска:

lsblk
sudo fsck /dev/sda5
sudo fsck /dev/sda6

где sda5 и sda6 - разделы "/" и "/home", соответственно.

2) Создание образа жесткого диска с игнорированием ошибок (например, для восстановления фотографий):

sudo dd if=/dev/sdb of=ndd.img conv=noerror,sync

Улучшенный способ спасения данных с сильно поврежденного раздела жесткого диска /dev/sdc1 на другой диск, смонтированный в каталог "/media/user/foto", в файл petrov.img:

sudo ddrescue -f /dev/sdc1 /media/user/foto/petrov.img mapfile

Восстановление фотографий из файла образа диска: сканировать спасенный раздел (результат восстановления в файле petrov.img) глубоким поиском с помощью программы https://recuva.ru/ для Windows.

3) Чтобы убрать надоедливое видео, которое каждый раз запускается на сайте, установите расширение FireFox "Block Site" (https://add0n.com/block-site.html) и добавьте домен, с которого воспроизводится это видео, в список "Existing Rules". Пример такого правила: *://vp.rambler.ru/*.

Также, можно использовать "заглушки" в файле /etc/hosts. Например, сроки:
127.0.0.1 dsp-rambler.ru
127.0.0.1 zoomdecorate.rambler.ru
В браузере FireFox в настройках "Приватность и защита" включаем "Строгую" защиту.

4) Вывести список всех служб менеджера systemd, а также список сервисов, которые запускаются при каждой загрузке (Источник: linuxhandbook.com)

systemctl list-units --type=service
systemctl list-unit-files --type=service --state=enabled

5) Попытаться запустить службу и посмотреть ошибку в журнале:

systemctl start ‹service_name›
systemctl status ‹service_name›
journalctl -xe

6) Выключение ПК Linux из командной строки

sudo shutdown -P now

7) Если из командной строки не работают команды host и nslookup (ошибка "bash: nslookup: команда не найдена"), нужно установить пакет "dnsutils".

sudo apt-get install dnsutils

8) Команда, обратная по действию add-apt-repository:

Как удалить PPA-репозиторий из операционной системы:

sudo apt-get update
sudo apt-get install ppa-purge
sudo ppa-purge ppa:something/ppa

9) Самое быстрое ядро Linux для старых процессоров - 5.10.0-051000-generic
(Версия 6.0 принесла исправление ошибок (bugfixes), но скорость выполнения программ несколько упала. Более старая версия 5.6 тоже медленней, чем 5.10).
Установка ядер 5.10, или 5.11.17 или 5.12.0 одной командой - на GitHub
Взято с GitHub, установка ядра 5.10:
mkdir -p /tmp/ && cd /tmp/ && \
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-headers-5.10.0-051000_5.10.0-051000.202012132330_all.deb && \
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-headers-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb && \
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-image-unsigned-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb && \
wget -c https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10/amd64/linux-modules-5.10.0-051000-generic_5.10.0-051000.202012132330_amd64.deb && \
sudo dpkg -i *.deb

Примечание: В Ubuntu 22.04 (и Linux Mint 21 "Vanessa") пакет linux-headers-5.10.0-051000-generic установится с ошибкой т.к. пакет окажется сломанным, из-за неудовлетворенной зависимости от библиотеки libssl1.1. Решил проблему следующим образом: после выбора в меню дополнительного варианта загрузки 5.10, загрузки с ядром 5.10:

  • починил пакеты командой sudo apt-get install -f (при этом неисправный пакет linux-headers-5.10 был удалён)
  • скачал libssl1.1.deb для своей архитектуры (AMD64)
  • установил двойным щелчком мыши libssl1.1_1.1.1n-0+deb10u3_amd64.deb
  • скачал linux-headers-5.10.0-051000-generic...amd64.deb
  • установил двойным щелчком мыши linux-headers-5.10.0-051000-generic
  • перезагрузил ПК, загрузился в то же ядро 5.10. Теперь sudo apt-get install -f не даёт ошибок, а linux-headers-5.10.0-051000-generic установлен.

10) Если в журнале dmesg видна ошибка r8169 0000:03:00.0: Unable to load firmware rtl_nic/rtl8168g-2.fw (-22), решение проблемы: sudo apt-get update && sudo apt-get reinstall firmware-realtek

11) Пересобрать intiramfs в текущем ядре или освежить initramfs всех ядер в системе. (Регенерация начальной файловой системы в оперативной памяти (RAMdisk) -файлов initramfs с именами initrd.img-* ):
sudo update-initramfs -c -k $(uname -r)
sudo update-initramfs -c -k all

12) Если обновление sudo apt-get update зависло на этапе настройки параметров пакетов, процесс можно прервать Ctrl+C и продолжить выполнение обновления командой:

sudo dpkg --configure -a

"Битые" же пакеты исправляются командой

sudo apt-get install -f

13) Массовое переименование файлов по маске из командной строки Linux:

 sudo apt-get install mmv

 mmv '*.png' 'img#1.png'

Результат: файл 1.png будет переименован в img1.png, 2.png в img2.png и т.д..
(Источник)

14) Включить более агрессивную выгрузку из оперативной памяти в SWAP, чтобы освободить ОЗУ.
Считаю, параметр swapiness следует увеличить с 60 до 100 при включенном сжатии ОЗУ при помощи ZSwap.

Просмотреть параметр swapiness:

cat /proc/sys/vm/swappiness 

Установить новое значение (от 0 до 100):

sudoedit /etc/sysctl.conf

На устаревших ПК с малым объёмом ОЗУ, но быстрым диском SSD добавьте в конец файла "/etc/sysctl.conf" строку
vm.swappiness = 100
а на мощных ПК с ОЗУ от 16 Гбайт и выше - можно уменьшить использование файла подкачки до нуля.
vm.swappiness = 0
и перезагрузите ОС. Проверка: free -m
Значение swapiness по умолчанию - 60.

Примечание. Параметр swappiness = 0 или 1 рекомендуется для серверов баз данных, с большим объёмом ОЗУ

Следующие команды, отключающие команды включения и отключения SWAP, перемещают страницы памяти из файла подкачки обратно в ОЗУ (для мощных рабочих станций и серверов):

sudo swapoff --all
sudo swapon --all

15) Вывести статистику использования жесткого диска: размер каталогов первого уровня.

sudo du --max-depth=1 -h /

или

sudo tree -hF /

Подсчитать размер домашней папки:

sudo tree -hf /home

16) Проверка воспроизведения звука через Интернет

mpv https://radioday.fm/mp3site

17) Спасти раздел /dev/sdc3 неисправного HDD диска (с бэд-блоками) в файл file.img на внешний USB диск,
смонтированный в папку /media ...

while true; do sudo ddrescue -r 0 -a 10 /dev/sdc3 /media/vladimir/NTFS/file.img log.logfile; done

18) (Windows) Борьба с утечкой памяти WMI, процессом wmiapsrv,exe: добавить задание в Планировщик с запуском от имени Администратора с наивысшими правами, ежедневно, команды:

 taskkill /im wmiapsrv,exe /f


Похожие публикации