Ubuntu система администрирование где найти

Обновлено: 07.07.2024

Операционная система Linux развивается уже больше двадцати пяти лет и за это время она набрала большую популярность среди системных администраторов и программистов. Из-за своей архитектуры Linux чаще всего применяется на серверах и других подобных платформах для размещения проектов. Как и любая другая операционная система, Linux нуждается в обслуживании, настройке и решении проблем.

В этой статье мы рассмотрим администрирование Linux для начинающих, что нужно знать начинающему администратору, у которого только появился свой сервер, например, VPS в интернете, что с ним делать, на что обратить внимание и как избежать проблем.

Администрирование Linux

Администрирование Linux - это очень обширная область и, естественно, что мы не сможем полностью охватить ее в этой статье. Но попытаемся охватить основные задачи, которые возникают перед администратором будь то сервера или домашнего компьютера. Вот основные задачи, которые мы рассмотрим:

  • Удаленный доступ;
  • Диагностика сети;
  • Мониторинг ресурсов системы;
  • Проверка работоспособности сервисов;
  • Просмотр логов;
  • Установка программного обеспечения.

Мы не будем рассматривать очень подробно каждую из тем, возможно, некоторые основы администрирования Linux были более детально рассмотрены в предыдущих записях, тогда на них будет ссылка. С первоначальной настройкой сервера обычно проблем не возникает. Можно использовать одну из известных панелей управления, например, панель управления VestaSP, которая позволяет все установить и настроить автоматически, но вам нужно следить за показателями системы и перенести на сервер файлы.

Удаленный доступ к серверу Linux

Чаще всего веб-мастера и администраторы используют для удаленного доступа и загрузки файлов на сервер протокол SSH и FTP. По SSH вы не только передавать файлы, но и выполнять на сервере различные команды Linux. Протокол FTP позволяет лишь загружать файлы на сервер, перемещать и переименовывать их. Если кратко, то, например, чтобы перенести файлы сайта с одного сервера на другой, сначала мы создаем архив с помощью tar:

tar cvzf backup.tar.gz /папка/с/файлами

Обратите внимание, что опцию p передавать не нужно, чтобы права на файлы не сохранились, затем, вам нужно будет установить права вручную. Когда архив готов, используем копирование scp для передачи его на сервер:

scp backup.tar.gz user@ip_сервера:/var/www/public_html/

Затем авторизуемся на сервере и распаковываем архив:

ssh user@ip_сервера
$ cd /var/www/public_html/
$ tar xvzf backup.tar.gz

После этого останется сменить владельца для распакованных данных на имя пользователя веб-сервера:

chown -R www-data /var/ww/public_html/project/

Большинство действий по администрированию сервера вам придется выполнять так что лучше понять как пользоваться ssh.

Диагностика сети Linux

Этот момент администрирования Linux серверов подходит больше для компьютеров, к которым у вас есть физический доступ, но может в некоторых случаях полезным и на сервере. Самый простой способ проверить есть ли доступ к сети на компьютере, это выполнить команду ping:


Если команда правильно отрабатывает, и вы видите передачу пакетов на удаленный узел, значит все хорошо. Если же нет, хотелось бы понять причину. Проверьте, указан ли ip адрес и маска сети для этого подключения:


Убедитесь, что правильно задан шлюз доступа к сети:


Обычно, это может подсказать вам, что конфигурация сети выполнена неверно, например, компьютер не получает нужные данные по протоколу DHCP или заданы неправильные статические настройки. Также проблема может быть в DNS. Возможно, сеть есть, но сервер не может получить ip адрес на основе доменного имени, для проверки вы можете выполнить ping какого-либо внешнего ip:


Если же сеть не работает, и она настроена правильно, то можно еще попытаться узнать на каком узле обрывается соединение. Для этого используется команда traceroute:


Все эти данные помогут понять в чем была ошибка и как ее решить.

Мониторинг ресурсов системы

