Показаны сообщения с ярлыком Linux. Показать все сообщения
Показаны сообщения с ярлыком Linux. Показать все сообщения

6 июня 2025 г.

Извлекаем файлы из образа повреждённого диска: ddrescue, losetup и немного магии

 

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

Лучшее решение — создать образ диска и работать с ним, а не с оригиналом. 

В этой статье разберём, как:

  • скопировать весь диск в файл-образ;

  • смонтировать повреждённый раздел и извлечь файлы;

  • восстановить удалённые файлы или повреждённую файловую систему NTFS.

Сначала рассмотрим основные шаги, а затем сложности, которые могут возникнуть в процессе, и пути их решения. 

5 июня 2024 г.

Sar

 

После того, как серверы созданы и развернуты для разработки или продакшена и т. д., основная задача системного администратора – убедиться, что серверы продолжают работать, непрерывно отслеживая использование ресурсов, например использование памяти, использование ЦП и т. д., с помощью различных утилит.

Одна из таких утилит, которая используется для мониторинга серверов RHEL/CentOS, – SAR.

SAR или System Activity Report используется для мониторинга системных ресурсов Linux.

Его можно использовать для создания отчетов, относящихся к производительности системы, то есть отчетов ЦП, отчетов о памяти, отчетов о дисках и т. д.

Он сохраняет отчеты в виде логов в вашей системе.

В этом руководстве мы узнаем о мониторинге системных ресурсов с помощью SAR с помощью некоторых примеров, но сначала мы установим SAR в нашей системе.

26 апреля 2024 г.

Включение IOMMU

Открыть текстовичком

 nano /etc/default/grub
 

Добавить intel_iommu=on to GRUB_CMDLINE_LINUX_DEFAULT=”quiet”

Сохранить и выйти

Далее обновить grub 

update-grub

И сделать reboot

11 июля 2023 г.

Ограничение канала или шейпер в Linux

Если нужно ограничить канал в Linux системах можно воспользоваться пакетами wondershaper и trickle.

В Ubuntu их можно установить командой:

apt-get install wondershaper trickle



1. Пакет wondershaper ограничивает трафик для указанного интерфейса.

Например если требуется ограничить канал на интерфейсе eth0 нужно выполнить команду:

wondershaper eth0 4096 2048



Шейпер ограничит входящее подключение для интерфейса eth0 на уровне 4096 кбит/с (4 Мбит/c), соответственно исходящий канал будет ограничен до 2 Мбит/c.
Посмотреть список интерфейсов в системе можно командой ifconfig -a или ip link

2. Пакет trickle ограничивает канал для указанного процесса.

Например если нужно ограничить канал для браузера firefox то его следует запустить командой:

trickle -d 480 -u 240 firefox



В итоге шейпер ограничит входящий трафик до 4 Мбит/c (480 Кбайт/с) исходящий канал до 2 Мбит/c для процесса firefox.

Для AstraLinux 1.6 SE можно выкачать данные пакеты в linux дистрибутиве команой apt download wondershaper и установить пакет командой dpkg -i

 

source

12 августа 2022 г.

LXC привелигированный контейнер с метками безопасности в AdtraLinux 1.6 se update 6

 В AstraLinux 1.6 появилась возможнсть создавать контейнеры на базе LXC, но, к сожалению, шаблон для контейнера в версиях от "из коробки" до 6 - го обновления сырой: либо контейнер не создается вообще, либо создается, но без меток безопасности,а они ой как нужны. Поэтому на основе 6го обновления был подправлен темплейт для контейнера ALSE1.6 update 6

4 февраля 2022 г.

Обновление AstraLinux 1.6 после рестарта

Обновление системы после рестарта

На АРМ (или сервере) создать сервис
[Unit]
Description=Update system
After=rc-local.service network-online.target
Before=getty.target
Before=systemd-user-sessions.service
 
[Service]
StandardOutput=tty
Type=oneshot
ExecStart=/usr/local/bin/update.sh
 
[Install]
WantedBy=multi-user.target


Выполнить обновление сервисов и добавить новый сервис в автозагрузку
systemctl daemon-reload
systemctl enable update.service

Для автоматического обновления, создать скрипт скрипт /usr/local/bin/update.sh
#!/bin/bash

clear
# вносим в /etc/apt/sources.list используемые репозитории (для примера - репозиторий server, работающий по протоколу ftp):
echo "deb ftp://server/repo/smolensk/disk smolensk main contrib non-free" > /etc/apt/sources.list
echo "deb ftp://server/repo/smolensk/update smolensk main contrib non-free" >> /etc/apt/sources.list
 
echo "Updating system, please wait..."
echo "Do not turn off your computer!"
apt-get update &> /dev/null
apt-get -y dist-upgrade &> /dev/null
apt-get -y install -f &> /dev/null
rm -f /etc/systemd/system/multi-user.target.wants/update.service
systemctl daemon-reload
rm -f /usr/local/bin/update.sh
reboot

Сделать файл исполняемым
chmod +x /usr/local/bin/update.sh

23 ноября 2021 г.

Включение rc.local в AL 1.6 SE (debian 9-10)

 

Создадим файл сервиса:

sudo nano /etc/systemd/system/rc-local.service

Со следующим содержимым: 

[Unit]
Description=/etc/rc.local
ConditionPathExists=/etc/rc.local
 
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
 
[Install]
WantedBy=multi-user.target

 

Создадим сам rc.local:

sudo nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
 
exit 0

Добавим права на выполнение:

sudo chmod +x /etc/rc.local

Добавим сервис в автозапуск:

sudo systemctl enable rc-local

Запускаем сервис:

sudo systemctl start rc-local

Смотрим состояние сервиса:

sudo systemctl status rc-local

30 июля 2020 г.

Горячий резерв ALD

Так как в Astra Linux сервис ALD не имеет возможности штатного горячего резервирования, то пришлось из г0вна и палок мастерить свое.

27 июля 2020 г.

Восстановить удаленный файл в Linux

Данный метод на восстановления удаленных файлов в Linux рабочий при одном условии, во время удаления файл должен быть открыт и использоваться любым приложением. До завершения процесса восстановления файла важно не закрывать приложение или процесс, которое его использует.
Для начала посмотрим вывод программы lsof:
$ lsof | grep myfile
less      4158    root    4r      REG       3,65   114383   1276722 /home/myfile (deleted)
 
myfile — имя удаленного файла. Если видите такую строку, значит можно восстановить удаленный файл.

Нас интересуют данные, которые я выделил жирным шрифтом. На основе их формируем команду ниже. Результат выполнения команды должен быть следующим:

ls -l /proc/4158/fd/4
lr-x------  1 root root 64 Oct 11 17:17 /proc/4158/fd/4 -> /home/yfile (deleted)
 
Для восстановления файла осталось просто его скопировать:
cp /proc/4158/fd/4 /home/myfile_