Третья лаба по операционным системам
1. Информация о диске
user@ubuntu:~$ sudo fdisk -l
[sudo] password for user:
Диск /dev/sda: 21.5 Гб, 21474836480 байт
255 головок, 63 секторов/треков, 2610 цилиндров, всего 41943040 секторов
Units = секторы of 1 * 512 = 512 bytes
Размер сектора (логического/физического): 512 байт / 512 байт
I/O size (minimum/optimal): 512 bytes / 512 bytes
Идентификатор диска: 0x0000d596
Устр-во Загр Начало Конец Блоки Id Система
/dev/sda1 * 63 40098239 20049088+ 83 Linux
/dev/sda2 40098240 41929649 915705 5 Расширенный
/dev/sda5 40098303 41929649 915673+ 82 Linux своп / Solaris
Диск /dev/sdb: 19.2 Гб, 19171721216 байт
255 головок, 63 секторов/треков, 2330 цилиндров, всего 37444768 секторов
Units = секторы of 1 * 512 = 512 bytes
Размер сектора (логического/физического): 512 байт / 512 байт
I/O size (minimum/optimal): 512 bytes / 512 bytes
Идентификатор диска: 0x00000000
На диске /dev/sdb отсутствует верная таблица разделов
2) Графическая утилита для работы с диском
user@ubuntu:~$ sudo cfdisk /dev/sdb
3) Утилита для работы с диском
user@ubuntu:~$ sudo fdisk /dev/sdb
Устройство не содержит ни верной таблицы разделов DOS, ни метки диска Sun, SGI или OSF
Building a new DOS disklabel with disk identifier 0x0e28dead.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Предупреждение: неверный флаг 0x0000 таблицы разделов 4 будет исправлен записью
Команда (m для справки): m
Действие команды
a переключение флага загрузки
b редактирование метки диска bsd
c переключение флага dos-совместимости
d удаление раздела
l список известных типов файловых систем
m вывод этого меню
n добавление нового раздела
o создание новой пустой таблицы разделов DOS
p вывод таблицы разделов
q выход без сохранения изменений
s создание новой чистой метки диска Sun
t изменение id системы раздела
u изменение единиц измерения экрана/содержимого
v проверка таблицы разделов
w запись таблицы разделов на диск и выход
x дополнительная функциональность (только для экспертов)
4) Получить разделы
user@ubuntu:~$ sudo fdisk -l /dev/sdb
Диск /dev/sdb: 19.2 Гб, 19171721216 байт
255 головок, 63 секторов/треков, 2330 цилиндров, всего 37444768 секторов
Units = секторы of 1 * 512 = 512 bytes
Размер сектора (логического/физического): 512 байт / 512 байт
I/O size (minimum/optimal): 512 bytes / 512 bytes
Идентификатор диска: 0x9b3a5615
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 2048 4196351 2097152 83 Linux
/dev/sdb2 4196352 8390655 2097152 83 Linux
/dev/sdb3 8390656 12584959 2097152 83 Linux
/dev/sdb4 12584960 37444767 12429904 5 Расширенный
/dev/sdb5 12587008 16781311 2097152 83 Linux
/dev/sdb6 16783360 20977663 2097152 83 Linux
/dev/sdb7 20979712 25174015 2097152 83 Linux
/dev/sdb8 25176064 29370367 2097152 83 Linux
/dev/sdb9 29372416 37444767 4036176 83 Linux
5) Форматирование
user@ubuntu:~$ mkfs // здесь нажать два раза TAB
mkfs mkfs.cramfs mkfs.ext3 mkfs.ext4dev mkfs.msdos mkfs.vfat
mkfs.bfs mkfs.ext2 mkfs.ext4 mkfs.minix mkfs.ntfs
По заданию нужны:
- NTFS mkfs.ntfs
- FAT32 mkfs.vfat
- EXT2 mkfs.ext2
- EXT3 mkfs.ext3
- EXT4 mkfs.ext4
6) Отформатировать /dev/sdb2 в файловую систему ext4
Можно использовать 3 эквивалента (mkfs -type ext2 или mk2fs или mkfs.ext2)
user@ubuntu:~$ sudo mkfs.ext4 /dev/sdb2
mke2fs 1.42 (29-Nov-2011)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524288 blocks
26214 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inod'ов в группе
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Сохранение таблицы inod'ов: done
Creating journal (16384 blocks): done /// <<<<----- Создан журнал
Writing superblocks and filesystem accounting information: done
7) Проверить на ошибки
user@ubuntu:~$ sudo fsck.ext4 /dev/sdb2
e2fsck 1.42 (29-Nov-2011)
/dev/sdb2: clean, 11/131072 files, 25388/524288 blocks
Чисто)
8) На счет swap (id=82)
Поле Id определяет предполагаемое назначение раздела.
- Тип 82 означает раздел подкачки Linux,
- Тип 83 – раздел для хранения данных. (Usually 83 is used for ext2/3/4)
- Тип 9 — файловая система FAT32.
Полный список поддерживаемых типов, нажмите L внутри утилиты fdisk mkswap — создание раздела подкачки swapon — активизация раздела подкачки
user@ubuntu:~$ sudo mkswap /dev/sdb3 -L MyLabel
Setting up swapspace version 1, size = 2097148 KiB
LABEL=MyLabel, UUID=cf7e3561-3b62-4028-b99e-3e13f9442a59
user@ubuntu:~$ sudo swapon -L MyLabel или user@ubuntu:~$ sudo swapon /dev/sdb3
Посмотреть swap
user@ubuntu:~$ swapon -s # или её аналог cat /proc/swaps
Filename Type Size Used Priority
/dev/sda5 partition 915668 2476 -1
/dev/sdb3 partition 2097148 0 -2
Удалить swap раздел
user@ubuntu:~$ sudo swapoff /dev/sdb3
Для того, что бы и после перезагрузки системы новый swap-раздел использовался ядром нужно прописать монтирование swap-раздела в /etc/fstab
. Для этого потребуется UUID раздела. Его ранее сообщила команда mkswap, но если вы не сохранили вывод этой команды то UUID можно узнать командой
sudo blkid
Теперь пропишем строку в /etc/fstab
echo "UUID=<UUID swap-раздела> swap swap defaults 0 0"| sudo tee -a /etc/fstab
9) На счет размер блока читаем мануалы
man mkfs.ntfs
[-c cluster-size ] # <===
NAME
mkntfs - create an NTFS file system
SYNOPSIS
mkntfs [options] device [number-of-sectors]
mkntfs [ -C ] [ -c cluster-size ] [ -F ] [ -f ] [ -H heads ] [ -h ] [ -I ] [ -L volume-label ] [ -l ] [ -n ] [ -p part-start-sect ]
[ -Q ] [ -q ] [ -S sectors-per-track ] [ -s sector-size ] [ -T ] [ -U ] [ -V ] [ -v ] [ -z mft-zone-multiplier ] [ --debug ] device
[ number-of-sectors ]
...
10) Метка устройства отдельной командой
e2label
или dosfslabel
от ситуации
user@ubuntu:~$ sudo e2label /dev/sdb2 02242-GO
11) Посмотрим на метки и файловые системы
user@ubuntu:~$ sudo blkid /dev/sdb*
/dev/sdb1: UUID="aefb15b0-c95f-40c2-adce-aaa6ec985866" TYPE="ext4"
/dev/sdb2: UUID="0D8A536E209EF669" TYPE="ntfs"
/dev/sdb3: LABEL="MyLabel" UUID="cf7e3561-3b62-4028-b99e-3e13f9442a59" TYPE="swap"
/dev/sdb6: UUID="4DDF-251C" TYPE="vfat"
также можно посмотреть на смонтированных
user@ubuntu:~$ df -T
12) Подготовка к монтированию, для этого надо создать каталог
- pwd - где мы находимся
- cd ../..
- cd mnt
sudo mkdir vetrov
cd vetrov
sudo mkdir ntfs ext2 ext3 ext4 fat32
ls - содержимое
13) Монтирвоание
sudo mount -t ntfs /dev/sda* /mnt/*
user@ubuntu:~$ sudo mount -t ntfs /dev/sdb2 /mnt/vetrov/ntfs
14) Автоматическое монтирование /etc/fstab
раздел_винчестера точка_монтирования файловая_система опции_монтирования два_вспомогательных_числа /mnt/vetrov
Опции:
Опция | Описание |
---|---|
defaults | Использовать настройки по умолчанию. То есть такие: rw,suid,dev,exec,auto,nouser,async. |
rw / ro | Разрешено чтение и запись / Разрешено только чтение |
suid / nosuid | Разрешение / Блокировка работы suid, и sgid бит |
dev / nodev | Интерпретировать / не интерпретировать блок специальных устройств на файловой системе. |
exec / noexec | Разрешить выполнять двоичные файлы находящиеся на этом диске / Запретить |
auto / noauto | Устройство будет устанавливаться автоматически при загрузке / Не будет |
nouser / user | Запрещение монтирование от всех кроме root (nouser) / Разрешение монтировать от лица любого пользователя |
async / sync | Запись и чтение на диске будут производиться асинхронно / Синхронно |
Вспомогательные числа:
1ое число
Возможные значения 0 или 1 – означает, включить/выключить резервное копирование файловой системы при помощи команды dump. Устаревшая опция.2ое число Возможные значения 0, 1, 2, – означает порядок, в котором файловая система должна быть проверена при загрузке:
- 0 – не проверять.
- 1 – должна проверяться первой и использоваться как корневая.
- Для всех остальных систем ставится 2.
sudo nano /etc/fstab # редактор файла
15) Создание файла заданного размера
user@ubuntu:~$ dd if=/dev/zero of=filename bs=100M count=5
5+0 записей считано
5+0 записей написано
скопировано 524288000 байт (524 MB), 3,09439 c, 169 MB/c