Часто может случится, что сервер начинает работать очень медленно, веб-службы начинают очень долго отвечать на запросы и даже соединение по SSH работает медленно. Скорее всего, причиной этому может стать перегрузка ресурсов процессора или памяти. Если вся память будет занята, система будет сбрасывать данные на диск, в раздел подкачки, что тоже сильно замедляет работу сервера. Чтобы посмотреть сколько памяти осталось доступно используйте команду free:


Естественно, что если свободно только 40-50 Мб, то этого системе очень мало и все будет работать очень медленно. Следующим шагом будет выяснить какой процесс потребляет больше всего памяти, для этого можно использовать команду htop:

В утилите вы можете сортировать процессы по загрузке процессора, колонка %CPU% или по потреблению памяти %MEM%. Так вы можете очень просто понять в чем проблема и кто перегружает систему. Например, веб-сервер Apache потребляет слишком много памяти, поэтому, возможно, будет эффективнее использовать Nginx.

Также в некоторых случаях нас может интересовать загрузка диска Linux и какие именно процессы перегружают жесткий диск. Для этого применяется утилита iotop. Просто выполните утилиту без параметров:

Проверка работоспособности сервисов

В системное администрирование linux также входит управление сервисами. Сейчас в большинстве дистрибутивов, в качестве системы инициализации используется systemd. Соответственно, управление службами linux выполняется с помощью нее. Чтобы посмотреть запущена ли служба, например, веб-сервер nginx, выполните:

Или запустить ее, если она не была запущена до этого:

Если служба не запустилась, то вы можете посмотреть информацию об этом с помощью команды status или же выполнить:

Просмотр логов

Если какой-либо сервис или системный компонент не работает, то первое что нужно сделать - это смотреть логи. Если не помогает - включить режим отладки и смотреть логи. В 90% вы найдете ответ почему ничего не работает в логах программы. Логи всех служб и системные логи находятся в папке /var/log/. Некоторые службы создают отдельные папки для своих файлов, например, /var/log/nginx или /var/log/apache.

Если в обычном логе вы не нашли решение, то можно переключить программу в режим отладки или включить отображение максимально подробной информации. Обычно это дается в конфигурационном файле программы. Приводить конкретные примеры нет смысла, поскольку у каждого сервиса все по-другому. Но рассмотрим несколько команд, которые вы можете использовать:

tail -f /путь/к/лог/файлу

С помощью этой команды вы можете в реальном времени просматривать изменения в конце лог файла. Если опцию -f не указывать, то команда tail покажет десять последних строк из лога:

Также для просмотра лог файла вы можете использовать любой текстовый редактор или утилиту cat.

Установка программного обеспечения

Установка программного обеспечения, одна из распространенных задач администрирования. В Linux большинство программ можно установить из официальных или сторонних репозиториев. Некоторые программы нужно собирать из исходников. Для установки софта из репозиториев используется пакетный менеджер. Существуют два основных пакетных менеджера, которые применяются на серверах, это yum, который используется в CentOS и apt, который применяется в Ubuntu. Работают пакетные менеджеры похожим образом и все их мы рассматривали в отдельных статьях, смотрите установка программ CentOS и установка программ Ubuntu. Например, чтобы установить пакет в Ubuntu используйте такую команду:

sudo apt install имя_пакета

А в CentOS/RedHat:

sudo yum install имя_пакета

Для удаления программы используется команда remove вместо install. Но что еще более важно для серверов обновление программ. Никогда не отключайте автоматическое обновление, и старайтесь следить, чтобы система была в самом актуальном состоянии. Нужно обновлять все программные продукты, поскольку в них постоянно обнаруживаются новые уязвимости и следует получить вовремя исправления для них.

Выводы

В этой статье мы рассмотрели в общих чертах администрирование Linux для начинающих, это очень обширная тема, поэтому сложно охватить ее в одной статье. Мы рассмотрели диагностику сети, установку пакетов, просмотр логов и другие основные действия. Если у вас остались вопросы, спрашивайте в комментариях!

