sysadmin:linux:start

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
sysadmin:linux:start [18:12:2024 14:40] – создано School Sysadminsysadmin:linux:start [02:10:2025 15:23] (текущий) – [Удалить пользователя] School Sysadmin
Строка 1: Строка 1:
 ====== Linux ====== ====== Linux ======
-**Linux** (Слушатьi/ˈlɪnəks/ [ˈlɪnəks][1][2] или [ˈlɪnʊks][3][4][5], Ли́нукс; в части случаев GNU/Linux) — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты. Как и ядро Linux, системы на его основе, как правило, создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так и проприетарных. +**Linux** (Слушатьi/ˈlɪnəks/ [ˈlɪnəks][1][2] или [ˈlɪnʊks][3][4][5], Ли́нукс; в части случаев GNU/Linux) — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты. Как и ядро Linux, системы на его основе, как правило, создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так и проприетарных. 
 + 
 +==== Как сделать файл исполняемым в Linux? ==== 
 + 
 +В операционной системе Linux, для управления флагами файлов используется утилита chmod. Синтаксис вызова утилиты: 
 + 
 +<code>chmod категория действие флаг адрес_файла</code> 
 + 
 +Категория - флаги могут устанавливаться для трех категорий: владельца файла, группы файла и всех остальных пользователей. В команде они указываются символами u (user) g (group) o (other) соответственно.   
 +Действие - может быть + (плюс), что будет значить установить флаг или - (минус) снять флаг.   
 +Флаг - один из доступных флагов - r (чтение), w (запись), x (выполнение). 
 + 
 +Например, чтобы сделать исполняемый скрипт в linux для владельца файла, достаточно выполнить: 
 + 
 +<code>chmod u+x адрес_файла</code> 
 + 
 +Этого в большинстве случаев бывает достаточно, но если мы хотим чтобы файл могли выполнять и другие пользователи, нужно указать также другие категории: g и o: 
 + 
 +<code>chmod ugo+x адрес_файла</code> 
 + 
 +Посмотреть флаги в терминале можно с помощью утилиты ls: 
 + 
 +<code>ls -l каталог_с_файлами</code> 
 + 
 +Это значит, что все флаги включены для всех категорий. Первое rwx - флаги владельца, второе - группы, а третье - для всех остальных. Если флаг не установлен, на его месте будет прочерк. 
 + 
 +Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус: 
 + 
 +<code>chmod u-x адрес_файла</code> 
 + 
 +==== Убить процесс ==== 
 + 
 +Use pkill -U UID or pkill -u UID or username instead of UID. Sometimes skill -u USERNAME may work, another tool is killall -u USERNAME. 
 + 
 +Skill was a linux-specific and is now outdated, and pkill is more portable (Linux, Solaris, BSD). 
 + 
 +pkill allow both numberic and symbolic UIDs, effective and real <http://man7.org/linux/man-pages/man1/pkill.1.html> 
 + 
 +<code>pkill - ... signal processes based on name and other attributes 
 + 
 +    -u, --euid euid,...   
 +         Only match processes whose effective user ID is listed.   
 +         Either the numerical or symbolical value may be used.   
 +    -U, --uid uid,...   
 +         Only match processes whose real user ID is listed.  Either the   
 +         numerical or symbolical value may be used.  </code> 
 + 
 +==== Как удалить ссылку в Linux ==== 
 + 
 +Сначала мы объясним способ проверки, что файл на самом деле является ссылкой. Это удобно делать с помощью утилиты ls. А затем рассмотрим три способа удаления, каждый из которых имеет свои особенности.   
 +Убедится, что это ссылка 
 + 
 +С помощью ls удобно смотреть информацию о файле. Для использования утилиты задайте ей опцию -l и укажите путь. В качестве примера возьмем файл \~/symlinks/link_1: 
 + 
 +<code>ls -l ~/symlinks/link_1</code> 
 + 
 +Также вы можете проверить целый каталог на наличие ссылок: 
 + 
 +<code>ls -l ~/symlinks/</code> 
 + 
 +Нужный файл будет отмечен характерной стрелочкой после его названия.   
 +Удалить с помощью rm 
 + 
 +Команда rm позволяет удалять любые файлы в файловой системе Linux, в том числе и ссылки. А значит, она подходит для нашей задачи. Здесь важно упомянуть, что в результате удаления ссылки оригинальный файл или директория затронуты не будут. 
 + 
 +В терминале выполните команду: 
 + 
 +<code>rm ~/symlinks/link_1</code> 
 + 
 +При этом на вывод никаких данных не поступит. Чтобы получить подробную информацию о процедуре, добавьте команде опцию -v: 
 + 
 +<code>rm -v ~/symlinks/link_1</code> 
 + 
 +Дополнительно можно проверить, пропала ли ссылка из директории. Для этого используйте описанную ранее команду ls. 
 + 
 +==== Нет свободного места в корне диска ==== 
 + 
 +чаще всего встречаются два варианта: 
 + 
 +есть открытый файл, на который нет ссылки на ФС, соответственно du не может его посчитать, но и полностью удалить его нельзя т.к. какая-то программа держит его отрытым. проверять с помощью 
 + 
 +<code>lsof | grep unlinked</code> 
 + 
 +или через 
 + 
 +<code>/proc//fd</code> 
 + 
 +запись о свободном месте хранится в суперблоке, он может быть поврежден. прогони fsck. 
 + 
 +начни с первого варианта. 
 + 
 +==== Удаление старых ядер в Debian и Ubuntu ==== 
 + 
 +Иногда, при установке обновлений на сервер, можно столкнуться с проблемой нехватки места на /boot разделе. В Debian и Ubuntu есть два разных способа решения возникшей ситуации. 
 + 
 +Первый способ — универсальный, ручной. Подходит для систем, куда установка новых пакетов не возможна, либо где пакет byobu для установки не доступен. Выводим список установленных ядер, а затем с помощью пакетного менеджера удаляем лишнее: 
 + 
 +<code>dpkg --list | grep linux-image  </code> 
 +<code>apt-get --purge remove linux-image-XXXX</code> 
 + 
 +При необходимости, обновляем конфиг GRUB: 
 + 
 +<code>update-grub2</code> 
 + 
 + 
 +Разумеется, ручное удаление файлов с помощью rm из /boot так же возможно, но прибегать к такому способу стоит только в самом крайнем случае.   
 + 
 + 
 +==== Как же узнать версию пакета. ==== 
 + 
 +Для начала, найдем нужную программу в репозиториях, например samba 
 + 
 +sudo apt-cache search samba 
 + 
 +На этот запрос мы получим огромный перечень пакетов, в которых встречается слово samba. Т.е. пакет такой есть, а теперь узнаем версию пакета 
 + 
 +sudo apt-cache show samba | grep -i version 
 + 
 +В ответ получим номер верcии пакета в официальном репозитории ubuntu. 
 + 
 +Теперь у нас есть выбор при установке пакета, установить из репозитория или же собрать пакет с официального сайт, с более свежей версией. 
 + 
 +Как сделать файл исполняемым в Linux? 
 + 
 +В операционной системе Linux, для управления флагами файлов используется утилита chmod. Синтаксис вызова утилиты: 
 + 
 +$ chmod категория действие флаг адрес\_файла 
 + 
 + 
 +Категория - флаги могут устанавливаться для трех категорий: владельца файла, группы файла и всех остальных пользователей. В команде они указываются символами u (user) g (group) o (other) соответственно.   
 +Действие - может быть + (плюс), что будет значить установить флаг или - (минус) снять флаг.   
 +Флаг - один из доступных флагов - r (чтение), w (запись), x (выполнение). 
 + 
 + 
 +Например, чтобы сделать исполняемый скрипт в linux для владельца файла, достаточно выполнить: 
 + 
 +chmod u+x адрес\_файла 
 + 
 +Этого в большинстве случаев бывает достаточно, но если мы хотим чтобы файл могли выполнять и другие пользователи, нужно указать также другие категории: g и o: 
 + 
 +chmod ugo+x адрес\_файла 
 + 
 +Посмотреть флаги в терминале можно с помощью утилиты ls: 
 + 
 +ls -l каталог\_с\_файлами 
 + 
 +Это значит, что все флаги включены для всех категорий. Первое rwx - флаги владельца, второе - группы, а третье - для всех остальных. Если флаг не установлен, на его месте будет прочерк. 
 + 
 +Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус: 
 + 
 +chmod u-x адрес\_файла 
 + 
 +Убить процесс 
 + 
 +Use pkill -U UID or pkill -u UID or username instead of UID. Sometimes skill -u USERNAME may work, another tool is killall -u USERNAME. 
 + 
 +Skill was a linux-specific and is now outdated, and pkill is more portable (Linux, Solaris, BSD). 
 + 
 +pkill allow both numberic and symbolic UIDs, effective and real <http://man7.org/linux/man-pages/man1/pkill.1.html> 
 + 
 + 
 +pkill - ... signal processes based on name and other attributes 
 + 
 +    -u, --euid euid,...   
 +         Only match processes whose effective user ID is listed.   
 +         Either the numerical or symbolical value may be used.   
 +    -U, --uid uid,...   
 +         Only match processes whose real user ID is listed.  Either the   
 +         numerical or symbolical value may be used.   
 + 
 + 
 +Как удалить ссылку в Linux 
 + 
 +Сначала мы объясним способ проверки, что файл на самом деле является ссылкой. Это удобно делать с помощью утилиты ls. А затем рассмотрим три способа удаления, каждый из которых имеет свои особенности.   
 +Убедится, что это ссылка 
 + 
 +С помощью ls удобно смотреть информацию о файле. Для использования утилиты задайте ей опцию -l и укажите путь. В качестве примера возьмем файл \~/symlinks/link_1: 
 + 
 +ls -l \~/symlinks/link_1 
 + 
 +yDnvAnxv8eeGr4v5LT3TnW7ipIAAAAAElFTkSuQmCC 
 + 
 +Также вы можете проверить целый каталог на наличие ссылок: 
 + 
 +ls -l \~/symlinks/ 
 + 
 +GNLtn0owYIAAAAASUVORK5CYII= 
 + 
 +Нужный файл будет отмечен характерной стрелочкой после его названия.   
 +Удалить с помощью rm 
 + 
 +Команда rm позволяет удалять любые файлы в файловой системе Linux, в том числе и ссылки. А значит, она подходит для нашей задачи. Здесь важно упомянуть, что в результате удаления ссылки оригинальный файл или директория затронуты не будут. 
 + 
 +В терминале выполните команду: 
 + 
 +rm \~/symlinks/link_1 
 + 
 +9fyiDZbB0kC08AAAAASUVORK5CYII= 
 + 
 +При этом на вывод никаких данных не поступит. Чтобы получить подробную информацию о процедуре, добавьте команде опцию -v: 
 + 
 +rm -v \~/symlinks/link_1 
 + 
 +8BTYWsL3lBWUYAAAAASUVORK5CYII= 
 + 
 +Дополнительно можно проверить, пропала ли ссылка из директории. Для этого используйте описанную ранее команду ls. 
 + 
 +==== Добавить пользователя ==== 
 + 
 +<code>adduser your-user</code> 
 + 
 +==== Удалить пользователя ==== 
 + 
 +<code>deluser --remove-home your-user</code>
  • Последнее изменение: 18:12:2024 14:40