Несколько слов о Linux

Несколько слов о Linux. Кратко описываются права доступа к файлам и папкам, управление сервисами, дается перечень основных команд Linux. Эта информация необходима для понимания остальных статей, посвященных конфигурированию и управлению сервером. The same in English.

1. Права доступа в Linux/Unix/OsX

Кратко описываются права доступа в Linux. Для Unix и OsX абсолютно аналогично.

 Все пользователи Linux по отношению к файловой системе делятся на четыре категории:

  • владелец (создатель файла или папки);
  • пользователи, входящие в группу;
  • все остальные пользователи, кроме суперпользователя root и которые не входят в группу;
  • суперпользователь root.

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

Все остальные пользователи имеют доступ только к тем файлам и папкам, к которым им разрешено. Каждый файл или папка в файловой системе Linux содержит информацию о владельце (создателе) и группе пользователей, Например владелец admin и группа localadmins или владелец ivan и группа users. RedHat Linux (CentOS) по умолчанию создает для каждого нового пользователя отдельную группу с именем пользователя, например пользователь ivan и группа ivan.

Соответственно, каждый файл (папка) содержит три числа, определяющие доступ к файлу для владельца, группы и всех остальных пользователей, каждое число состоит из трех битов – чтение (r), запись (w) и выполнение (x). Бит установлен в 1 – разрешено, установлен в 0 – запрещено. Например – 7 – все разрешено, 1 – разрешено только чтение, 5 – разрешено выполнение и чтение. Запись запрещена.  Первое число из трех – права владельца, второе – права группы, третье – права всех остальных пользователей. Суперпользователь имеет доступ ко всему.

Таким образом,

  • 755 означает что всем разрешено чтение и исполнение, а владельцу – еще и запись;
  • 600 – чтение и запись разрешены только владельцу;
  • 640 – владельцу разрешены чтение и запись, а пользователям-членам группы – только чтение.
  • и т.д.

2. Сервисы Linux

Любой сервер Linux состоит из ядра операционной системы, сервисов и вспомогательных программ. Сервисы (демоны) запускаются автоматически при запуске операционной системы или вручную. Примером сервисов являются сервер SSH, WEB-сервер, сервер баз данных и т.д.

В разных версиях Linux, управление сервисами осуществляется по-разному. Приведенное здесь описание действительно только для RedHat Linux (Cent OS), но основе которой собран наш шаблон виртуальной машины. Для того, чтобы выполнить команду для сервиса, необходимо создать безопасное соединение с сервером по протоколу SSH, стать суперпользователем и набрать в терминале:

/etc/init.d/имясервиса команда

имя сервиса может быть, например, sshd для сервера SSH, httpd для web-сервера Apache, mysql для сервера баз данных MySQL. Посмотреть список зарегистрированных в системе сервисов можно командой:

/sbin/chkconfig

Несколько слов о Linux

Рис. 1. Сервисы

Ответ показан на рис. 1. Левая колонка – названия сервисов. Колонка 3 – многозадачный режим (нормальная работа сервера).

  • on – сервис запускается автоматически при запуске системы;
  • off – сервис не запускается при запуске системы.
Несколько слов о Linux

Рис. 2. Команды сервиса

Получить список доступных команд для сервиса можно, набрав в терминале (рис. 2):

/etc/init.d/имясервиса

Основные команды:

  • start – запуск сервиса;
  • stop – остановка сервиса;
  • restart – перезапуск сервиса;
  • reload – перезагрузка конфигурационных файлов без перезапуска сервиса;
  • status – вывод на экран терминала состояния сервиса.

3. Клавиша <TAB>

Клавиша <TAB> очень полезна при наборе названий папок, файлов и программ. Обычно достаточно набрать первые буквы названия, затем нажать <TAB> и Linux сам добавит остальное до конца названия, если оно не имеет вариантов или до разветвления. Для того, чтобы просмотреть возможные варианты, надо нажать клавишу <TAB> еще раз.

Например:

1. #/sbin/ch<TAB> не даст ничего, поскольку есть варианты, повторное нажатие <TAB> покажет список вариантов:

chcpu      chkconfig

2. #/sbin/chk<TAB> даст

/sbin/chkconfig

4. Команды Linux

Для управления сервером через безопасное соединение SSH необходимо знание нескольких основных команд Linux:

  • ls – вывести на экран содержимое папки;
  • cd – перейти в папку;
  • mkdir – создать папку;
  • chown – изменить владельца файла/папки;
  • chmod – изменить права доступа к файлу/папке;
  • su – стать суперпользователем (root);
  • sudo – выполнить команду от имени другого пользователя;
  • useradd – добавить пользователя в систему;
  • passwd – задать/изменить пароль пользователя;
  • cp – копировать файлы и папки;
  • mv – переместить файлы и папки;
  • rm – удалить файл или папку.

Более подробно команды описаны с статье “Команды Linux. Краткое описание.”

Если Вы используете сервер на основе нашего шаблона виртуальной машины, то при установке сервисов, программа-установщик выполнит все необходимые операции – установит и зарегистрирует сервис, сделает необходимые изменения в брандмауэре (firewall), установит и настроит необходимые конфигурационные файлы и права доступа на все добавленные файлы. После этого сервис будет полностью настроен и готов к немедленному использованию. При удаленни сервиса, все изменения будут выполнены в обратном порядке и никаких следов пребывания сервиса на сервере не останется.

No comments yet.

Leave a Reply