From 7ef1ee250fc10530d03507a43318aa2c5995ff7d Mon Sep 17 00:00:00 2001 From: Struchkov Mark Date: Tue, 12 Nov 2024 00:29:17 +0300 Subject: [PATCH] =?UTF-8?q?LVM=20=D0=B8=20=D0=B3=D0=BE=D0=BB=D0=BE=D0=B2?= =?UTF-8?q?=D0=BD=D1=8B=D0=B5=20=D0=BC=D1=8E=D1=81=D0=BB=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../postgresql/Индекс в PostgreSQL.md | 6 +- dev/linux/Logical Volume Management.md | 34 ++++++++ .../Основные команды для управления LVM.md | 80 ++++++++++++++++++ ...oud-photo-size-2-5296530902261821546-y.jpg | Bin 0 -> 79303 bytes ...hoto-size-2-5296530902261821546-y.webp.md5 | 1 + meta/zero/00 Головные мюсли.md | 8 ++ muesli/Исторически так сложилось.md | 42 +++++++++ 7 files changed, 168 insertions(+), 3 deletions(-) create mode 100644 dev/linux/Logical Volume Management.md create mode 100644 dev/linux/Основные команды для управления LVM.md create mode 100644 meta/files/images/telegram-cloud-photo-size-2-5296530902261821546-y.jpg create mode 100644 meta/files/images/webp/telegram-cloud-photo-size-2-5296530902261821546-y.webp.md5 create mode 100644 meta/zero/00 Головные мюсли.md create mode 100644 muesli/Исторически так сложилось.md diff --git a/dev/database/postgresql/Индекс в PostgreSQL.md b/dev/database/postgresql/Индекс в PostgreSQL.md index 7fedd1d5..45e6aad2 100644 --- a/dev/database/postgresql/Индекс в PostgreSQL.md +++ b/dev/database/postgresql/Индекс в PostgreSQL.md @@ -9,7 +9,7 @@ date: 2024-03-31 **Особенности:** - Для **первичного ключа** индекс создается автоматически. - Можно **отключить автоматическое обновление индекса** и настроить обновление вручную. -- **Распухание индексов** (bloat) — это проблема увеличения размера индексов со временем, требующая переиндексации. +- **Распухание индексов** ([[Раздутие таблиц|bloat]]) — это проблема увеличения размера индексов со временем, требующая переиндексации. - [[Создание индекса в PostgreSQL]] - [[../Частичный индекс|Частичный индекс]] @@ -24,8 +24,8 @@ date: 2024-03-31 - [[BRIN индекс в PostgreSQL|BRIN индекс]] **Влияние обновления строки на индекс** -- **Обновление индексированной колонки.** По факту мы добавляем новую запись в индекс, а старую забываем. Старая остается мертвым грузом (bloat), индекс распухает, его нужно убрать vacuum. -- **Обновление не индексированной колонки.** Если строка в таблице остается на той же [[../DB page|странице бд]], то есть было место на странице, то индекс не меняется. Если строка не помещается, то добавляется новая запись в индекс, а старая остается мертвым грузом (bloat), индекс распухает, его нужно убрать vacuum. +- **Обновление индексированной колонки.** По факту мы добавляем новую запись в индекс, а старую забываем. Старая остается мертвым грузом ([[Раздутие таблиц|bloat]]), индекс распухает, его нужно убрать - [[Autovacuum]]. +- **Обновление не индексированной колонки.** Если строка в таблице остается на той же [[../DB page|странице бд]], то есть было место на странице, то индекс не меняется. Если строка не помещается, то добавляется новая запись в индекс, а старая остается мертвым грузом ([[Раздутие таблиц|bloat]]), индекс распухает, его нужно убрать vacuum. *** ## Мета информация **Область**:: [[../../../meta/zero/00 PostgreSQL|00 PostgreSQL]] diff --git a/dev/linux/Logical Volume Management.md b/dev/linux/Logical Volume Management.md new file mode 100644 index 00000000..540c612d --- /dev/null +++ b/dev/linux/Logical Volume Management.md @@ -0,0 +1,34 @@ +--- +aliases: + - LVM +tags: + - maturity/🌱 +date: + - - 2024-01-09 +--- +- [[Основные команды для управления LVM|Основные команды для управления LVM]] + +Проверка состояния логических томов (LV) +```bash +sudo lvs -a -o +devices,lv_health_status +``` + +## Logical Volume + + +## Полезные материалы +- [Работа с LVM. Управление дисковыми носителями с помощью Logical Volume Manager](https://www.dmosk.ru/instruktions.php?object=lvm&ysclid=lr6peozovr651519872#delete) +*** +## Мета информация +**Область**:: [[../../meta/zero/00 Linux|00 Linux]] +**Родитель**:: +**Источник**:: +**Автор**:: +**Создана**:: +### Дополнительные материалы +- +### Дочерние заметки + + +- [[Основные команды для управления LVM]] + diff --git a/dev/linux/Основные команды для управления LVM.md b/dev/linux/Основные команды для управления LVM.md new file mode 100644 index 00000000..4c3f9eb3 --- /dev/null +++ b/dev/linux/Основные команды для управления LVM.md @@ -0,0 +1,80 @@ +--- +aliases: +tags: + - maturity/🌱 +date: 2024-11-12 +--- +Эта заметка содержит основные команды для работы с LVM (Logical Volume Management) в Linux. Команды разделены на несколько категорий: физические тома, группы томов, логические тома, управление файловыми системами, создание снимков, а также конфигурация и обслуживание. +## Physical Volumes +- `pvcreate ` — инициализация физического тома для использования в LVM. +- `pvdisplay` — отображение информации о физических томах. +- `pvs` — вывод всех физических томов с краткой информацией. Объем доступного и используемого пространства. +- `pvscan` — сканирование всех дисков на наличие физических томов. +- `pvresize ` — изменение размера физического тома. +## Volume Groups +- `vgcreate ` — создание группы томов из одного или нескольких физических томов. +- `vgextend ` — добавление физического тома в существующую группу томов. +- `vgreduce ` — удаление физического тома из группы. +- `vgdisplay` — отображение информации о группах томов. +- `vgs` — вывод всех групп томов с краткой информацией. +- `vgscan` — сканирование всех дисков для обнаружения групп томов. +- `vgremove ` — удаление группы томов (должна быть пустой). +- `vgrename ` — переименование группы томов. +## Logical Volumes +- `lvcreate -L -n ` — создание логического тома в группе. +- `lvextend -L ` — увеличение размера логического тома. +- `lvreduce -L ` — уменьшение размера логического тома. +- `lvresize -L ` — изменение размера логического тома до заданного значения. +- `lvdisplay` — отображение информации о логических томах. +- `lvs` — вывод всех логических томов с краткой информацией. +- `lvscan` — сканирование всех дисков для обнаружения логических томов. +- `lvrename ` — переименование логического тома. +### Удаление Logical Volume +Размонтировать папку от LV. + +```shell +umount /folder/path +``` + +Откройте `/etc/fstab` и убедитесь, что нет записи для автоматического монтирования файловой системы. Если есть, удалите запись, сохраните изменения и закройте файл. + +``` +nano /etc/fstab +``` + +Также нужно убедиться, что к данной папке не присоединен docker volume. + +После чего можно удалить LV +```shell +lvchange -an /dev/vgname/lvmname +lvremove /dev/vgname/lvmname +``` +### Управление файловыми системами на логических томах +- `mkfs.ext4 /dev//` — создание файловой системы ext4 на логическом томе. +- `mkfs.xfs /dev//` — создание файловой системы XFS на логическом томе. +- `mount /dev// /mnt` — монтирование логического тома в директорию. +- `umount /mnt` — размонтирование логического тома. +## 5. Снимки (Snapshots) +- `lvcreate -L -s -n ` — создание снимка логического тома. +- `lvremove ` — удаление снимка. +- `lvconvert --merge ` — объединение снимка с оригинальным логическим томом. +## 6. Конфигурация и обслуживание LVM +- `lvchange -a y ` — активация логического тома. +- `lvchange -a n ` — деактивация логического тома. +- `vgchange -a y ` — активация группы томов. +- `vgchange -a n ` — деактивация группы томов. +- `vgcfgbackup ` — создание резервной копии метаданных группы томов. +- `vgcfgrestore ` — восстановление метаданных группы томов из резервной копии. +*** +## Мета информация +**Область**:: [[../../meta/zero/00 Linux|00 Linux]] +**Родитель**:: [[Logical Volume Management|Logical Volume Management]] +**Источник**:: +**Создана**:: [[2024-11-12]] +**Автор**:: +### Дополнительные материалы +- + +### Дочерние заметки + + diff --git a/meta/files/images/telegram-cloud-photo-size-2-5296530902261821546-y.jpg b/meta/files/images/telegram-cloud-photo-size-2-5296530902261821546-y.jpg new file mode 100644 index 0000000000000000000000000000000000000000..67a4b4f952ede59170cc4c0245a6f48431aaad70 GIT binary patch literal 79303 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 + +- [[Исторически так сложилось]] + \ No newline at end of file diff --git a/muesli/Исторически так сложилось.md b/muesli/Исторически так сложилось.md new file mode 100644 index 00000000..5e46b64f --- /dev/null +++ b/muesli/Исторически так сложилось.md @@ -0,0 +1,42 @@ +--- +aliases: +tags: + - maturity/🌱 + - content/muesli +date: 2024-11-12 +--- +## Анекдот +Яша с утра спросил у супруги, почему она отрезает кончики сосисок, когда готовит их. «Не знаю, меня мама так научила, спроси у неё», — отвечает супруга. Яша оказался любопытным и пошёл к тёще. Он спросил: «Мама, почему действительно вы всё время кончики у сосисок отрезаете, когда варите?» + +Она говорит: «Я не знаю, меня мама так научила. Если тебе интересно, позвони ей». Ну Яша такой любопытный, пошёл звонить. Звонит, говорит: «Ида Самуиловна, это Яша, ваша внучка (моя жена) и ваша дочь (моя тёща) всё время, когда варят сосиски, отрезают кончики и говорят, что это вы их научили. В чём смысл?» + +«Вы что, до сих пор варите сосиски в той моей самой маленькой кастрюлечке?» + +*** + +В старых проектах часто можно услышать фразу: "Исторически так сложилось". Это объяснение используется, когда никто уже не помнит, почему было принято какое-то решение, но все продолжают следовать этой практике. Как и в анекдоте, причина, по которой что-то делается именно так, теряется во времени, а изначальная необходимость, возможно, давно отпала. + +Такие устаревшие решения могут быть следствием технических ограничений, которые были актуальны на момент создания системы, или обусловлены привычками и отсутствием времени на пересмотр принятых решений. С течением времени кодовая база разрастается, а оригинальные мотивации забываются. В итоге разработчики продолжают следовать устаревшим практикам, не подвергая их сомнению. + +Ситуации, когда решение было принято "потому что так было удобно 10 лет назад", могут сдерживать развитие проекта и приводить к трудностям в поддержке и модернизации системы. + +Разработка требует регулярного переосмысления архитектурных решений и устранения наследия, которое перестало приносить пользу. Периодически задавая вопрос "Почему это сделано именно так?", можно избежать накопления технического долга и упростить жизнь будущим разработчикам. + +**Как бороться с наследием прошлого** +1. **Документировать решения**: Поддержка документации помогает понимать, почему определённое решение было принято, и облегчает пересмотр устаревших подходов. Например, Architecture decision log +2. **Регулярные ревизии кода**: Периодически пересматривайте старый код, чтобы выявлять и устранять неэффективные решения. +3. **Постоянное обучение команды**: Обучение помогает разработчикам понимать современные подходы и технологии, что позволяет быстрее определять устаревшие паттерны. +4. **Открытые обсуждения**: Создайте культуру, где команда может открыто задавать вопросы о текущих решениях и предлагать улучшения. Например TechTalk +*** +## Мета информация +**Область**:: [[../meta/zero/00 Головные мюсли|00 Головные мюсли]], [[../meta/zero/00 Разработка|00 Разработка]] +**Родитель**:: +**Источник**:: +**Создана**:: [[2024-11-12]] +**Автор**:: +### Дополнительные материалы +- + +### Дочерние заметки + +