Skip to content

Articles from Linux admin course with my own additions

Notifications You must be signed in to change notification settings

bubnovd/Linux-admin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

01. Kernel

Utilites & man pages


02. Disk, RAID


03. LVM, FS, Storage

  • Copy on write snapshot

  • Thin provisioning

  • LVM stripes

  • device mapper

  • Почиттаь про LVM Snapshot

  • overbooking

  • CLVM

  • HA-LVM

  • tmpfs. ramfs. rootfs. initramfs

  • где хранятся inodes? Каков их размер?

  • где устанавливается кол-во inodes

  • reserved block count - зарезервированные 5% блоков диска. Изменяемо

Utilites & man pages

dumpe2fs, lsblk, blkid, pdflush, man hier, man fsync, man 2 sync, tune2fs, stat, ncdu, lsof, fuser, fsck, mkfs, mount, blockdev, debugfs, xfs_info, mount, ls -i, find, hdparm, smartctl, lvcreate(8), lvconvert(8), lvchange(8), dm_multipath, multipathd, dm_crypt, cryptsetup(8), dmsetup

В современных системах имеет смысл выделять при установке: / - 8G /home - 8G /var - 16G

Для приложений стоит выделять отдельные тома (например для mysql - отдельный том в /var/lib/mysql)

  • block. superblock. inode. hardlink.. Block - единица измерения данных на блочном устройстве. Диск оперирует блоками. Файл любого размера не может занимать меньше одного блока. Superblock - информация о ФС:
  • размер ФС
  • размер блока
  • битмап занятых блоков
  • расположение и размер групп блоков и таблиц inode
  • Суперблок находится в 1024 байтах от начала раздела
  • несколько копий суперблока разбросаны по диску

Inode (индексный дескриптор) - информация о файле:

  • размер файла в байтах
  • идентификатор владельца файла
  • идентификатор группы-владельца файла
  • режим доступа к файлу, определяющий кто и какой доступ имеет к файлу
  • дополнительные системные и пользовательские флаги, которые дополнительно могут ограничивать доступ к файлу и его модификацию
  • временные метки, отражающие время модификации индексного дескриптора (ctime, changing time), время модификации содержимого файла (mtime, modification time) и время последнего доступа к файлу (atime, access time)
  • счётчик для учёта количества жёстких ссылок на файл
  • указатели на физические блоки диска, в которых хранится содержимое файла
  • "Inode - это "вещи", на которые указывают записи каталога. Когда вы создаёте жёсткую ссылку на существующий файл, вы создаёте новый элемент директории, но не создаёте новый inode." (UNIX and Linux System Administration Handbook)
  • Индексные дескрипторы объединены в таблицу, которая содержится в начале каждой группы блоков. Обычно при создании файловой системы примерно 1 % её объёма выделяется под индексные дескрипторы . Все айноды хранятся в одной фиксированной таблице. Аллоцируются при создании ФС (новые ФС умеют динамически создавать)

FS

  • ext2 - standard
  • ext3 = ext2 + journaling
  • ext4 - increases few size limits, increases performance + extents (несколько блоков)

ФС кэширует дисковые блоки. Любые блоки могут кэшироваться, включая суперблоки, блоки с айнодами. sync записывает кэш в нужные блоки диска

SSD

Состоит из ячеек флеш памяти, каждая из которых гораздо медленнее HDD, но благодаря параллельности работает быстрее. Страница (4 KiB) может быть перезаписана ограниченное количество раз. Поэтому прошивка распределяет запись между всеми страницами. Похоже на virtual memory

Страницы должны быть стерты перед записью. Стирание - гораздо более медленная опрерация, чем запись. Отдельные страницы не стираются - только кластеры из смежных страниц (обычно 128 страниц или 512 KiB)


04. Boot, BIOS, GRUB

/proc/cmdline - строка запуска ядра, конфигурация

Utilites & man pages

bootparam, mkinitrd


05. SystemD

/sbin/init fork, setsid В основе systemd лежит cgroups Systemd-nspawn

systemd

Utilites & man pages


06. BASH, AWK

test set -x - debug mode exec

Utilites & man pages

hotkeys


Частые вопросы на собеседованиях: LoadAvarage, Process Scheduling, IO Scheduling, Kernel Modules File Systems: Deny root delete, Suid Bit, Journaling file system, COW Network: TIME_WAIT, Shaped Ingress, Vlan, NAT, Bridge, Cluster Networking: K8, Swarm

About

Articles from Linux admin course with my own additions

Resources

Stars

Watchers

Forks

Languages