Распаковка
7z -o"iso" x gparted-live-1.6.0-1-amd64.iso
Внутри папки с распакованным образом:
Для изменения параметров ядра править файлы iso/syslinux/isolinux.cfg (параметры применились при загрузке в виртуалке) и /iso/boot/grub/grub.cfg (параметры применились при загрузке на реальной машине)
Сборка загрузочного образа:
mkisofs -o ../gparted-live-1.6.0-1-amd64-ok.iso -b syslinux/isolinux.bin -c syslinux/boot.cat -cache-inodes -no-emul-boot -boot-load-size 4 -boot-info-table -J -l -R -V "GParteg-OK" ./
Наверное, проще было исправить файлы на, уже записанной, флешке, но этот образ используется в Ventoy.
ISO образ gparted с добавленным параметром ядра nvme_core.default_ps_max_latency_us=0: gparted-live-1.6.0-1-amd64-ok.iso
https://gitlab.gnome.org/GNOME/gparted/-/issues/244
https://losst.pro/redaktirovanie-obrazov-v-linux
http://knoppix.net/forum/threads/21453-SOLVED-I-cant-find-the-boot-catalog-directory-boot-isolinux
fallocate -l 32G .swapfile.dat chmod 600 .swapfile.dat mkswap .swapfile.dat swapon .swapfile.dat swapon -s
dnf copr enable polter/far2l
Для графического окружения:
dnf install far2l
Для консоли:
dnf install far2l-tty
Одновременно друг с другом не живут.
Создаем файл/образ:
fallocate -l 200G /mnt/storage/storage2.img
Подключаем его, как первое свободное loop устройство:
losetup -f /mnt/storage/storage2.img
Шифруем раздел (попросит ввести слово «YES» в верхнем регистре и дважды ввести пароль шифрования):
cryptsetup luksFormat -c aes-xts-plain64 -s 512 -h sha512 $(losetup -l | grep "storage2.img" | awk '{print $1}') или cryptsetup luksFormat $(losetup -l | grep "storage2.img" | awk '{print $1}')
Монтируем шифрованный раздел (попросит ввести пароль), он смонтируется в /dev/mapper/cr-disk:
cryptsetup luksOpen $(losetup -l | grep "storage2.img" | awk '{print $1}') storage2
Форматируем в ext4, нулевым резервированием и меткой «storage2»:
mkfs.ext4 -m 0 -L storage2 /dev/mapper/storage2
Создаём точку монтирования:
mkdir /mnt/storage2
Монтируем:
mount -t ext4 /dev/mapper/storage2 /mnt/storage2
Для отключения:
umount /dev/mapper/storage2 cryptsetup luksClose /dev/mapper/storage2 losetup -d $(losetup -l | grep "storage2.img" | awk '{print $1}')
parted /dev/vda print Номер Начало Конец Размер Тип Файловая система Флаги 1 1049kB 322GB 322GB primary ext4 загрузочный parted /dev/vda resizepart 1 100% resize2fs /dev/vda1
Создать ключ:
dd if=/dev/urandom of=.secret.key bs=1024 count=2
Добавить ключ:
cryptsetup luksAddKey /dev/loop0 .secret.key
Окрыть
cryptsetup luksOpen /dev/loop0 storage2 --key-file=/root/.secret.key
Файл «.secret.key» хранится на шифрованном разделе. Если предполагается монтирование раздела, например, в случае перезагрузки, данный файл вручную копируется в /root/, а после монтирования, уничтожается из /root/, например:
shred -u /root/.secret.key
Всё размонтировать.
Увеличивает до 300 гигабайт сохраняя содержимое:
fallocate -l 300G /mnt/storage/storage2.img
Подключить шифрованный раздел не монтируя файловую систему:
losetup /dev/loop0 /mnt/storage/storage2.img cryptsetup luksOpen /dev/loop0 storage2
Увеличить шифрованный раздел до максимума:
cryptsetup resize storage2
Проверить файловую систему (проверку требует resize2fs):
e2fsck -f /dev/mapper/storage2
Увеличить файловую систему до максимума, после чего, проверить ещё раз:
resize2fs -p /dev/mapper/storage2
Смонтировать файловую систему:
mount /dev/mapper/storage2 /mnt/storage2
Частично отсюда...
Отключение NFS, отмонтирование, проверка
exportfs -u 192.168.1.*:/mnt/storage2 umount /dev/mapper/storage2 e2fsck -f /dev/mapper/storage2
Уменьшение файловой системы до размера чуть меньшего, чем надо. resize2fs может быть очень долгим. С 130G до 550G «уменьшался» пять с половиной часов с загрузкой процессора под 100%
resize2fs -p /dev/mapper/storage2 550G e2fsck -f /dev/mapper/storage2
Всё отключить
cryptsetup luksClose /dev/mapper/storage2 losetup -d $(losetup -l | grep "storage2.img" | awk '{print $1}')
Уменьшение файла образа до нужного размера
truncate -s 600G /mnt/storage/storage2.img
Подключение образа, проверка
losetup -f /mnt/storage/storage2.img cryptsetup luksOpen $(losetup -l | grep "storage2.img" | awk '{print $1}') storage2 e2fsck -f /dev/mapper/storage2
Увеличение файловой системы до размера образа
resize2fs -p /dev/mapper/storage2
Монтирование, экспорт NFS
mount /dev/mapper/storage2 /mnt/storage2 exportfs -o rw,async 192.168.1.*:/mnt/storage2
systemctl mask tmp.mount
Для автоматической очистки /tmp, создать файл /etc/tmpfiles.d/tmp.conf с содержимым:
D! /tmp 1777 root root 0
find \( ! -regex '.*/\..*' \) -type f -exec rm -f {} \;
Удаление всех файлов и папок, включая скрытые:
rm -rf /tmp/* /tmp/.[^.]*
find * -type f -exec touch {} \;
dd if=ФайлОбраза.iso of=/dev/sde bs=4M status=progress oflag=sync
«ФайлОбраза.iso» - образ
«/dev/sde» - непримонтированная флешка
«4M» - копировать блоками по 1-му мегабайту.
woeusb --device windows_10.iso /dev/sdd
# fsck -n /dev/sdc2
В последней строке вывода:
storage: 461100/176742400 files (0.5% non-contiguous), 543355995/706966016 blocks
0.5% non-contiguous - величина фрагментации.
# blkid /dev/sda2: LABEL="capture" UUID="f85e7b79-26be-4b65-9503-c645d03cbd3f" TYPE="ext4" /dev/sda1: LABEL="windows" UUID="332209EF5BB0855D" TYPE="ntfs" /dev/sdb1: UUID="264d4af8-fd08-4e90-bddd-faabe421ff14" TYPE="ext4" /dev/sdb2: LABEL="storage2" UUID="cd29403f-ef2d-42bf-8a18-0cfb17dbde17" TYPE="ext4" /dev/sdc1: UUID="6edd3cad-c551-496d-9d79-85501254fdbf" TYPE="ext4" LABEL="/" /dev/sdc2: LABEL="storage" UUID="9122d8cf-b6b5-4f4e-bb73-b5afd258a0a3" TYPE="ext4"
Задать свой UUID:
tune2fs /dev/sdc1 -U 'UUID'
tune2fs -m 0 /dev/sda2
Не рекомендуется для корневого раздела.
growisofs -speed=2 -Z /dev/sr0 -R -J -V VIDEO-123 VIDEO-123
-speed=2 - Включить 2-ю скорость записи
-Z - записать на устройство /dev/sr0
-R - создать Rock Ridge (опция для mkisofs)
-J - создать Joliet (опция для mkisofs)
-V - метка тома VIDEO-123 (опция для mkisofs)
VIDEO-123 - папка с записываемыми файлами
Для записи с проверкой можно использовать следующий скрипт:
#!/usr/bin/perl # @ARGV[0] - папка с файлами и метка тома (VIDEO-123) $folder=@ARGV[0]; $device="/dev/sr0"; print "------------------------------------------------------------------------------------------------\n"; print "Запись папки $folder\n"; waitDevice(); print "Пауза 5 секунд...\n"; sleep (5); print "Начало записи...\n"; `growisofs -speed=8 -Z $device -R -J -V $folder $folder`; print "Окончание записи...\n"; print "Пауза 10 секунд...\n"; sleep (10); waitDevice(); print "Проверка...\nМонтирование...\n"; `udisks --mount $device`; print "Чтение файлов...\n"; system ("find /media/$folder -type f -exec cp -v {} /dev/null \\;"); print "Размонтирование...\n"; `udisks --unmount $device`; print "Извлечение диска...\n"; `udisks --eject $device`; sub waitDevice { my $c="0"; print "\nОжидание диска "; while ($c eq "0"){ $ret=`udisks --show-info $device | grep "has media:"`; @ar=split (" ",$ret); print "."; sleep (1); $c=@ar[2]; } print "\n"; }
Хранение шифрованных данных в файле
Создаем сам файл, на котором будет храниться шифрованная файловая система:
touch /storage/crypt-file
Заполняем его случайными данными, чтобы сложнее было дешифровать. Задаём размер тома в 300 мегабайт:
shred -v -n1 -s300M /storage/crypt-file
Создаем loopback устройство из файла:
losetup /dev/loop0 /storage/crypt-file
Создаем шифрованный том из устройства /dev/loop0:
cryptsetup -c aes -y create crypt-disk /dev/loop0
Форматируем файловую систему:
mkfs -t ext2 /dev/mapper/crypt-disk
Монтирование:
losetup /dev/loop0 /storage/crypt-file cryptsetup create crypt-disk /dev/loop0 mount /dev/mapper/crypt-disk /media/crypt
Размонтирование:
umount /storage/crypt cryptsetup remove crypt-disk losetup -d /dev/loop0
По материалам BLUG - Wiki - Создание шифрованного тома в Linux
Имеем: grub на sda, Linux на sda1, Windows на sdc1 (NTFS),
Для загрузки Windows с третьего диска (sdc1) необходимо прописать в /boot/grub/grub.conf:
title Windows rootnoverify (hd0,0) map (hd2) (hd0) chainloader (hd2,0)+1 makeactive
и (возможно необязательно) в /boot/grub/device.map добавить:
(hd2) /dev/sdc
#!/bin/bash find ./*.rar -type f | while read FILENAME; do rar x $FILENAME done
Распаковывает все файлы *.rar в текущую папку
22 ноября 2008г.
Проверка переименования всех файлов текущей папки из кодировки cp866 в utf8:
convmv -f cp866 -t utf8 *
Переименование:
convmv -f cp866 -t utf8 * --notest
15 октября 2008г.
mount -t ramfs -omaxsize=256M none /mnt/ram/
8 июня 2008г.
Fedora 8 (ядро 2.6.25.9-40).
1. Отмонтировать раздел с ext3:
umount /dev/sdb2
2. Разрешить монтирование, как ext4:
/sbin/debugfs -w /dev/sdb2 debugfs: set_super_value s_flags 4 debugfs: quit
3. Изменить идентификатор файловой системы на ext4dev в файле /etc/fstab:
/dev/sdb2 /media/capture ext4dev defaults 0 0
4. Смонтировать раздел с ext3:
mount /dev/sdb2
С использованием ntfs-3g:
В файле /etc/fstab
/dev/sdb2 /media/old_d ntfs-3g defaults,locale=ru_RU.UTF-8,user 0 0
Монтируется раздел sdb2 в папку /media/old_d, устанавливается локаль ru_RU.UTF-8
* В Fedora 8 достаточно :
/dev/sdb2 /media/old_d ntfs defaults 0 0
mount Образ.iso /media/iso -o loop umount /media/iso
Конвертирование cue/bin → iso:
bchunk binfile.bin cuefile.cue myisofile.iso
Конвертирование nrg → iso:
nrg2iso image.nrg image.iso
Конвертирование mdf → iso:
mdf2iso image.mdf image.iso
* mdf2iso нет в репозиториях, пакет ставился отсюда - mdf2iso-0.3.0-2.1.x86_64.rpm или mdf2iso-0.3.0-2.1.x86_64.rpm.
На несмонтированных файловых системах, выполнить
e2fsck -f -p -C 0 /dev/sda1
rsync -axvPH / /mnt/new/
(копирует корневой раздел в /mnt/new)
Загрузится в linux rescue
Выполнить
grub-install –root-directory=/ hd0
(если новая система находится на hd0)
Смотреть также Восстановление grub.
1. Грузимся с установочного диска в режиме восстановления.
2. Не подмонтируем chroot.
3. Запускаем grub, в нём:
root (hd0,0) setup (hd0) quit
4. Перегружаемся…
/sbin/e2label /dev/sdb1 /
Переименовывает том sdb1 на /
Создание: На локальной машине:
cat /dev/sda1 > disk.img
Создаёт образ диска sda1 в файл disk.img, может быть смонтирован, как блочное устройство (с опцией -o loop), совместим с форматом образов qemu.
cat /dev/sda1 | bzip2 > disk.img.bz2
Создаёт сжатый образ.
С удалённой машины:
ssh root@remotehost cat /dev/sda1 > disk.img
Восстановление:
Загрузится в rescue mode. Примонтировать раздел, содержащий файл образа. Не монтируя sda1 выполнить:
cat disk.img > /dev/sda1
В папке /boot запустить:
mkinitrd ФайлЗагрузчика Ядро
Создаётся ФайлЗагрузчика, на основании конфигурации Ядра.
Например:
mkinitrd initrd-2.6.24.3-34.ok.img 2.6.24.3-34
В /boot/grub/grub.conf прописываем:
title Fedora (2.6.24.3-34.ok) root (hd0,0) kernel /boot/vmlinuz-2.6.24.3-34.fc8 ro root=/dev/sda1 rhgb quiet initrd /boot/initrd-2.6.24.3-34.ok.img