fix some answers and symbols

delete some symbols
add tables to some answers
change answers on LA questions
This commit is contained in:
Swfuse 2022-08-24 23:04:27 +03:00 committed by GitHub
parent 0d56c115bc
commit 4bd160c3ea
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -29,8 +29,8 @@
- [Как посмотреть нагрузку на диски?](#%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D0%BD%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D1%83-%D0%BD%D0%B0-%D0%B4%D0%B8%D1%81%D0%BA%D0%B8)
- [В чем разница между объявлением переменной export VAR="VALUE" и VAR="VALUE" в bash?](#%D0%B2-%D1%87%D0%B5%D0%BC-%D1%80%D0%B0%D0%B7%D0%BD%D0%B8%D1%86%D0%B0-%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D0%BE%D0%B1%D1%8A%D1%8F%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC-%D0%BF%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D0%BE%D0%B9-export-varvalue-%D0%B8-varvalue-%D0%B2-bash)
- [Что значит $@ в bash?](#%D1%87%D1%82%D0%BE-%D0%B7%D0%BD%D0%B0%D1%87%D0%B8%D1%82--%D0%B2-bash)
- [Как выполнить фильтрацию вывода команды, чтобы на экран были выведены только ошибки STDERR, истрорируя STDOUT?](#%D0%BA%D0%B0%D0%BA-%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D1%8C-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8E-%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4%D0%B0-%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B-%D1%87%D1%82%D0%BE%D0%B1%D1%8B-%D0%BD%D0%B0-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD-%D0%B1%D1%8B%D0%BB%D0%B8-%D0%B2%D1%8B%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D1%8B-%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B8-stderr-%D0%B8%D1%81%D1%82%D1%80%D0%BE%D1%80%D0%B8%D1%80%D1%83%D1%8F-stdout)
- [Как посмотреть описание дескриптора? Как посмотреть время последней модификации файла?](#%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B4%D0%B8%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D1%80%D0%B0-%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D0%B2%D1%80%D0%B5%D0%BC%D1%8F-%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B5%D0%B9-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0)
- [Как выполнить фильтрацию вывода команды, чтобы на экран были выведены только ошибки STDERR, игнорируя STDOUT?](#%D0%BA%D0%B0%D0%BA-%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D1%8C-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8E-%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4%D0%B0-%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B-%D1%87%D1%82%D0%BE%D0%B1%D1%8B-%D0%BD%D0%B0-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD-%D0%B1%D1%8B%D0%BB%D0%B8-%D0%B2%D1%8B%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D1%8B-%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B8-stderr-%D0%B8%D0%B3%D0%BD%D0%BE%D1%80%D0%B8%D1%80%D1%83%D1%8F-stdout)
- [Как посмотреть описание дескриптора? Как посмотреть время последней модификации файла?](#%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B4%D0%B5%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D1%80%D0%B0-%D0%BA%D0%B0%D0%BA-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D0%B2%D1%80%D0%B5%D0%BC%D1%8F-%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B5%D0%B9-%D0%BC%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%B8-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0)
- [Как работает sudo? Для чего она используется?](#%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-sudo-%D0%B4%D0%BB%D1%8F-%D1%87%D0%B5%D0%B3%D0%BE-%D0%BE%D0%BD%D0%B0-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D1%83%D0%B5%D1%82%D1%81%D1%8F)
- [Что такое userspace, kernelspace? Чем они отличаются?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-userspace-kernelspace-%D1%87%D0%B5%D0%BC-%D0%BE%D0%BD%D0%B8-%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B0%D1%8E%D1%82%D1%81%D1%8F)
- [Что такое системные вызовы? Зачем они нужны и как они работают? Какие системные вызовы знаешь 5-10](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B5-%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%D1%8B-%D0%B7%D0%B0%D1%87%D0%B5%D0%BC-%D0%BE%D0%BD%D0%B8-%D0%BD%D1%83%D0%B6%D0%BD%D1%8B-%D0%B8-%D0%BA%D0%B0%D0%BA-%D0%BE%D0%BD%D0%B8-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%8E%D1%82-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B5-%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%D1%8B-%D0%B7%D0%BD%D0%B0%D0%B5%D1%88%D1%8C-5-10)
@ -66,18 +66,20 @@
- [Что такое major and minor numbers блочных устройств, чему они соответствуют?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-major-and-minor-numbers-%D0%B1%D0%BB%D0%BE%D1%87%D0%BD%D1%8B%D1%85-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2-%D1%87%D0%B5%D0%BC%D1%83-%D0%BE%D0%BD%D0%B8-%D1%81%D0%BE%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82)
- [Что такое файловая система? Для чего она нужна?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D0%B0%D1%8F-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0-%D0%B4%D0%BB%D1%8F-%D1%87%D0%B5%D0%B3%D0%BE-%D0%BE%D0%BD%D0%B0-%D0%BD%D1%83%D0%B6%D0%BD%D0%B0)
- [Как создать файловую систему на блочном устройстве? Какие параметры можно задать при создании?](#%D0%BA%D0%B0%D0%BA-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D1%83%D1%8E-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83-%D0%BD%D0%B0-%D0%B1%D0%BB%D0%BE%D1%87%D0%BD%D0%BE%D0%BC-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B5-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D1%8B-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%B7%D0%B0%D0%B4%D0%B0%D1%82%D1%8C-%D0%BF%D1%80%D0%B8-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B8)
- [Что такое **inodes айноды**](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-inodes-%D0%B0%D0%B9%D0%BD%D0%BE%D0%B4%D1%8B)
- [Где физически находятся inodes айноды](#%D0%B3%D0%B4%D0%B5-%D1%84%D0%B8%D0%B7%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8-%D0%BD%D0%B0%D1%85%D0%BE%D0%B4%D1%8F%D1%82%D1%81%D1%8F-inodes-%D0%B0%D0%B9%D0%BD%D0%BE%D0%B4%D1%8B)
- [По какой причине и на какого типа системах айноды могут закончиться? И к чему это может привести?](#%D0%BF%D0%BE-%D0%BA%D0%B0%D0%BA%D0%BE%D0%B9-%D0%BF%D1%80%D0%B8%D1%87%D0%B8%D0%BD%D0%B5-%D0%B8-%D0%BD%D0%B0-%D0%BA%D0%B0%D0%BA%D0%BE%D0%B3%D0%BE-%D1%82%D0%B8%D0%BF%D0%B0-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0%D1%85-%D0%B0%D0%B9%D0%BD%D0%BE%D0%B4%D1%8B-%D0%BC%D0%BE%D0%B3%D1%83%D1%82-%D0%B7%D0%B0%D0%BA%D0%BE%D0%BD%D1%87%D0%B8%D1%82%D1%8C%D1%81%D1%8F-%D0%B8-%D0%BA-%D1%87%D0%B5%D0%BC%D1%83-%D1%8D%D1%82%D0%BE-%D0%BC%D0%BE%D0%B6%D0%B5%D1%82-%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%81%D1%82%D0%B8)
- [Какая файловая система бывает динамическими айнодами?](#%D0%BA%D0%B0%D0%BA%D0%B0%D1%8F-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D0%B0%D1%8F-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0-%D0%B1%D1%8B%D0%B2%D0%B0%D0%B5%D1%82--%D0%B4%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%BC%D0%B8-%D0%B0%D0%B9%D0%BD%D0%BE%D0%B4%D0%B0%D0%BC%D0%B8)
- [Где хранится информация об именах файлов, директорий?](#%D0%B3%D0%B4%D0%B5-%D1%85%D1%80%D0%B0%D0%BD%D0%B8%D1%82%D1%81%D1%8F-%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D1%8F-%D0%BE%D0%B1-%D0%B8%D0%BC%D0%B5%D0%BD%D0%B0%D1%85-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2-%D0%B4%D0%B8%D1%80%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B9)
- [Каким образом осуществляется монтирование ФС? Как можно посмотреть список примонтированных ФС? 2 - 3](#%D0%BA%D0%B0%D0%BA%D0%B8%D0%BC-%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%BC-%D0%BE%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%BB%D1%8F%D0%B5%D1%82%D1%81%D1%8F-%D0%BC%D0%BE%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%84%D1%81-%D0%BA%D0%B0%D0%BA-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA-%D0%BF%D1%80%D0%B8%D0%BC%D0%BE%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D1%84%D1%81-2---3)
- [Каким образом осуществляется монтирование ФС? Как можно посмотреть список примонтированных ФС? 2 - 3 способа](#%D0%BA%D0%B0%D0%BA%D0%B8%D0%BC-%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%BC-%D0%BE%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D0%BB%D1%8F%D0%B5%D1%82%D1%81%D1%8F-%D0%BC%D0%BE%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%84%D1%81-%D0%BA%D0%B0%D0%BA-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BF%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D1%82%D1%8C-%D1%81%D0%BF%D0%B8%D1%81%D0%BE%D0%BA-%D0%BF%D1%80%D0%B8%D0%BC%D0%BE%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-%D1%84%D1%81-2---3-%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1%D0%B0)
- [Что такое псевдофайловая система?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D0%BF%D1%81%D0%B5%D0%B2%D0%B4%D0%BE%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D0%B0%D1%8F-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0)
- [Какие проблемы могут возникать с файловой системой и жёстким диском? Можно ли восстановить ФС при незначительном повреждении её структуры? Как это сделать?](#%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%BF%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D1%8B-%D0%BC%D0%BE%D0%B3%D1%83%D1%82-%D0%B2%D0%BE%D0%B7%D0%BD%D0%B8%D0%BA%D0%B0%D1%82%D1%8C-%D1%81-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D0%BE%D0%B9-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BE%D0%B9-%D0%B8-%D0%B6%D1%91%D1%81%D1%82%D0%BA%D0%B8%D0%BC-%D0%B4%D0%B8%D1%81%D0%BA%D0%BE%D0%BC-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BB%D0%B8-%D0%B2%D0%BE%D1%81%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D1%8C-%D1%84%D1%81-%D0%BF%D1%80%D0%B8-%D0%BD%D0%B5%D0%B7%D0%BD%D0%B0%D1%87%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC-%D0%BF%D0%BE%D0%B2%D1%80%D0%B5%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B8-%D0%B5%D1%91-%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B-%D0%BA%D0%B0%D0%BA-%D1%8D%D1%82%D0%BE-%D1%81%D0%B4%D0%B5%D0%BB%D0%B0%D1%82%D1%8C)
- [Какую файловую систему выбрать ext4 или xfs?](#%D0%BA%D0%B0%D0%BA%D1%83%D1%8E-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D1%83%D1%8E-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83-%D0%B2%D1%8B%D0%B1%D1%80%D0%B0%D1%82%D1%8C-ext4-%D0%B8%D0%BB%D0%B8-xfs)
- [Как определить, на каком физическом жёстком диске находится раздел с файловой системой? Как можно идентифицировать этот носитель без выключения сервера?](#%D0%BA%D0%B0%D0%BA-%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B8%D1%82%D1%8C-%D0%BD%D0%B0-%D0%BA%D0%B0%D0%BA%D0%BE%D0%BC-%D1%84%D0%B8%D0%B7%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%BC-%D0%B6%D1%91%D1%81%D1%82%D0%BA%D0%BE%D0%BC-%D0%B4%D0%B8%D1%81%D0%BA%D0%B5-%D0%BD%D0%B0%D1%85%D0%BE%D0%B4%D0%B8%D1%82%D1%81%D1%8F-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-%D1%81-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2%D0%BE%D0%B9-%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BE%D0%B9-%D0%BA%D0%B0%D0%BA-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D1%86%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D1%8D%D1%82%D0%BE%D1%82-%D0%BD%D0%BE%D1%81%D0%B8%D1%82%D0%B5%D0%BB%D1%8C-%D0%B1%D0%B5%D0%B7-%D0%B2%D1%8B%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0)
- [Как узнать, какими процессами используется раздел? lsof, fuser, grep within procfs](#%D0%BA%D0%B0%D0%BA-%D1%83%D0%B7%D0%BD%D0%B0%D1%82%D1%8C-%D0%BA%D0%B0%D0%BA%D0%B8%D0%BC%D0%B8-%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D1%81%D1%81%D0%B0%D0%BC%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D1%83%D0%B5%D1%82%D1%81%D1%8F-%D1%80%D0%B0%D0%B7%D0%B4%D0%B5%D0%BB-lsof-fuser-grep-within-procfs)
- [Для чего необходимы файлы /etc/fstab, /etc/mtab, /etc/mdadm/mdadm.conf?](#%D0%B4%D0%BB%D1%8F-%D1%87%D0%B5%D0%B3%D0%BE-%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D1%8B-%D1%84%D0%B0%D0%B9%D0%BB%D1%8B-etcfstab-etcmtab-etcmdadmmdadmconf)
- [Отличие хардлинков от симлинков hardlinks symlinks](#%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B8%D0%B5-%D1%85%D0%B0%D1%80%D0%B4%D0%BB%D0%B8%D0%BD%D0%BA%D0%BE%D0%B2-%D0%BE%D1%82-%D1%81%D0%B8%D0%BC%D0%BB%D0%B8%D0%BD%D0%BA%D0%BE%D0%B2-hardlinks-symlinks)
- [Что такое RAID? Какие основные типы RAID существуют, чем они](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-raid-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5-%D1%82%D0%B8%D0%BF%D1%8B-raid-%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82-%D1%87%D0%B5%D0%BC-%D0%BE%D0%BD%D0%B8)
- [Что такое RAID? Какие основные типы RAID существуют, чем они отличаются?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-raid-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5-%D1%82%D0%B8%D0%BF%D1%8B-raid-%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82-%D1%87%D0%B5%D0%BC-%D0%BE%D0%BD%D0%B8-%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B0%D1%8E%D1%82%D1%81%D1%8F)
- [Какие средства для работы с программными RAID массивами существуют в linux?](#%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D1%81%D1%80%D0%B5%D0%B4%D1%81%D1%82%D0%B2%D0%B0-%D0%B4%D0%BB%D1%8F-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B-%D1%81-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D0%BC%D0%B8-raid-%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2%D0%B0%D0%BC%D0%B8-%D1%81%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2%D1%83%D1%8E%D1%82-%D0%B2-linux)
- [Что такое LVM? Для решения каких задач он предназначен?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-lvm-%D0%B4%D0%BB%D1%8F-%D1%80%D0%B5%D1%88%D0%B5%D0%BD%D0%B8%D1%8F-%D0%BA%D0%B0%D0%BA%D0%B8%D1%85-%D0%B7%D0%B0%D0%B4%D0%B0%D1%87-%D0%BE%D0%BD-%D0%BF%D1%80%D0%B5%D0%B4%D0%BD%D0%B0%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD)
- [Что такое loop devices? Как их можно использовать?](#%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-loop-devices-%D0%BA%D0%B0%D0%BA-%D0%B8%D1%85-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C)
@ -235,9 +237,9 @@
KVM (или kvm over ip) — устройство, позволяющее передавать видеосигнал и ввод с мыши/клавиатуры по сети с использованием IP-протокола от вашего сервера. При помощи KVM вы можете перезагрузить сервер, получить доступ в BIOS сервера и к другим функциям, которые невозможно выполнить на сервере через терминал. То есть он обособлен от операционной системы.
У нас как я понимаю используется уже как последнее средство. Сервер не грузится, или есть ещё какой-то программный сбой.
Часто используется как последнее средство. Сервер не грузится, или есть ещё какой-то программный сбой.
KVM - клавиатура монитор(видео) мышь
KVM - клавиатура, монитор(видео), мышь.
---
@ -278,6 +280,7 @@
данные с сенсоров, удаленный администратор посылает команду на BMC, а
BMC в свою очередь обращается к сенсорам.
Подробнее о технологии можно почитать по ссылке:
[https://selectel.ru/blog/ipmi-obzor-texnologii/](https://selectel.ru/blog/ipmi-obzor-texnologii/)
@ -312,20 +315,20 @@
- Ответ
- Модель процессора `proc/cpuinfo`
```python
```
model name : Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz
model : 45
```
Та же модель процессора через `lscpu`
```python
```
Model name: Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz
```
Ядра физические и логические
```python
```
vm13 : ~ [0] # grep "cpu cores" /proc/cpuinfo |sort -u |cut -d":" -f2
4
vm13 : ~ [0] # grep -c "processor" /proc/cpuinfo
@ -334,23 +337,24 @@
Поддерживаемые инструкции /proc/cpuinfo и lscpu
Но возможно стоит в спецификацию посмотреть
Но возможно стоит также в спецификацию посмотреть
```python
```
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl xtopology pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx hypervisor lahf_lm kaiser tpr_shadow vnmi flexpriority ept vpid tsc_adjust xsaveopt arat
```
режимы работы
режимы работы процессора
`find / -name scaling_governor`
`find / -name scaling_max_freq`
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
`cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor`
- **powersave** — режим энергосбережения, ядро будет работать на пониженных частотах
- **ondemand** — режим зависящей от текущей нагрузки на ядро
- **performance** — режим максимальной мощности, выставляет максимально возможную частоту
- Физические ядра - это число физических ядер, реальных аппаратных компонентов.
Логические ядра - это число физических ядер, умноженное на количество потоков, которые могут выполняться на каждом ядре с помощью гиперпотока.
например, мой 4-ядерный процессор запускает два потока на ядро, поэтому у меня есть 8 логических процессоров.
@ -378,11 +382,12 @@
---
### Типы оперативной памяти, модели материнской платы, версии BIOS?
### Типы оперативной памяти, модели материнской платы, версии BIOS?
Оперативная память
**Оперативная память**
```python
```
dmidecode --type memory
# dmidecode --type 17
# dmidecode 2.11
@ -433,7 +438,7 @@
Материнская плата
```python
```
dmidecode --type baseboard
Handle 0x0002, DMI type 2, 15 bytes
@ -501,7 +506,7 @@
Но большая часть информации через ipmicfg может взяться
```bash
hocking : ~ [0] # ipmicfg -pminfo
sorshocking : ~ [0] # ipmicfg -pminfo
[SlaveAddress = 78h] [Module 1]
Item | Value
---- | -----
@ -551,7 +556,7 @@
- Ответ дополнить
```bash
storage13 : ~ [0] # lspci | grep net
sorsstorage13 : ~ [0] # lspci | grep net
01:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
01:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
```
@ -610,7 +615,7 @@
```bash
ls /sys/class/net
altdocker-sys docker0 eth1 veth12f3f63 veth2ab7aa7 veth62b367d vethbe4b44c vethd2a5488
additional-docker-sys-sys docker0 eth1 veth12f3f63 veth2ab7aa7 veth62b367d vethbe4b44c vethd2a5488
br-a67eedd3a789 eth0 lo veth26cd9d1 veth39864d5 vethb7e97f1 vethd29a7c3
```
@ -640,7 +645,7 @@
### Расскажи, как происходит процесс загрузки ОС linux с момента нажатия кнопки питания.
- Написать как грузится система
- Процесс загрузки системы
Этапы следующие
@ -772,14 +777,15 @@
### Что такое PXE? Как загрузиться по сети?
- Написать ответ
- Ответ
PXE - (Preboot eXecution Environment читается как пикси) - среда загрузки компа с помощью сетевой карты.
Сервер, предоставляющий загрузку по сети PXE. Фишка в том, что это позволяет устанавливать ось не ходя всё время со флешкой
(Pre Execution Environment).
Сервер, предоставляющий загрузку по сети PXE. Фишка в том, что это позволяет устанавливать ось не ходя всё время со флешкой с системой.
Выглядит так - питание → BIOS → стек сетевой платы ЗЧУ → программа сетевой загрузки NBP, которая загружается с TFTP сервера в память машины, и дальше грузится образ.
А PXE-код находится в ПЗУ сетевой карты, и получает по сети по протоколу TTFTP исполняемый файл.
Как замутить загрузку такую?
Заходим в биос, адванс. Будет что-то типа LAN boot
При фаст буте будет что-то типа Network Atheros Boot Agent
@ -789,11 +795,11 @@
### Что такое ядро, initramfs, загрузчик?
- Написать ответ
- Ответ
**Ядро** - это самый низкий уровень программного обеспечения, которое взаимодействует с аппаратными средствами компьютера. Оно отвечает за взаимодействие всех приложений, работающих в пространстве пользователя вплоть до физического оборудования.
**Initframs** - основная цель предоставить пользователю его файлы, которые размещены в файловой системе. То есть для ядра нужно найти, примонтировать файловую систему и предоставить юзеру.
**Initframs** - основная цель предоставить пользователю его файлы, которые размещены в файловой системе. То есть для ядра нужно найти, примонтировать файловую систему и предоставить пользователю.
**Загрузчик** операционной системы — системное программное обеспечение, обеспечивающее загрузку операционной системы непосредственно после включения компьютера (процедуры POST) и начальной загрузки.
@ -830,8 +836,9 @@
### Что такое systemd и init ? В чем основное преимущество первого над вторым ?
- Ответ
И то, и то система инциализации.
В чём конкретно преимущества для меня:
В чём конкретно преимущества для меня systemd над init:
- Параллельный старт процессов, в отличие от init
- Запуск системы с ним быстрее происходит.
@ -971,7 +978,7 @@ Change: 2022-06-09 17:19:41.581240179 +0000
Sudo позволяет подменить пользователя и выполнить команду от его имени. Расшифровывается именно так - **s**ubstitute **u**ser and **do**
По умолчанию от суперпользователя.
По умолчанию выполнение команды происходит от имени суперпользователя.
Например, вот эта команда
@ -985,9 +992,9 @@ Change: 2022-06-09 17:19:41.581240179 +0000
sudo -u swfuse whoami
```
Будет отличаться.
Будет отличаться результатом.
Можно просмотреть полномочия
Можно просмотреть какие полномочия есть с помощью команды:
```bash
sudo -l
@ -1039,6 +1046,7 @@ Change: 2022-06-09 17:19:41.581240179 +0000
**mmap** - служит для отображения предварительно открытого файла (например, с помощью системного вызоваа open()) в адресное пространство вычислительной системы
Команда для вывода всех системных вызовов во время исполнения программы:
```bash
strace -c ls
% time seconds usecs/call calls errors syscall
@ -1068,10 +1076,35 @@ Change: 2022-06-09 17:19:41.581240179 +0000
100.00 0.000000 84 7 total
```
Все сигналы можно глянуть через kill -l, они нужны для взаимодействия между процессами
---
### Где можно найти информацию о конкретном системном вызове?
- Ответ
```python
`man 2 <syscall>`
Но нужно будет предварительно поставить пакет `man-pages`
```
sudo apt install manpages-dev manpages-posix-dev
```
---
### Что делает команда kill?
- Ответ
Назначение команды kill - отправить определенный сигнал процессу.
По умолчанию используется сигнал SIGTERM.
А вот все **сигналы** можно глянуть через kill -l, они нужны для взаимодействия между процессами
```
root@swfuse:~# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
@ -1087,31 +1120,6 @@ Change: 2022-06-09 17:19:41.581240179 +0000
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
```
---
### Где можно найти информацию о конкретном системном вызове?
- Ответ
`man 2 <syscall>`
Но нужно будет предварительно поставить пакет `man-pages`
```python
sudo apt install manpages-dev manpages-posix-dev
```
---
### Что делает команда kill?
- Ответ
Команда kill отправляет сигнал процессу
---
@ -1119,7 +1127,7 @@ Change: 2022-06-09 17:19:41.581240179 +0000
- Ответ
Я бы начал с того, что бы понял а что вообще вызывает проблему, и что на сервере важное.
Я бы начал с того, что бы понял а что вообще вызывает проблему, и что на сервере важное. Что работает, а что не работает.
Если сайтики не открываются на работающем сервере все - проблема.
Если проблема только с одним, то копать.
@ -1131,6 +1139,9 @@ Change: 2022-06-09 17:19:41.581240179 +0000
На параметр нагрузки LA влияет также и ожидание ввода-вывода (параметр *wa*
в утилите *top*
) в дисков и задержка сети. Данные параметры могут не влиять на работу основных сервисов в системе, но учитываются при расчете общей нагрузки на систему.
Иными словами на сервере с активными приложениями высокий LA скорее всего будет проблемной ситуацией.
А на сервере с бэкапами высокий LA может проблемой не быть. Поскольку туда постоянно пишутся данные, и la растет просто из-за того, что копятся процессы, которые ожидают очереди записи на диск.
---
@ -1139,15 +1150,16 @@ Change: 2022-06-09 17:19:41.581240179 +0000
- Ответ
Процесс - это исполняемая программа. Когда программист пишет программу и выполняет ее, эта программа становится процессом. Он выполняет задачи в соответствии с инструкциями программы.
**Процесс** - это исполняемая программа. Когда программист пишет программу и выполняет ее, эта программа становится процессом. Он выполняет задачи в соответствии с инструкциями программы.
Процесс - это экземпляр выполняемой компьютерной программы. Поток - это компонент процесса, который является самой маленькой исполнительной единицей.
**Процесс** - это экземпляр выполняемой компьютерной программы.
**Поток** - это компонент процесса, который является самой маленькой исполнительной единицей.
Здесь имя процесса (или задачи) известно как "Construct road".
Можно представить процессы и потоки на примере задачи "Починка дороги".
Хорошо, как я могу построить дорогу, поэтому мне нужен какой-то ресурс для строительства, верно?
Ресурсы:
Выделяемые ресурсы:
1. Граница дороги (область)
- Технически мы можем назвать это виртуальным адресным пространством, оно имеет уникальный идентификатор процесса для идентификации работы.
@ -1155,19 +1167,18 @@ Change: 2022-06-09 17:19:41.581240179 +0000
- Также, вы можете сопоставить другие свойства процесса с приведенным выше примером (окружение, приоритет и т.д.)
1. Жесткое или рабочее пространство
- Количество "оборудования или рабочей силы" основано на мышлении подрядчика; предположим, что он\she хочет закончить работу быстро, тогда он\she должен назначить больше людей на эту работу.
- Количество "оборудования или рабочей силы" основано на мышлении подрядчика; предположим, что он хочет закончить работу быстро, тогда он должен назначить больше людей на эту работу.
- Т.е. каждый работник может получить доступ к этой ограниченной территории (общее пограничное пространство).
- Для начала работы нужен хотя бы один человек.
- Для начала работы нужен хотя бы один человек один поток.
- У каждого человека есть свой идентификатор
- Итак, можем ли мы назвать это нитью? Если да, то приведите другие свойства потока на этом примере (обработка исключений, контекст потока и т.д.).
Ключевая разница
- Процесс означает, что программа выполняется, а поток означает сегмент процесса.
- Процесс не является легковесным, тогда как потоки - легковесными.
- Процессу требуется больше времени для завершения, а потоку требуется меньше времени для завершения.
- Процесс требует больше времени для создания, тогда как Thread требует меньше времени на создание.
- Процессу, вероятно, требуется больше времени для переключения контекста, тогда как потокам требуется меньше времени для переключения контекста.
- Процесс требует больше времени для создания, тогда как поток требует меньше времени на создание.
- Процессу, требуется больше времени для переключения контекста, тогда как потокам требуется меньше времени для переключения контекста.
- **Процесс в основном изолирован, тогда как потоки разделяют память.**
- Процесс не обменивается данными, а потоки обмениваются данными друг с другом.
@ -1240,11 +1251,22 @@ KiB Swap: 0 total, 0 free, 0 used. 10090148 avail Mem
0 zombie - количество зомби-процессов, которые завершили своё выполнение, но присутствующие в системе, чтобы дать родительскому процессу считать свой код завершения.
[Untitled](%D0%92%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D1%8B%20%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B0%D0%BC%202%200%2060c73919d6564d1e880f209921e7b84d/Untitled%20Database%20b98ce3f413754fcfbb17156565714ae4.csv)
| параметр | описание |
|-----------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|us (user) |Использование процессора пользовательским процессами |
|sy (system) |Использование процессора системным процессами |
|ni (nice) |Использование процессора процессами с измененным приоритетом с помощью команды nice |
|id (idle) |Простой процессора. Можно сказать, что это свободные ресурсы |
|wa (IO-wait) |Время на простой, то есть ожидания переферийных устройств ввода вывода |
|hi (hardware interrupts) |Показывает сколько процессорного времени было потрачено на обслуживание аппаратного прерывания. (Аппаратные прерывания генерируются аппаратными устройствами. Сетевыми картами, клавиуатурами, датчиками, когда им нужно о чем-то просигнализировать цп.|
|si (software interrupts) |Показывает сколько процессорного времени было потрачено на обслуживание софтверного прерывания. Фрагмент кода, вызывающий процедуру прерывания |
|st (stolen by the hypervisor)|Показывает сколько процессорного времени было «украдено» гипервизором. Для запуска виртуальной машины, или для иных нужд |
KiB Mem - количество оперативной памяти в кибибайтах (кратно 1024): *7106404 total* -- всего доступно оперативной памяти в системе, *306972 free* -- свободно оперативной памяти для использования, *3127144 used* -- использовано оперативной памяти, *3672288 buff/cache* -- буферизовано/закешировано оперативной памяти.
**KiB Mem** - количество оперативной памяти в кибибайтах (кратно 1024): *7106404 total* -- всего доступно оперативной памяти в системе, *306972 free* -- свободно оперативной памяти для использования, *3127144 used* -- использовано оперативной памяти, *3672288 buff/cache* -- буферизовано/закешировано оперативной памяти.
*KiB Swap* - количество swap-памяти в кибибайтах (кратно 1024), которые выделено на диске: *8191996 total* - всего выделено swap-памяти, *8191996 free* - свободно swap-памяти *0 used* - использовано swap-памяти, *3270520 avail Mem* - доступно для использования swap-памяти.
**KiB Swap** - количество swap-памяти в кибибайтах (кратно 1024), которые выделено на диске: *8191996 total* - всего выделено swap-памяти, *8191996 free* - свободно swap-памяти *0 used* - использовано swap-памяти, *3270520 avail Mem* - доступно для использования swap-памяти.
---
@ -1384,19 +1406,20 @@ KiB Swap: 0 total, 0 free, 0 used. 10090148 avail Mem
- Ответ
Часто говорят что это средняя загрузка процессора или нагрузка системы, или какие-то циферки.
Узнать значение la можно разными способами. Например, uptime, top.
Узнать значение la можно разными способами. Например, uptime.
Чем меньше значение, тем лучше. Большое значение - возможно проблема есть в системе.
Принято, что маленькое значение это стабильное поведение системы. Большое значение - возможно проблема есть в системе, что-то идет не так, копятся процессы.
Цифры обозначают нагрузку за определенный период времени. 1, 5 и 15 минут.
А на низкое внимание не обращается.
**Вообще эта цифра показывает количество процессов в статусе d r**
**Вообще - эта цифра показывает количество процессов в статусе d r**
А дальше уже всё будет зависеть от ситуации.
Допустим у нас сервер есть где постоянно диски насилуются. Там всегда LA будет высокая скорее всего. Просто потому что есть процессы в статусе d, которые копятся из-за того, что диск занят.
Но на работу системы в целом это не влияет.
Если процессов скопилось много там, где это не ожидается, ну там сервера с базой, с php-fpm, nginx и прочим таким, то смотрим через `top -cHi -d1` что там именно скопилось.
И в зависимости от ситуации это может указывать на проблему
Допустим у нас сервер есть где постоянно диски насилуются. Там всегда LA будет высокая скорее всего. Просто потому что есть процессы в статусе d.
---
@ -1408,7 +1431,7 @@ KiB Swap: 0 total, 0 free, 0 used. 10090148 avail Mem
Да, можно, за это отвечает параметр hidepid
```bash
boomer : ~ [0] # cat /proc/mounts | grep proc
myserver : ~ [0] # cat /proc/mounts | grep proc
proc /proc proc rw,nosuid,nodev,noexec,relatime,hidepid=2 0 0
```
@ -1443,7 +1466,10 @@ KiB Swap: 0 total, 0 free, 0 used. 10090148 avail Mem
Hop не всегда корректно показывает сколько памяти приложение потребляет по факту.
Пункт VIRT там это скорее параметр, который указывает сколько приложение запросило как бы запросило (про запас), а не сколько использует по факту.
И в этом плане на этот параметр лучше не полагаться.
Для анализа используемой памяти лучше использовать скрипт ps_mem.py. Он показывает сколько памяти съедается по факту.
Для анализа используемой памяти лучше использовать скрипт `ps_mem.py`. Он показывает сколько памяти съедается по факту тем или иным процессом, группой процессов.
Можно найти по ссылке:
https://github.com/pixelb/ps_mem
---
@ -1550,10 +1576,7 @@ nparamonov@peka:~$ echo $a
Замеряется в количестве потоков, которые ждут работы.
Команды:
iostat
sysstat
---
@ -1567,30 +1590,23 @@ nparamonov@peka:~$ echo $a
Блочное устройство представляет собой уровень абстракции, описывающий любое устройство хранения информации, которое может быть разбито на блоки определенного размера; доступ к каждому блоку осуществляется независимо от доступа к другим блокам.
Такой доступ часто называют произвольным доступом.
Иными словами блочные устройства нужны тогда, когда используется передача большого объема данных.
Сюда входят RAM-диски, компакт диски, накопители на магнитах
Доступ также осуществляется через спец файлы интерфейсы в `dev`.
На блочных устройствах как правило файловые системы.
Блочные устройства представлены часто как множество блоков.
Один блок кратен степени двух и равен килобайту данных.
Это позволяет линуксу читать и писать как в символьные устройства, так и в блочные.
Разница в том, что передается блок данных, а не байт.
Для пользователя это незаметно.
Используется для монтирования файловых систем.
Через `lsblk` можно их посмотреть
- Сюда входят RAM-диски, компакт диски, накопители на магнитах
- Доступ также осуществляется через спец файлы интерфейсы в `dev`.
- На блочных устройствах как правило файловые системы.
- Блочные устройства представлены часто как множество блоков.
- Один блок кратен степени двух и равен килобайту данных.
- Это позволяет линуксу читать и писать как в символьные устройства, так и в блочные.
- Разница в том, что передается блок данных, а не байт.
- Для пользователя это незаметно.
- Используется для монтирования файловых систем.
Через `lsblk` можно посмотреть такие устройства.
Данные передаются блоками. Как правило, кратный размер 256 байт
Можно записывать считывать, разделы создавать.
Блочные устройства не работают напрямую с системными вызовами. И в случае блочных устройств их взаимосвязь обеспечивается системой управления файлами и подсистемой плочного устройства. Эти подсистемы нужны чтобы подготовить ресурсы (буферы) драйвера устройства. Сохранять недавно прочитанные устйроства в кэш буфере, упорядочивание операций чтения и записи для повышения производительности.
Блочные устройства не работают напрямую с системными вызовами.
И в случае блочных устройств их взаимосвязь обеспечивается системой управления файлами и подсистемой плочного устройства.
Эти подсистемы нужны чтобы подготовить ресурсы (буферы) драйвера устройства. Сохранять недавно прочитанные устйроства в кэш буфере, упорядочивание операций чтения и записи для повышения производительности.
@ -1664,7 +1680,7 @@ nparamonov@peka:~$ echo $a
Что такое **inodes айноды**
### Что такое **inodes айноды**
- Ответ
@ -1737,8 +1753,7 @@ nparamonov@peka:~$ echo $a
---
### Каким образом осуществляется монтирование ФС? Как можно посмотреть список примонтированных ФС? (2 - 3
способа)**
### Каким образом осуществляется монтирование ФС? Как можно посмотреть список примонтированных ФС? (2 - 3 способа)
- Ответ
@ -1759,13 +1774,7 @@ nparamonov@peka:~$ echo $a
sudo mount /dev/sdd1 /media/usb
```
[http://system-administrators.info/?p=911](http://system-administrators.info/?p=911)
df -h
du -h
fdisk -l
---
@ -1778,7 +1787,8 @@ nparamonov@peka:~$ echo $a
Можно сказать это интерфейс ядра linux.
Например, `/proc` во многих ОС - это procfs, который динамически генерирует каталоги для каждого процесса. Точно так же `/sys` в Linux генерирует файлы и каталоги для представления аппаратных схем. Есть FUSE на основе псевдо-файловая система для *многих* вещей.
Например, `/proc` во многих ОС - это procfs, который динамически генерирует каталоги для каждого процесса.
Точно так же `/sys` в Linux генерирует файлы и каталоги для представления аппаратных схем. Есть FUSE на основе псевдо-файловая система для *многих* вещей.
`/dev` может быть реальной файловой системой (просто подкаталогом `/`) или виртуальной псевдофайловой системой (например, devfs), или средней точкой, такой как Linux devtmpfs (которая является полной файловой системой в памяти, но все же создает узлы устройства из нигде).
@ -1786,13 +1796,13 @@ nparamonov@peka:~$ echo $a
которых загружены в память компьютера. Для реализации этой цели от ядра [операционной системы](https://ru.wikipedia.org/wiki/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0)
требуется создание единого [программного интерфейса](https://ru.wikipedia.org/wiki/API)
внутренних вызовов ядра
Если говорить о том, где хранится `proc`, то это **представление** структуры ядра. И можно сказать, что содержимое хранится в памяти ядра, то есть в ОЗУ.
---
**Какие проблемы могут возникать с файловой системой и жёстким диском?
Можно ли восстановить ФС при незначительном повреждении её структуры?
Как это сделать?**
### Какие проблемы могут возникать с файловой системой и жёстким диском? Можно ли восстановить ФС при незначительном повреждении её структуры? Как это сделать?
- Ответ
@ -1802,13 +1812,14 @@ nparamonov@peka:~$ echo $a
**«Продвинутые» инструменты**
Также существуют более функциональные средства для проверки и восстановления файловых систем. Правила использования можно найти в документации man, а практические рекомендации в Linux Documentation Project (см. Ресурсы). Почти все эти команды требуют, чтобы файловая система была размонтирована, хотя некоторые функции могут использоваться в файловых системах, смонтированных в режиме «только чтение». Некоторые из этих команд описаны далее.
Также существуют более функциональные средства для проверки и восстановления файловых систем. Правила использования можно найти в документации man, а практические рекомендации в Linux Documentation Project.
Почти все эти команды требуют, чтобы файловая система была размонтирована, хотя некоторые функции могут использоваться в файловых системах, смонтированных в режиме «только чтение». Некоторые из этих команд описаны далее.
Прежде чем предпринимать какие-либо исправления, обязательно создавайте резервную копию файловой системы.
**Инструменты для файловых систем ext2 и ext3**
*tune2fs*Настраивает параметры файловых систем ext2 и ext3. Используется для добавления журнала к системе ext2, делая, таким образом, из нее ext3, а также выводит или устанавливает максимальное число монтирований, после которого необходима проверка. вы также можете задать метку и назначить или запретить выполнение дополнительных опций.*dumpe2fs*Выводит информацию о дескрипторах суперблоков и групп блоков в файловых системах ext2 и ext3.*debugfs*Команда для интерактивной отладки файловой системы. Используйте ее для проверки или изменения состояния файловых систем ext2 или ext3.
*tune2fs* Настраивает параметры файловых систем ext2 и ext3. Используется для добавления журнала к системе ext2, делая, таким образом, из нее ext3, а также выводит или устанавливает максимальное число монтирований, после которого необходима проверка. вы также можете задать метку и назначить или запретить выполнение дополнительных опций.*dumpe2fs*Выводит информацию о дескрипторах суперблоков и групп блоков в файловых системах ext2 и ext3.*debugfs*Команда для интерактивной отладки файловой системы. Используйте ее для проверки или изменения состояния файловых систем ext2 или ext3.
**Инструменты для файловых систем ReiserFS**
@ -1852,7 +1863,7 @@ https://access.redhat.com/articles/3129891
**Какую файловую систему Вы бы выбрали для работы с большим количеством файлов?**
- Ответ
ext4, она лучше справляется с большим количеством файлов, метаданных
---
@ -1874,9 +1885,8 @@ https://access.redhat.com/articles/3129891
При включении главный диск смонтирован в корень. Загрузочный в boot.
Дополнительные диски в `mnt/*`
Информация об этих монтированиях хранится в файле /etc/fstab
Дополнительные диски можно увидеть в `mnt/*`
Информация об этих монтированиях хранится в файле `/etc/fstab`
Система автоматом монтирует диски на осноании тех данных, которые берет их этого файла.
@ -1929,8 +1939,7 @@ https://access.redhat.com/articles/3129891
---
### Что такое RAID? Какие основные типы RAID существуют, чем они
отличаются?
### Что такое RAID? Какие основные типы RAID существуют, чем они отличаются?
- Ответ
@ -2208,6 +2217,8 @@ https://access.redhat.com/articles/3129891
error_log /landing-error.log info;
}
```
Обращаем внимание на proxy_pass. Это то, куда у нас пошел запрос.
А дальше действуем по ситуации. Перезапускаем сервис, смотрим логи этого приложения.
---
@ -2262,6 +2273,8 @@ https://access.redhat.com/articles/3129891
```
---
### Что будешь делать если у команды chmod убрали права на исполнение? (chmod -x chmod)
- Ответ
@ -2347,7 +2360,7 @@ https://access.redhat.com/articles/3129891
- Ответ
- Команда top, обратить внимание на sys time и 35% CPU, которое отъедало systemd. Соответственно, что-то там усиленно ядро творило в своем sys time
- Сначала делаем команду top, обратить внимание на sys time и 35% CPU, которое отъедало systemd. Соответственно, что-то там усиленно ядро творило в своем sys time
- Чтобы увидеть что именно делает systemd можно запустить `strace -c -p 1`, это даст таблицу сисколов, среди которых `waitid` отъедал много ресурсов.(78% CPU времени кушало). Данный системный вызов используется во время ожидания изменения состояния процесса.
Отсюда предположение - systemd что-то порождает, оно падает, случается waitid и все это добро происходит быстро и в больших кол-вах
- Далее смотрим что именно systemd может так усиленно плодить: `watch -n 1 ps --ppid 1`. Тут мы видим какие процессы активно форкаются.
@ -2356,6 +2369,10 @@ https://access.redhat.com/articles/3129891
- Закомментировал содержимое для проверки гипотезы - нагрузку как ветром сдуло
- Поискать где может прятаться автозапуск этой "радости" - в кроне, в systemd timers, profile файлах. Либо спрятано с особой выдумкой, либо было запущено вами вручную с последующей чисткой history.
---
## Docker контейнеры
**Что такое контейнеризация? Чем она отличается от виртуализации?**
@ -2367,12 +2384,13 @@ https://access.redhat.com/articles/3129891
Если говорить о виртуальных машинах, там они работают через **Виртуализацию**
И машины создаются с помощью гипервизора. И все аппаратные составляющие создаются через нее. И затем на нее накатываются операционные системы.
Соответственно, ресурсы машины будут уходит на поддержание работы запущенной операционной системы.
При контейнеризации аппаратные ресурсы выделяются с помощью ядра операционной системы, и изолируются пространством имен.
При контейнеризации аппаратные ресурсы выделяются с помощью ядра операционной системы, и изолируются пространством имен. Следовательно, они потребляют меньше ресурсов, и быстрее пересоздаются.
Плюсы:
- Меньше ресурсов
- Меньше ресурсов потребляетсяф
- Быстрый запуск
@ -2382,7 +2400,7 @@ https://access.redhat.com/articles/3129891
- Ответ
Docker базируется на технологиях namespaces и cgroups (первая обеспечивает изоляцию, вторая — группировку процессов и ограничение ресурсов)
Docker базируется на технологиях **namespaces** и **cgroups** (первая обеспечивает изоляцию, вторая — группировку процессов и ограничение ресурсов)
В основе работы Docker лежит стандартизированный способ исполнения кода. Docker это операционная система для контейнеров. Подобно тому как виртуальная машина создает виртуальное представление аппаратного обеспечения сервера (то есть устраняет необходимость непосредственно управлять таковым), контейнеры создают виртуальное представление серверной операционной системы. После установки на каждый сервер Docker предоставляет доступ к простым командам, необходимым для сборки, запуска или остановки контейнеров.
@ -2429,7 +2447,7 @@ https://access.redhat.com/articles/3129891
- Ответ
Изображение- это логическая группировка слоев плюс метаданные о том, что делать при создании контейнера и как собирать слои. Часть этих метаданных заключается в том, что каждый слой знает ID своего родителя.
**Образы(images)** - это логическая группировка слоев плюс метаданные о том, что делать при создании контейнера и как собирать слои. Часть этих метаданных заключается в том, что каждый слой знает ID своего родителя.
Итак, что входит в слой? Файлы (и каталоги), которые вы добавили в родительский файл. Существуют также специальные файлы ("whiteout"), которые указывают на то, что что-то было удалено из родительского файла.
@ -2458,6 +2476,13 @@ https://access.redhat.com/articles/3129891
- Ответ
Например можно попробовать так:
```
docker inspect $(docker ps -qa) | jq -r 'map([.Name, .GraphDriver.Data.MergedDir]) | .[] | "\(.[0])\t\(.[1])"'
```
---
### Можно ли настроить сетевое взаимодействие между двумя docker-контейнерами? Как это реализовано?
@ -2527,7 +2552,7 @@ https://access.redhat.com/articles/3129891
Докерфайл
```python
```
ENTRYPOINT ["/bin/echo", "Hello"]
CMD ["world"]
```
@ -3317,7 +3342,7 @@ https://access.redhat.com/articles/3129891
- `tasks`: все задачи, которые ранее были описаны в *Playbook*е;
- `vars`: переменные для шаблонов.
Тут описывается установка ngins
Тут описывается установка nginx
[https://rtfm.co.ua/ansible-roli-roles-primer/](https://rtfm.co.ua/ansible-roli-roles-primer/)
@ -3642,7 +3667,7 @@ https://access.redhat.com/articles/3129891
2. Включаем сервер базы данных на обеих серверах.
3. Настраиваем master - в `/etc/my.cnf` устанавливаем слеюущие значения:
```python
```
# выбираем ID сервера, произвольное число, лучше начинать с 1
server-id = 1
# путь к бинарному логу
@ -3653,7 +3678,7 @@ https://access.redhat.com/articles/3129891
Перезапускаем сервер базы данных. 4. Подключаемся к master серверу, создаем пользователя и назначаем ему права для выполнения репликации.
```python
```
mysql -u root -p <пароль root сервера БД>
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
@ -3661,20 +3686,20 @@ https://access.redhat.com/articles/3129891
1. На master сервере делаем дамп базы данных c блокировкой таблиц.
```python
```
mysqldump -u root -p --lock-all-tables newdatabase > newdatabase.sql
```
1. Переносим дамп базы на slave сервер, создаем базу данных с таким же именем и импортируем базу.
```python
```
CREATE DATABASE newdatabase;
mysql -u root -p newdatabase < newdatabase.sql
```
1. Настраиваем slave в `/etc/my.cnf`:
```python
```
# ID Слейва, удобно выбирать следующим числом после Мастера
server-id = 2
# Путь к relay логу
@ -3687,7 +3712,7 @@ https://access.redhat.com/articles/3129891
Перезапускаем сервер базы данных. 8. Запускаем репликацию на slave сервере.
```python
```
CHANGE MASTER TO MASTER_HOST='10.10.0.1', MASTER_USER='slave_user', MASTER_PASSWORD='password',
MASTER_LOG_FILE = 'mysql-bin.000001', MASTER_LOG_POS = 107;
##Указанные значения мы берем из настроек Мастера
@ -3697,7 +3722,7 @@ https://access.redhat.com/articles/3129891
1. Проверяем статус репликации:
```python
```
SHOW SLAVE STATUSG
```
@ -4730,32 +4755,3 @@ https://access.redhat.com/articles/3129891
![gitflow-img](https://github.com/Swfuse/devops-interview/blob/main/imgs/Untitled%2022.png)
---
Симметричное ассиметричное шифрование
[https://youtu.be/sGFbM-X6W_4](https://youtu.be/sGFbM-X6W_4)
ssh
![crypto-img](https://github.com/Swfuse/devops-interview/blob/main/imgs/Untitled%2023.png)
Машина принимает подключение по 22му порту
Клиент подключается к серверу. Клиентов большое разнообразие
По подключению используются два ключа.
Приватный ключ и публичный ключ.
Проще публичный ключ представить в виде замка. Я могу его опубликовать.
А приватный в виде ключа. Он только мне передается.
Шифруем публичным ключом. И открыть может только владелец приватного.
[https://www.securitylab.ru/analytics/478912.php](https://www.securitylab.ru/analytics/478912.php)
[https://www.wisereport.ru/ssh-encryption-process/](https://www.wisereport.ru/ssh-encryption-process/)