Итак, вы в течение некоторого времени пользовались вашим настольный компьютером с системой Ubuntu и он начал привлекать к себе внимание со стороны других членов вашей семьи. Все они хотят пользоваться системой, но вы не хотите давать им возможность редактировать ваши файлы. Решение состоит в создании новых учетных записей для каждого, кто хочет получить доступ к вашей системе. Таким образом, у каждого будут свои собственные логин, пароль и домашний директорий для хранения файлов. В Ubuntu у вас есть несколько возможностей редактирования пользователей и групп, причем как с помощью графического интерфейса, так и в командной строке.

Используйте средства администрирования пользователей

Ubuntu_Hacks. Средства администрирования пользователей в Ubuntu

Ubuntu_Hacks. Окно редактора учетных записей пользователей

Ubuntu_Hacks. Редактор учетных записей в Ubuntu

Управление пользователями и группами из командной строки

Вы можете также добавлять, изменять и удалять пользователей и группы с помощью средств командной строки. Чтобы добавить в систему нового пользователя, наберите:

Предостережение

Если вы создаете пользователя средствами командной строки, то, возможно, новый пользователь не будет назначен правильным группам (например, audio), что необходимо для полного использования возможностей настольного компьютера. Вы можете в роли пользователя, которую вы создали ранее, воспользоваться командой sudo и отредактировать файл /etc/group, назначив нового пользователя тем группам, которым необходимо.

Чтобы удалить пользователя, используйте команду deluser:

По умолчанию, эта команда удалит из системы только пользователя, но не его файлы. Чтобы удалить домашний директорий пользователя и его почтовый ящик, добавьте параметр —remove-home . Для того, чтобы удалить все файлы в системе, принадлежащие пользователю, вне зависимости от того, где они находятся, используйте параметр --remove-all-files .

Есть аналогичные команды, используемые из командной строки, для добавления и удаления групп в системе. Чтобы добавить группу в систему, используйте команду addgroup:

Вы можете использовать параметр --gid для того, чтобы указать номер идентификатора группы, который будет использоваться. Все системные группы находятся в файле /etc/group, поэтому вы можете отредактировать этот файл с правами root, если вы хотите настроить принадлежность к группе или другие ее свойства. Если вы хотите добавить текущего пользователя к текущей группе, вы можете вместо того, чтобы редактировать файл /etc/group, просто набрать:

Чтобы удалить из системы группу, используйте команду delgroup:

Предостережение

Будьте аккуратны при удалении пользователей или групп, в частности, тех пользователей или групп, которые вы не создавали. Когда устанавливается система Ubuntu или некоторые пакеты, создаются определенные учетные записи, которые удалять не следует. Не удаляйте их, если вы не знаете, зачем они нужны.

В любой Linux-системе обязательно есть один привилегированный пользователь — root. Этот пользователь имеет права на выполнение любых действий, удаление любых файлов и изменение любых параметров. Как-то ограничить свободу действий root практически невозможно. С другой стороны, все остальные пользователи системы обычно не имеют большинства необходимых прав, например, прав на установку программ, поскольку это является административной операцией, права на которую есть только у root. Ещё одной распространённой операцией, доступной только суперпользователю, является копирование и изменение файлов в системных папках, куда обычный пользователь доступа не имеет.

Раньше данная проблема решалась достаточно просто: при обладании паролем root можно было зайти в систему под его аккаунтом либо временно получить его права, используя команду su . Потом выполнить все необходимые операции и вернуться обратно под обычного пользователя. В принципе, такая схема работает неплохо, однако у неё есть много существенных недостатков, в частности, невозможно никак (точнее, очень сложно) ограничивать административные привилегии только определённым кругом задач.

Поэтому в современных дистрибутивах Linux вместо root аккаунта для администрирования используется утилита sudo .

В Ubuntu по умолчанию root аккаунт вообще отключён, т.е. вы никаким способом не сможете попасть под root, не включив его. root именно что отключён, т.е. он присутствует в системе, под него всего лишь нельзя зайти. Если вы хотите вернуть возможность использовать root, смотрите ниже пункт о включении root аккаунта.

Что такое sudo

sudo — это утилита, предоставляющая привилегии root для выполнения административных операций в соответствии со своими настройками. Она позволяет легко контролировать доступ к важным приложениям в системе. По умолчанию, при установке Ubuntu первому пользователю (тому, который создаётся во время установки) предоставляются полные права на использование sudo. Т.е. фактически первый пользователь обладает той же свободой действий, что и root. Однако такое поведение sudo легко изменить, об этом см. ниже в пункте про настройку sudo.

Где используется sudo

sudo используется всегда, когда вы запускаете что-то из меню Администрирования системы. Например, при запуске Synaptic вас попросят ввести свой пароль. Synaptic - это программа управления установленным ПО, поэтому для её запуска нужны права администратора, которые вы и получаете через sudo вводя свой пароль.

Однако не все программы, требующие административных привилегий, автоматически запускаются через sudo. Обычно запускать программы с правами администратора приходится вручную.

Запуск графических программ с правами администратора

Для запуска графических программ с правами администратора можно воспользоваться диалогом запуска программ, вызываемым по умолчанию сочетанием клавиш Alt + F2 .

Допустим, нам необходимо запустить файловый менеджер Nautilus с правами администратора, чтобы через графический интерфейс как-то изменить содержимое системных папок. Для этого необходимо ввести в диалог запуска приложений команду

Вместо gksudo можно подставить gksu , кроме того, пользователи KDE должны вместо gksudo писать kdesu . У вас попросят ввести свой пароль, и, если вы обладаете нужными правами, Nautilus запуститься от имени администратора. Запуск любого графического ПО можно производить с правами администратора, просто написав в диалоге запуска

Будьте предельно внимательны при работе в приложениях, запущенных с правами администратора. Вы безо всяких предупреждений со стороны системы сможете выполнить любую операцию, в частности, удалить системные файлы, сделав при этом систему неработоспособной.

Запуск программ с правами администратора в терминале

Для запуска в терминале команды с правами администратора просто наберите перед ней sudo :

У вас попросят ввести ваш пароль. Будьте внимательны, пароль при вводе никак не отображается, это нормально и сделано в целях безопасности, просто вводите до конца и нажимайте Enter . После ввода пароля указанная команда исполнится от имени root.

Система какое-то время помнит введённый пароль (сохраняет открытой sudo-сессию). Поэтому при последующих выполнениях sudo ввод пароля может не потребоваться. Для гарантированного прекращения сессии sudo наберите в терминале

Кроме того, часто встречаются ошибки, связанные с каналами в Linux. При исполнении команды

с правами root исполнится только cat , поэтому файл result.txt может не записаться. Нужно либо писать sudo перед каждой командой, либо временно переходить под суперпользователя.

Получение прав суперпользователя для выполнения нескольких команд

Иногда возникает необходимость выполнить подряд несколько команд с правами администратора. В этом случае можно временно стать суперпользователем одной из следующих команд:

Для выхода обратно в режим обычного пользователя наберите exit или просто нажмите Ctrl + D .

Использование традиционного root аккаунта и команды su

Разблокировка учетной записи root приводит неоправданным рискам (работая постоянно под рутом вы имеете 100500 способов «отстрелить себе ногу»), а также упрощает получение доступа к вашему компьютеру злоумышленником.

Ubuntu 11.04 и младше

Для входа под root достаточно задать ему пароль:

Потом на экране входа нажмите Другой… и введите логин (root) и пароль, который вы задали.

Ubuntu 11.10 и старше

Начиная с версии 11.10 был установлен менеджер входа lightdm, и дело со входом под root обстоит немного сложнее.

1. Устанавливаем root пароль. Введите в терминал:

2. Включаем пункт «Введите логин». Введите в терминал:

В конце файла допишите:

3. Перезагружаем lightdm. Введите в терминал:

Все, на экране входа появится пункт «Логин». В поле логин вводим «root», в поле пароль - пароль, который мы задали на первом этапе.

Для обратной блокировки учетной записи root вам потребуется откатить изменения в настройках lightdm, а также заблокировать учетную запись root командой в терминале:

Настройка sudo и прав доступа на выполнение различных команд

sudo позволяет разрешать или запрещать пользователям выполнение конкретного набора программ. Все настройки, связанные с правами доступа, хранятся в файле /etc/sudoers . Это не совсем обычный файл. Для его редактирования необходимо (в целях безопасности) использовать команду

По умолчанию, в нём написано, что все члены группы admin имеют полный доступ к sudo , о чём говорит строчка

Подробнее о синтаксисе и возможностях настройки этого файла можно почитать выполнив

Разрешение пользователю выполнять команду без ввода пароля

И в конец файла дописать строку

Внимание! Вышеописанные действия не отменяют необходимости ввода команды sudo перед вашей командой

Создание синонимов (alias`ов)

Для того, чтобы не только не вводить пароль для sudo, но и вообще не вводить sudo, сделайте следующее: откройте файл .bashrc, находящейся в вашем домашнем каталоге

и добавьте в конец файла строки

Время действия введённого пароля

Возможно, вы хотите изменить промежуток времени, в течение которого sudo действует без ввода пароля. Этого легко добиться добавив в /etc/sudoers (visudo) примерно следующее:

Здесь sudo для пользователя foo действует без необходимости ввода пароля в течение 20 минут. Если вы хотите, чтобы sudo всегда требовал ввода пароля, сделайте timestamp_timeout равным 0.

sudo не спрашивает пароль

sudo без пароля — чудовищная дыра в безопасности, кому попало разрешено делать что угодно. Если вы разрешили это намеренно — срочно верните обратно как было.

Однако, в некоторых случаях sudo внезапно перестаёт требовать пароль само по себе. Если сделать visudo , то можно увидеть примерно такую строку, которую пользователь вроде бы не добавлял:

Скорее всего, эта катастрофичная строка была добавлена при установке программы типа Connect Manager от МТС или Мегафона. В таком случае, её нужно поменять на строку, разрешающую с правами root запускать только этот Connect Manager, примерно так:

Просто переключился с 10.04 на 11.10. Мне интересно об ограниченных опциях в GUI для управления пользователями и группами. Где старый графический интерфейс для изменения групп, идентификаторов и т. Д. Я знаю, что я могу сделать это из Cli, это не проблема. Но я хочу вернуть этот удобный графический интерфейс.

Системные инструменты Gnome для 11.10 и более поздних версий Ubuntu

Старый графический интерфейс пользователя и группы доступен путем установки в Центре программного обеспечения пакета gnome-system-tools

введите описание здесь

или из терминала:

введите описание здесь

Нажмите, и он запустит апплет Users and Groups:

введите описание здесь

Этот ответ был объединен с вопросом о том, как сделать пользователя администратором;в то время как это действительно отвечает на этот более общий вопрос, создание администраторов - его центр.

Быть администратором состоит из (определенного) членства в группах

Прежде чем фактически управлять пользователями и группами, если вы хотите сделать одного или нескольких администраторов пользователей, вы должны знать,что значит быть администратором в Ubuntu.

Администратор может запускать команды как root двумя способами:

  • С sudo ,
  • С PolicyKit. (Но по умолчанию PolicyKit отсутствует в системах Ubuntu Server.)

Эта возможность предоставляется пользователям посредством членства в соответствующей группе.

  • В Ubuntu 11.10 и более ранних версиях администраторы являются членами admin группа.
  • В Ubuntu 12.04 LTS и более поздних версиях администраторы являются членами sudo группа.

Есть пара сложностей:

  • sudo группа существует в 11.10 и более ранних, просто она не используется (по умолчанию).
  • admin Группа не существует в недавно установленной системе 12.04, но она продолжает существовать (и ее члены продолжают иметь административные способности) в системах Ubuntu 12.04, обновленных с предыдущих выпусков.

Поэтому вот несколько разумных рекомендаций о том, как сделать пользователя администратором в Ubuntu:

  • Если вы работаете в Ubuntu 11.10 или более ранней версии, просто поместите пользователя в admin группа.
  • Если вы работаете в Ubuntu 12.04 LTS (или более поздней версии), укажите sudo группа, иесли admin группа существует, положите туда пользователя.

У вас есть несколько вариантов управления пользователями и группами.

Возможно, вы будете рады услышать, что (как указал John S Gruber) старая утилита с графическим интерфейсом для управления пользователями и группами все еще существует, хотя вам, возможно, придется установить пакет, который ее предоставляет. Я говорю об утилите, которая была вызвана в управляемых меню интерфейсах через Систему>Администрирование> Пользователи и группы.

Эта классическая утилита предоставляется gnome-system-tools пакет, который вы можете установить в Центре программного обеспечения, щелкнув по этой ссылке, или в Терминале, выполнив следующие команды:

Название утилиты "Пользователи и группы": users-admin , так что вы можете найти его в своем графическом интерфейсе или запустить его вручную с этим именем. То есть вот несколько способов запустить утилиту после ее установки:

  • Нажмите Alt + F2 . Тип users-admin , Нажмите Enter .
  • Нажмите Ctrl + Alt + T. Тип users-admin , Нажмите Enter .
  • В Unity начните печатать users and groups , До тех пор, пока gnome-system-tools будет установлена ​​утилита " Пользователи и группы".
  • Если вы используете среду рабочего стола с меню, найдите " Пользователи и группы" в меню " Администрирование", "Системные инструменты" или "Настройки".

Окно настроек пользователя (users-admin в Ubuntu 12.04

Но не беги sudo user-admin , или даже gksu/ gksudo/ kdesudo users-admin , users-admin на самом деле не будет работать при запуске как root , (Он предназначен для использования PolicyKit, а не sudo, чтобы получить необходимые привилегии для создания и изменения пользователей и групп в системе.)

аутентификация пользователей-админов с помощью PolicyKit

В некоторых вариантах Ubuntu, таких как Lubuntu, users-admin уже установлен и является стандартным способом управления пользователями и группами.

Новый стандартный способ управления пользователями и группами - это Центр управления GNOME, доступный из меню сеансов. Нажмите на значок шестеренки в верхней панели (в верхнем правом углу экрана) и нажмитеНастройки системы.


ВСистемных настройках(также называемыхЦентром управления GNOME), щелкнитеУчетные записи пользователей(они находятся внизу, в категории "Система").

Системные настройки (Центр управления GNOME), указатель мыши над

Затем вы можете управлять пользователями, включая группы, в которые они входят, с помощью этой части Центра управления GNOME.

Окно учетных записей пользователей Центральное управление GNOME

  • выполняете Ubuntu Server или другую систему Ubuntu без графического интерфейса, или
  • просто предпочитайте использовать утилиты командной строки, или
  • работает какая-то странная среда рабочего стола, которая не поставляется с графической утилитой для управления пользователями и группами

. тогда вы можете управлять пользователями и группами из командной строки.

Рекомендуемая утилита для добавления пользователя из командной строки (в Ubuntu, а также в Debian и других ОС на основе Debian) adduser , Самый простой способ использовать это просто запустить:

  • Сначала вам может быть предложено ввести пароль (вот как sudo работает).
  • Затем вам задают ряд вопросов. Помимо их реального имени и пароля, если у вас нет ответа на любой из вопросов, просто нажмите Enter .
  • Пользователь становится членом групп по умолчанию для учетных записей пользователей, которые представляют реальных людей, ноне имеют административных полномочий.

Снимок экрана, показывающий adduser, запущенный в среде рабочего стола


Нажмите здесь, чтобы прочитать как текст.

Чтобы сделать пользователя администратором из командной строки, просто добавьте его в соответствующую группу. usermod это отличная утилита для этой цели. -G флаг означает, что вы указываете одну или несколько новых групп, и -a флаг означает, что вы добавляете их в любые группы, членом которых он уже является, вместо того, чтобы заменять старый список групп новым.

В зависимости от того, какую версию Ubuntu вы используете (как описано выше), используйте одну или обе эти команды:

Читайте также: