Архив рубрики: Публикации

cat в Linux – всё что нужно знать



























3.3/5 — (6 голосов)

Прежде чем мы начнём углубляться в тему статьи, мы должны войти в VPS через SSH и быстро проверить основной синтаксис. Команда принимает имя файла в качестве аргумента вместе с опциями, уточняющими отдельные операции.

Чтобы найти все доступные опции, просто введите cat –help в терминале.

Подготовительные действия

Сначала хотелось бы уделить время предварительным действиям, поскольку не все юзеры знакомы с принципом работы консоли. Дело в том, что при открытии файла требуется либо указывать точный путь к нему, либо производить запуск команды, находясь непосредственно в самой директории через «Терминал». Поэтому мы советуем для начала просмотреть такое руководство:

  1. Запустите файловый менеджер и перейдите в ту папку, где хранятся необходимые файлы.
  2. Нажмите на одном из них правой кнопкой мыши и выберите пункт «Свойства».
  3. Во вкладке «Основные» ознакомьтесь с информацией по поводу родительской папки. Запомните этот путь, ведь он пригодится далее.
  4. Запустите «Терминал» через меню или комбинацию клавиш Ctrl + Alt + T.
  5. Пропишите команду cd /home/user/folder, где user — имя пользователя, а folder — папка, где хранятся объекты. За перемещение по пути отвечает стандартная команда cd.

Таким методом осуществляется переход к определенной директории через стандартную консоль. Дальнейшие действия также будут производиться через эту папку.

Просмотр содержимого

Одна из основных функций упомянутой команды — просмотр содержимого различных файлов. Вся информация отображается отдельными строками в «Терминале», а применение cat выглядит так:

  1. В консоли введите cat testfile, где testfile — имя необходимого файла, а затем нажмите на клавишу Enter.
  2. Ознакомьтесь с содержимым объекта.
  3. Вы можете открыть сразу несколько файлов, для этого потребуется указать все их названия, например, cat testfile testfile1.
  4. Строки будут совмещены и отобразятся одним целым.

Вот так работает cat без применения доступных аргументов. Если же вы просто пропишите в «Терминале»cat, то получите некое подобие консольного блокнота с возможностью записывать нужное количество строк и сохранять их нажатием на Ctrl + D.

Нумерация строк

Сейчас давайте затронем рассматриваемую команду с применением различных аргументов. Начать следует с нумерации строк, а за это отвечает -b.

  1. В консоли напишите cat -b testfile, где testfile — название нужного объекта.
  2. Как видите, были пронумерованы все присутствующие не пустые строки.
  3. Вы можете использовать этот аргумент с выводом нескольких файлов, как это было показано выше. В таком случае нумерация будет продолжаться.
  4. Если есть желание пронумеровать все строки, включая пустые, придется задействовать аргумент -n, и тогда команда приобретает вид: cat -n testfile.

Удаление повторяющихся пустых строк

Случается так, что в одном документе присутствует множество пустых строк, возникших каким-либо образом. Вручную удалять их через редактор не всегда удобно, поэтому здесь тоже можно обратиться к команде cat, применив аргумент -s. Тогда строка приобретает вид cat -s testfile (доступно перечисление нескольких файлов).


Добавление знака $

В операционной системе Linux знак доллара в конце строчки, означает что команда будет выполнена без root прав. Бывает, что нужно добавить символ “$” в конец всех строк документа, для этого нам поможет опция -e.
cat -e script

Небольшой вывод

В итоге можно сказать, что популярная утилита имеет три основных функции:

  1. выводит на экран текст;
  2. перенаправляет стандартный вывод;
  3. добавляет символа $.

Отображение текстовых файлов

Простейший способ использования cat – задать команде имя файла. Содержимое текстового файла будет выведено на экран. Например, следующая команда прочитает содержимое файла mytext.txt и выведет его в стандартный поток вывода (экран вашего терминала):
cat mytext.txt

Если файл слишком длинный, он пролистается, и вы увидите только последний экран. При необходимости просмотреть документ постранично или прокручивать его вперёд и назад можно воспользоваться такими средствами просмотра как pg, more или less.

Когда указано несколько файлов, cat будет выводить их последовательно, объединяя содержимое в потоке стандартного вывода. Поэтому следующая команда выведет содержимое двух текстовых файлов, как если бы они были одним:

cat mytext.txt mytext2.txt

Создание нового файла с помощью cat

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 21px !important;”> [hc@host ~]# cat > new_file это новый файл




1234[hc@host~]# cat > new_file это новый файл

С помощью cat и символа > мы перенаправили стандартный вывод в файл new_file. Для завершения заполнения файла данными перейдите на новую строку и нажмите Ctrl+D.

Просмотр файлов с помощью cat в Linux

Для просмотра файла просто наберите:
#cat <имя_файла> <текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 21px !important;”> [hc@host ~]# cat new_file это новый файл




1234[hc@host~]# cat new_file это новый файл

Можно вывести с номерами строк:

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 21px !important;”> [hc@host ~]# cat -n new_file 1 это 2 новый 3 файл




1234[hc@host~]# cat -n new_file     1  это     2  новый     3  файл

Можно просмотреть содержимое нескольких файлов.

<текстареа wrap=”soft” class=”crayon-plain print-no” data-settings=”dblclick” readonly=”” style=”-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 12px !important; line-height: 21px !important;”> [hc@host ~]# cat -n new_file old_file 1 это 2 новый 3 файл 4 Это старый файл




12345[hc@host~]# cat -n new_file old_file     1  это     2  новый     3  файл     4  Этостарыйфайл

Обратите внимание, что содержимое выводится единым массивом данных, что хорошо видно по тому, что содержание второго файла вывелось строкой под номером 4 – нумерация не началась заново при выводе этого файла. Т.е. cat, как это и заложено в ее названии, склеила файлы.

Редирект Контента с Помощью Команды Cat

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

cat ishodnyifail.txt > failnaznachenija.txt

Если файл назначения не существует, команда создаст его или перезапишет существующий с таким же именем.

Чтобы добавить содержимое в файл назначения, используйте опцию >>:

cat ishodnyifail.txt >> failnaznachenija.txt

Конкатенация («Склеивание») Файлов с Помощью Команды Cat

Команда cat также позволяет объединять несколько файлов в один. По сути это работает так же, как и функция перенаправления выше, но с несколькими исходными файлами.

cat ishodnyifail1.txt ishodnyifail2.txt > failnaznachenija.txt

Как и ранее, приведенная выше команда создаст файл назначения, если он не существует, или перезапишет существующий файл с таким же именем.

Обозначение Конца Строки Командой Cat

С помощью команды cat также можно обозначить конец строки. Маркер конца строки — символ $. Чтобы реализовать эту функцию, используйте параметр -E:

cat -E imiafaila.txt

Нумерация Строк с Помощью Команды Cat в Linux

Эта команда также позволяет отобразить содержимое файла с пронумерованными строками. Реализует эту функцию опция  -n:

cat -n imiafaila.txt

Присоединение содержимого текстового файла в конец другого текстового файла

Вместо перезаписи файла можно присоединить текст файла-источника к другому файлу при помощи оператора перенаправления «>>».
Например, команда:

cat mytext.txt >> another-text-file.txt

Прочтет содержимое mytext.txt и запишет его в конец файла another-text-file.txt. Если этот файл не существует, он будет создан, и содержимое mytext.txt будет записано в новый файл.
Это работает также для нескольких файлов. Следующая команда последовательно запишет содержимое mytext.txt и mytext2.txt в конец файла another-text-file.txt:

cat mytext.txt mytext2.txt >> another-text-file.txt

Добавление стандартного ввода в вывод cat

Если в качестве имени файла задать дефис («-«), cat осуществляет считывание из стандартного потока ввода. Например, если у вас есть файл list.txt со следующим текстом:

яблоки
апельсины
масло
хлеб

вы можете воспользоваться командой echo для вывода текста, направить этот текст команде cat и указать ей объединить его с содержимым файла:

echo “Мой список покупок” | cat – list.txt

На выходе получим следующий текст:

Мой список покупок
яблоки
апельсины
масло
хлеб

Основные параметры команды cat

После того, как вы поиграли с различными форматами двоичных файлов, вернемся к простым старым текстовым файлам, изучив пару опций, специально предназначенных для работы с этими файлами. Несмотря на то, что они не являются частью стандарта POSIX, эти параметры являются переносимыми по версиям BSD и GNU для cat. Обратите внимание: мы не претендуем на то, что мы здесь разберем все моменты, поэтому проверьте страницу man, чтобы увидеть полный список опций, поддерживаемых вашей системой команду cat!

-n: числовые строки

С помощью опции n команда cat префикс каждой выходной строки по номеру строки:

cat -n andreyex.txt 1 2 andreyex andreyex n. 3 a natural family of lithe-bodied round-headed fissiped 4 mammals, including the cats; wildcats; lions; leopards; 5 cheetahs; and saber-toothed tigers. 6 7 Syn: family {andreyex}. 8 [WordNet 1.5] 9

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

cat -n feli*.txt

-s: подавление повторяющихся пустых выходных строк

С помощью опции -s команда cat сбрасывает несколько последовательных пустых строк:

cat -n ubuntu.txt andreyex.txt | sed -n 8,13p 8 lynx ({ubuntu lynx}) is also called {Lynx lynx}. 9 [1913 Webster +PJC] 10 11 12 andreyex andreyex n. 13 a natural family of lithe-bodied round-headed fissiped sylvain@bulbizarre:~$ cat -ns ubuntu.txt andreyex.txt | sed -n 8,13p 8 lynx ({ubuntu lynx}) is also called {Lynx lynx}. 9 [1913 Webster +PJC] 10 11 andreyex andreyex n. 12 a natural family of lithe-bodied round-headed fissiped 13 mammals, including the cats; wildcats; lions; leopards;

В приведенном выше примере вы можете увидеть, что в выводе по умолчанию строки 10 и 11 были пустыми. При добавлении опции -s вторая пустая строка была отброшена.

-b: число только непустые строки

Несколько связанный с двумя предыдущими вариантами, опция -b будет содержать строки, игнорируя пустые:

$ cat -b andreyex.txt | cat -n 1 2 1 andreyex andreyex n. 3 2 a natural family of lithe-bodied round-headed fissiped 4 3 mammals, including the cats; wildcats; lions; leopards; 5 4 cheetahs; and saber-toothed tigers. 6 5 7 6 Syn: family {andreyex}. 8 7 [WordNet 1.5] 9

В приведенном выше примере используются два экземпляра команды cat с различными параметрами в контейнере. Внутренняя нумерация происходит с помощью опции -b, используемой с первой командой cat. Внешняя нумерация исходит с помощью опции -n, используемой со второй командой cat.

Как вы можете увидеть, первая и последняя строки не были пронумерованы опцией -b, потому что они пусты. Но как насчет 6-й линии? Почему она по-прежнему нумеруется с опцией -b? Ну, потому что это строка заполненная пробелами, но не пустая, как мы увидим в следующем разделе.

-v,,-e, -t: Отображение непечатаемых символов

Три варианта,-v, -e `, and `-t которые используются для отображения различных наборов невидимых символов. Даже если наборы перекрываются, нет опции «catch-all», поэтому вам придется комбинировать их, если вы хотите отображать все невидимые символы.

-v: просмотр невидимых символов

Опция -v отображает все непечатаемые символы с кареткой и мета – обозначениями,  за исключением строки и табуляции.

С помощью этой опции управляющие символы будут отображаться как каретка ( ^), за которыми следует соответствующий символ ASCII (например, возврат каретки, 13 байт отображается так, ^M как M в ASCII – 64 + 13), а символы с набором бит высокого порядка появится в «мета» описании M- за которой следует представление, соответствующее 7 младшим битам (например, байт 141 будет отображаться так, M-^M как 141 – 128 + 13).

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

$ cat -v cat.jpg | fold -75 | head -10 M-^?M-XM-^?M-`^@^PJFIF^@^A^A^A^@H^@H^@^@M-^?M-~^@QFile source: http://commo ns.wikimedia.org/wiki/File:Felis_catus-cat_on_snow.jpgM-^?M-b^LXICC_PROFILE ^@^A^A^@^@^LHLino^B^P^@^@mntrRGB XYZ ^GM-N^@^B^@ ^@^F^@1^@^@acspMSFT ^@^@^@^@IEC sRGB^@^@^@^@^@^@^@^@^@^@^@^@^@^@M-vM-V^@^A^@^@^@^@M-S-HP ^@^@^ @^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ ^@^@^@^@^@^@^@^Qcprt^@^@^AP^@^@^@3desc^@^@^AM-^D^@^@^@lwtpt^@^@^AM-p^@^@^@^ Tbkpt^@^@^B^D^@^@^@^TrXYZ^@^@^B^X^@^@^@^TgXYZ^@^@^B,^@^@^@^TbXYZ^@^@^B@^@^@ ^@^Tdmnd^@^@^BT^@^@^@pdmdd^@^@^BM-D^@^@^@M-^Hvued^@^@^CL^@^@^@M-^Fview^@^@^ CM-T^@^@^@$lumi^@^@^CM-x^@^@^@^Tmeas^@^@^D^L^@^@^@$tech^@^@^D0^@^@^@^LrTRC^ @^@^D<^@^@^H^LgTRC^@^@^D<^@^@^H^LbTRC^@^@^D<^@^@^H^Ltext^@^@^@^@Copyright (

Другим вариантом использования этого параметра -v является поиск управляющих символов, которые могли бы просочиться в текстовый файл. Если вы запомнили это, у нас есть эта странная проблема выше с вариантом,-b, обозначающим 6-ю строку ввода, тогда как она выглядела пустой. Итак, давайте расследуем следующее:

$ cat -v andreyex.txt andreyex andreyex n.^M a natural family of lithe-bodied round-headed fissiped^M mammals, including the cats; wildcats; lions; leopards;^M cheetahs; and saber-toothed tigers.^M ^M Syn: family {andreyex}.^M [WordNet 1.5]^M

Ах ах! Вы видите эти знаки ^M? Они используются для замены символа обратной невидимой каретки. Откуда это? Ну, протокол,dict, как и любой другой интернет-протокол, использует CRLF в качестве терминатора линии. Поэтому мы загрузили их как часть наших образцовых файлов. Но пока это объясняет, почему cat считает, что 6-я строка не пуста.

-e: отображение невидимых символов, включая конец строки

Опция -e работает с опцией -v, только будет  добавить знак доллара ($) перед каждым символом перевода строки, тем самым явно показывая конец линии:

$ cat -e andreyex.txt $ andreyex andreyex n.^M$ a natural family of lithe-bodied round-headed fissiped^M$ mammals, including the cats; wildcats; lions; leopards;^M$ cheetahs; and saber-toothed tigers.^M$ ^M$ Syn: family {andreyex}.^M$ [WordNet 1.5]^M$ $

-t: отображение невидимых символов, включая вкладки

Опция -t работает как вариант -v, за исключением того, что будет также отображать табличные данные с помощью курсора ^I (закладка хранится в виде байта удержания значение 9, а I в ASCII составляет 64 + 9 = 73):

$ cat -t andreyex.txt andreyex andreyex n.^M ^Ia natural family of lithe-bodied round-headed fissiped^M ^Imammals, including the cats; wildcats; lions; leopards;^M ^Icheetahs; and saber-toothed tigers.^M ^M ^ISyn: family {andreyex}.^M ^I^I [WordNet 1.5]^M

-et: показать все скрытые символы

Как мы уже говорили кратко, если вы хотите отобразить все непечатаемые символы, в том числе таблицы и маркеры конца строки, вам нужно будет использовать варианты -e и -t:

$ cat -et andreyex.txt $ andreyex andreyex n.^M$ ^Ia natural family of lithe-bodied round-headed fissiped^M$ ^Imammals, including the cats; wildcats; lions; leopards;^M$ ^Icheetahs; and saber-toothed tigers.^M$ ^M$ ^ISyn: family {andreyex}.^M$ ^I^I [WordNet 1.5]^M$ $

Копирование текстового файла

Обычно копирование осуществляется командой cp, но для копирования текстовых файлов вы можете аналогичным образом использовать команду cat. cat отправляет результат в stdout (стандартный поток вывода), обычно это экран терминала. Однако, можно перенаправить результат в файл при помощи символа перенаправления “>”.

Например, команда:

cat mytext.txt > newfile.txt

считает содержимое mytext.txt и отправить его в стандартный поток вывода, но вместо отображения текста оболочка перенаправит результат в файл newfile.txt. Если этот файл не существует, он будет создан. Если он будет же существует, то будет перезаписантс потерей предыдущего содержимого, поэтому будьте осторожны.

Аналогично можно объединять несколько файлов в один. Например, команда

cat mytext.txt mytext2.txt > newfile.txt

считает содержимое mytext.txt и mytext2.txt и запишет объединенный текст в newfile.txt. При отсутствии файла он будет создан, при наличии — перезаписан.

Удаление Пустых Строк

Чтобы удалить пустые повторяющиеся строки и сэкономить место на дисплее, вы можете применить опцию -s. Но имейте в виду, что этот параметр удалит только повторяющиеся пустые строки, оставив одну пустую строку.

cat -s imiafaila.txt

Нумерация Непустых Строк с Помощью Команды Cat в Linux

Чтобы вывести номер каждой строки, не учитывая пустых,  используйте опцию -b. Но помните, что параметр -b отменяет опцию -n:

cat -b imiafaila.txt

Отображение Файла в Обратном Порядке

Чтобы просмотреть содержимое файла в обратном порядке, начиная с последней строки и заканчивая первой, просто используйте команду tac (команду cat, написанную задом наперёд):

tac imiafaila.txt

Примеры

Рассмотрим простой пример. Нужно узнать имя компьютера. Для этого, считаем файл hostname.
cat /etc/hostname

Читаем имя компьютера

Как видим выше на скриншоте, команда просто прочитала текст и показала его на экране. В нашем случае имя компьютера это debian.
сat -n /home/user/file

Результат выполнения с ключом -n

ВАЖНО! Опция -n нумерует все строки, в том числе пустые.

Заключение

cat — простой, но очень полезный инструмент для работы с данными в текстовых файлах, системных логах, файлах конфигурации и любыми другими читаемыми для человека данными.


[spoiler title=”Источники”]

  • https://www.hostinger.ru/rukovodstva/komanda-cat-v-linux/
  • https://lumpics.ru/linux-cat-command-examples/
  • https://www.vseprolinux.ru/komanda-cat
  • https://ITProffi.ru/komanda-cat-v-linux/
  • https://host-consult.ru/primeryi-ispolzovaniya-cat-v-linux/
  • https://andreyex.ru/operacionnaya-sistema-linux/komanda-cat-v-linux-osnovnye-i-rasshirennye-primery/


[/spoiler]


2020-07-27T15:39:45
Linux

Веб сервер Apache (Web Апач) ➡ что это, как работает и какие у него преимущества



























Rate this post

Apache HTTP-сервер – это так называемый свободный веб-сервер, представляющий собой кросплатформенное программное обеспечение. Apache поддерживает следующие операционные системы: BSD, Microsoft Windows, Linux, Mac OS, BeOS, Novell NetWare.

Как работает веб-сервер Apache?

Хоть Apache и называется веб-сервер, но в реальном положении вещей он является не сервером, а программой, которая запускается на сервере. Его задача установить соединение между сервером и браузером посетителей (Firefox, Google Chrome, Safari и др.) при доставке файлов туда и обратно между ними (клиент-серверная структура). Apache – это кроссплатформенное программное обеспечение, что значит оно хорошо работает как на Unix, так и на Windows серверах.

Когда посетитель хочет загрузить страницу вашего сайта, например, домашнюю страницу или страницу «О нас», его браузер отправляет запрос на ваш сервер и Apache возвращает ответ со всеми запрошенными файлами (текст, изображение и так далее). Сервер и клиент взаимодействуют по протоколу HTTP и Apache ответственен за гладкое и безопасное соединение между двумя машинами.

Apache хорошо и удобно настраиваемый поскольку имеет модульную структуру. Модули позволяют администраторам сервера включать или выключать дополнительную функциональность. У Apache есть модули безопасности, кэширования, редактирования URL, аутентификации по средством пароля и другие. Вы можете установить свою собственную конфигурацию через файл .htaccess, который является файлом настроек для Apache и поддерживается всеми тарифными планами Hostinger.

Ядро веб-сервера Апач

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

  • Передача данных по HTTP;
  • Обработка файлов;
  • Загрузка и поддержка модулей.

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

Обслуживание серверов

от 10 000 руб.

Подбор, сборка и настройка серверов для решения любых задач. Абонентское обслуживание с круглосуточным мониторингом устройств. Настройка удаленного доступа и ограничение доступа к информации сотрудникам. Полное погружение в Вашу сферу.


  • обслуживание и круглосуточный мониторинг устройств

  • настройка системы архивации в подарок

  • бесплатная консультация специалиста

  • удаленная настройка сервера

Мы свяжемся с Вами и проконсультируем по всем вопросам

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

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

Сервер, профессионально настроенный под Ваши потребности позволит мониторить рабочую ситуацию в любое удобное время!

Наша компания занимается установкой и настройкой серверов исходя из индивидуальных потребностей клиента. Мы предоставляем как разовую услугу, так и комплексное сопровождение ИТ-инфраструктуры компании — обслуживание ПК, периферийных устройств, серверов, сетей, сетевого оборудования, а также всех необходимых сервисов, программ и приложений.

Что дает установка сервера

Хранение файлов в одном месте

Файлы хранятся в одном месте. Нет необходимости постоянно передавать их по почте или с помощью флешки.

Ограничение доступа к информации/файлам

Сотрудники не видят файлы, которые под запретом, не могут изменять и удалять файлы, которые доступны только к чтению.

Удобное рабочее пространство

У сотрудника на рабочем столе будут выведены все необходимые для работы ярлыки

Ограничение Интернет-ресурсов

Запрет доступа к социальным сетям, порносайтам, онлайн играм и прочим ресурсам.

Одинаковое ПО

Все сотрудники будут работать с одинаковым ПО (одинаковая программа, одинаковая версия и т.д.).

Полноценная удаленная работа

Сотрудники могут удаленно работать с любой точки земного шара, где есть Интернет (без тим вивера и прочих программ).

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

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

Централизованное подключение принтеров и МФУ

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

Использование мощностей сервера, а не компьютера

Даже при слабом компьютере сотрудник может работать с 1С, фотошопом и другими программами, если они стоят на сервере.

Централизованная настройка подписей при отправке

Сотрудники не могут изменить свою подпись в письме: поставить туда свою, некорпоративную почту, изменить номер телефона.

Система внутреннего чата без использования Интернета

Аналог аськи, но внутри компании. Возможна также передача данных.

Блокировка всех почт кроме корпоративной во избежание утечки информации

Полная блокировка использования сторонней почты кроме корпоративной.

Защита файлов

Файлы защищены от полоски компьютера, вирусов, шифрования и других угроз.

Полный контроль над письмами и вложениями

Вся почта хранится у вас – вы защищены от специального или случайного удаления чего-либо из почты своим сотрудником.

Ограничение установки и запуска программ

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

Унификация рабочих мест

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

 

Установка Apache

На данный момент, самая новая версия программы 2.4 поэтому и будет рассмотрена настройка apache 2.4. Как я уже говорил, в Linux программа устанавливается буквально в пару команд. Для установки в Ubuntu сначала обновим систему до самой новой версии:

sudo apt update

$ sudo apt upgrade

Затем установка apache2:

sudo apt install apache2

В других дистрибутивах пакет программы называется либо так, либо httpd и его установка у вас не вызовет трудностей.

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

sudo systemctl enable apache2

Настройка AD (Active Directory)

Процесс настройки active directory является весьма длительным и ответственным, выполнение которого требует наличия высокой квалификации и большого опыта работы в данной сфере. Но своевременная установка, правильная настройка и применение AD открывает широчайшие возможности перед любой компанией. Применение active directory позволяет значительно упростить процесс расширения штата компании, внедрить новые технологии и решения. AD способствует расширению функциональности и обеспечению безопасной работы всей корпоративной сети.

Настройка Apache на Windows

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

Кстати, в конфигурационном файле уже прописаны значения многих параметров по умолчанию. К примеру, по умолчанию корневой директорией является c:/Apache24. Поэтому если папку Apache24 из скаченного архива вы разархивируете в корень диска C, то вы можете вообще без настройки запустить веб-сервер следующей командой:

c:Apache24binhttpd.exe -k start

И по адресу http://localhost увидите стандартную страницу веб-сервера, которая сообщает, что он работает:

Кстати, для открытия командной строки в Windows используйте сочетание клавиш Win+x и в открывшемся окне выберите Windows PowerShell (администратор).

Настройка веб-сервера выполняется посредством редактирования текстового файла, который размещён в папке Apache24conf и называется httpd.conf.

Этот файл состоит из директив с определёнными значениями. Эти директивы регулируют поведение веб-сервера. Но больше чем директив в этом файле комментариев – они начинаются с решётки (#) – комментарии нужны для человека, который настраивает веб-сервер. Сам сервер строки начинающиеся с # просто игнорирует. Т.е. вы можете просто удалить их.

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

Как уже было сказано, важно установить путь до папки с веб-сайтами. Если она установлена неправильно (например, отсутствует на компьютере), то веб-сервер не запуститься.

Думаю, вы уже обратили внимание, что веб-сервер отличается от других программ для Windows. Если вы знакомы с Linux или другими аналогичными операционными системами, вам должна быть знакома работа в консоли и редактирование текстовых файлов. Пути до файлов тоже записываются не совсем обычно для Windows. Сейчас главное уяснить два правила:

  • используйте абсолютные пути до файла (которые начинаются с буквы диска, затем следуют все вложенные папки), а не относительные – у сервера свои правила интерпретации относительных путей, поэтому вы можете не понять друг друга;
  • всегда используйте прямые слеши, а не обратные (т.е., “c:/apache” вместо “c:apache”).

Итак, откройте файл Apache24confhttpd.conf любым текстовым редактором (хоть Блокнотом) и вот мы уже готовы к настройке веб-сервера.

Первой идёт директива ServerRoot – это верхняя директория дерева, в которой хранятся файлы конфигурации сервера и журналов. Не добавляйте слэш на конец пути папки.

Значение по умолчанию устанавливается двумя директивами:

Define SRVROOT “c:/Apache24” ServerRoot “${SRVROOT}”

Первая директива присваивает значение переменной SRVROOT, которое по умолчанию “c:/Apache24”. Вторая директива присваивает значение переменной ${SRVROOT} настройке ServerRoot.

ServerRoot — это та папка, в которой находятся все файлы веб-сервера – поменяйте значение на то, куда вы распаковали файлы веб-сервера. Это можно сделать используя конструкцию из двух переменных:

Define SRVROOT “c:/Server/bin/Apache24” ServerRoot “${SRVROOT}”

Либо если вы не планируете снова использовать переменную ${SRVROOT} (а она по умолчанию используется далее!), то можно сократить запись из двух строк до одной строки:

ServerRoot “c:/Server/bin/Apache24”

Директива Listen позволяет вам привязать Apache к определённому IP адресу и/или порту. Значение по умолчанию:

Listen 80

Оно означает, прослушивать 80 порт на любом IP адресе (т.е. любом сетевом интерфейсе), доступном в вашей системе. Вы можете указать конкретный IP адрес, который нужно прослушивать и, следовательно, на запросы с которого отвечать:

Listen 12.34.56.78:80

Можно указать несколько портов:

Listen 80 Listen 8000

Или несколько IP и портов:

Listen 192.170.2.1:80 Listen 192.170.2.5:8000

Вы можете использовать любые сочетания, главное правило – порт на указанном интерфейсе (IP) не должен быть занят другой программой.

Значение по умолчанию вполне подходит для локального веб-сервера – т.е. здесь можно просто ничего не менять.

Далее идёт большой список модулей. Некоторые их них отключены (строки закомментированы, т.е. начинаются с #), а некоторые включены.

На самом деле, всё действительно необходимое уже включено – и для работы большинства веб-сайтов менять ничего не нужно – особенно на локальном веб-сервере. Но есть одно исключение – модуль mod_rewrite по умолчанию отключён. Это очень популярный модуль, например, все ЧПУ (понятные для человека адреса страниц) делаются с помощью него. Вы можете его включить, для этого достаточно найти строку:

#LoadModule rewrite_module modules/mod_rewrite.so

и раскомментировать её, т.е. заменить на:

LoadModule rewrite_module modules/mod_rewrite.so

Директива ServerAdmin содержит e-mail администратора, этот адрес электронной почты пишется на некоторых страницах веб-сервера, которые автоматически генерируются в случае возникновения ошибок. Подразумеваются, что по этому адресу можно связаться с администратором.

Директива ServerName – это то, как сервер сам себя идентифицирует (называет). Для локального веб-сервера поменяйте строку

#ServerName www.example.com:80

на

ServerName localhost

Конструкция

    AllowOverride none     Require all denied

запрещает доступ к файловой системе веб-сервера (пока это не разрешено явно) и запрещает использовать файлы .htaccess (пока это не разрешено явно).

Далее идёт довольно объёмная конструкция, но если удалить из неё комментарии, то получается следующее:

DocumentRoot “${SRVROOT}/htdocs” Options Indexes FollowSymLinks AllowOverride None Require all granted

DocumentRoot – это директория, где по умолчанию находятся сайты. По умолчанию именно там ищутся все пришедшие на веб-сервер запросы. Укажите здесь путь до корневой папки в веб-документами. Конечный слэш писать не нужно.

Конструкция нам уже встречалась. Но здесь указывается конкретная папка, для который делаются настройки. Эти настройки перезаписывают общие, которые указаны ранее.

Пути до папок в DocumentRoot и Directory не забудьте поменять на свои!

Обратите внимание, что для установки настроек вновь используется переменная ${SRVROOT}, значение которой было присвоено в самом начале. Если использовать синтаксис с ${SRVROOT}, то корневая папка документов должна обязательно находится в корневой папке сервера. Я настраиваю сервер по-другому — у меня исполнимые файлы отделены от файлов сайтов, поэтому вместо переменной, можно просто прописать пути до нужной папки с сайтами:

DocumentRoot “c:/Server/data/htdocs/” Options Indexes FollowSymLinks AllowOverride None Require all granted

Директива Options включает разные опции. По умолчанию указаны опции Indexes и FollowSymLinks. Первая (Indexes) означает показывать индексные файлы, если запрос не содержит имени файла. Допустим, пользователь открывает адрес http://localhost/site/, то если в этой папке есть индексный файл (например, index.html или index.php), то будет показан этот файл. Понятно, что если сделан запрос на определённый файл, например, http://localhost/site/page.html, то будет показана запрошенная страница.

Вторая опция (FollowSymLinks) означает следовать символьным ссылкам. Это что-то вроде ярлыков в Windows. В Linux с помощью таких ссылок можно собрать в одном сайте файлы, размещённые в различных папках файловой системы. На самом деле, для начинающих администраторов сервера это не очень нужно.

Директива AllowOverride установлена на None, это означает запрет использовать файлы .htaccess. На своём сервере я разрешаю файлы .htaccess (нужны для mod_rewrite, ограничения доступа), поэтому я заменяю её значение на All, получается так:

AllowOverride All

А директива Require all granted открывает посетителям доступ для веб-документов.

Я уже упомянул индексные файлы, перечень индексных файлов устанавливается конструкцией:

    DirectoryIndex index.html

Там всего один файл – index.html. Можно дописать любое количество своих собственных. Я меняю:

DirectoryIndex index.html

на

DirectoryIndex index.php index.html index.htm

Другие настройки обычно не требуется менять для локального веб-сервера.

Смотрите также:

  • Как подключить PHP к Apache на Windows
  • Как подключить MySQL к Apache на Windows

Преимущества веб-сервера Апач

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

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

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

При работе с сайтами на Вордпрессе, не требует дополнительных настроек после установки.

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

Недостатки сервера Апач

Как и у любой другой вещи, все недостатки Apache, являются логическим продолжением его достоинств. Наиболее вескими недостатками являются:

  • Возможные проблемы с производительностью на высоконагруженных сайтах с большим трафиком, «тяжелым» контентом или приложениями, которые требуют высоких вычислительных мощностей;
  • Большое количество параметров настройки может привести к возникновению уязвимостей, из-за невнимательности при конфигурации;
  • Существует вероятность того, что в модули от независимых разработчиков будет внедрен вредоносный код.


[spoiler title=”Источники”]

  • https://ru.hostings.info/schools/apache.html
  • https://www.hostinger.ru/rukovodstva/web-server-apache/
  • https://loomhosts.com/ru/web-server-apache/
  • https://Lan-Star.ru/uslugi/12-ustanovka-i-nastroyka-serverov.html
  • https://losst.ru/ustanovka-i-nastrojka-servera-apache
  • http://fixservice.ru/servers/nastroyka/
  • https://apache-windows.ru/%D0%BA%D0%B0%D0%BA-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D1%82%D0%B8%D1%82%D1%8C-apache-%D0%BD%D0%B0-windows/


[/spoiler]


2020-07-27T15:39:45
Linux

chmod linux – описание и примеры использования



























2/5 — (1 голос)

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

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

chown новый_владелец имя_файла

Например, установим для файла myfile нового владельца vasya:

chown vasya myfile

Для изменения владельца и группы файла используется следующий синтаксис:

chown новый_владелец:новая_группа имя_файла

Например, установим для файла myfile нового владельца vasya и группу sambashare:

chown vasya:sambashare myfile

Команда chgrp — изменение группы

Есть еще одна команда — chgrp. Она позволяет изменить только группу. Например:

chgrp sambashare myfile

Параметры chmod

-c, –changes Подобно –verbose, но выдает подробный вывод только тогда, когда изменение действительно сделано.

-f, –silent, –quiet Бесшумный режим; подавлять большинство сообщений об ошибках.

-v, –verbose Подробный режим; вывести диагностическое сообщение для каждого обработанного файла.

–no-preserve-root Не обрабатывать ‘/’ (корневой каталог) каким-либо особым образом, который является настройкой по умолчанию.

–preserve-root Не работать рекурсивно на «/».

–reference=RFILE Установить разрешения, соответствующие разрешениям файла RFILE, игнорируя любой указанный РЕЖИМ.

-R, –recursive Менять файлы и каталоги рекурсивно.

–help Показать справочное сообщение и выйти.

–version Вывести информацию о версии и выйти.

Синтаксис

chmod [параметры] [права] путь

Основные параметры:

  • -c – показать информация обо всех изменениях.
  • -f – не показывать ошибки.
  • -v – вывод полной информации.
  • -R – рекурсивно обрабатывать файлы и каталоги.
  • –help – показать справочную информацию.
  • –version – информация о версии.

Применят часто символьную запись прав:

  • -r –  на чтение
  • -w – на запись
  • -x – на выполнение, права на запуск
  • -s – на выполнение от супер пользователя root.

ВАЖНО! Записывают права в таком порядке: чтение–>запись–>выполнение.

Категории пользователей:

  1. -u (owner) – владелец.
  2. -g (group) – группа.
  3. -o (others)- другие.

Каждый кто имеет доступ к документу имеет свой набор правил. Например владелец имеет неограниченный доступ, группа только писать, другие выполнять.

Чтобы прибавить права используется знак “+”, убавить “-“.
chmod ugo+rwx file

Вместо букв можно назначать права с помощью цифр от нуля до семи:

  • 0 – все запрещено
  • 1 – выполнение, разрешено запускать документ
  • 2 – запись, изменение.
  • 3 – выполнение и запись.
  • 4 – разрешено читать.
  • 5 – читать и выполнять
  • 6 – читать и писать
  • 7 – все разрешено, писать, читать, выполнять.

chmod 777 file

Здесь 777:

  1. первая цифра назначает разрешения для владельца документа;
  2. вторая цифра – для группы;
  3. третья  – для всех остальных.

Примеры прав на директорию:

  • 744 – первая цифра говорит, что имеет полный доступ владельц, вторая цифра четыре – чтение для группы, третья цифра четыре – всем другим можно читать;
  • 765 – для владельца – полные права, для группы – читать, писать и другим читать, выполнять;
  • 774 – полный доступ для владельца, полный доступ для группы, чтение для остальных;
  • 777 – всем все разрешено.

Техническое описание

chmod изменяет режим файла каждого указанного ФАЙЛА в соответствии с MODE, который может быть либо символическим представлением вносимых изменений, либо восьмеричным числом, представляющим битовую комбинацию для битов нового режима.

Формат символического режима:


[ugoa…][[+-=][perms…]…]

где perms – это ноль или более букв из набора r, w, x, X, s и t, или одна буква из набора u, g и o. Можно указать несколько символьных режимов, разделенных запятыми.

Комбинация букв u, g, o и элементов управления, которые изменят доступ пользователей к файлу: пользователь, которому он принадлежит (u), другие пользователи в группе файла (g), другие пользователи, которых нет в файле группа (o) или все пользователи (a). Если ничего из этого не дано, эффект будет таким, как если бы был задан a, но биты, которые установлены в umask, не затрагивались.

Оператор  (+) вызывает добавление выбранных битов режима файла к существующим битам режима файла каждого файла; ” -” вызывает их удаление; и “=” вызывает их добавление и приводит к удалению не упомянутых битов, за исключением того, что неизменяемые установленные пользователем биты каталога и идентификаторы группы не затрагиваются.

Буквы r, w, x, X, s и t выбирают биты режима файла для затронутых пользователей: чтение (r), запись (w), выполнение (x), выполнение только в том случае, если файл является каталогом или уже имеет разрешение на выполнение для некоторого пользователя (X) установите идентификатор пользователя или группы при выполнении (s), флаг ограниченного удаления или фиксированный бит (t). Для каталогов параметры выполнения X и X определяют разрешение на просмотр содержимого каталога.

Вместо одной или нескольких из этих букв вы можете указать одну из букв u, g или o: разрешения, предоставленные пользователю, которому принадлежит файл (u), разрешения, предоставленные другим пользователям, которые являются членами группы файла (g) и разрешения, предоставленные пользователям, которые не входят ни в одну из двух предыдущих категорий (o).

Числовой режим – от одной до четырех восьмеричных цифр (0-7), полученных путем сложения битов со значениями 4, 2 и 1. Предполагается, что пропущенные цифры являются ведущими нулями. Первая цифра выбирает заданный идентификатор пользователя (4) и заданный идентификатор группы (2) и атрибуты ограниченного удаления или закрепления (1). Вторая цифра выбирает права доступа для пользователя, которому принадлежат операции чтения (4), записи (2) и выполнения (1); третий выбирает права доступа для других пользователей в группе файла с теми же значениями; и четвертый для других пользователей, не входящих в группу файла, с теми же значениями.

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

Биты Setuid и Setgid

chmod очищает бит set-group-ID обычного файла, если идентификатор группы файла не совпадает с эффективным идентификатором группы пользователя или одним из идентификаторов дополнительной группы пользователя, если только у пользователя нет соответствующих привилегий. Дополнительные ограничения могут привести к игнорированию битов set-user-ID и set-group-ID в MODE или RFILE. Это поведение зависит от политики и функциональности основного системного вызова chmod. В случае сомнений проверьте поведение системы.

chmod сохраняет биты set-user-ID и set-group-ID каталога, если вы не укажете иное. Вы можете установить или очистить биты с помощью символических режимов, таких как u + s и g-s, и вы можете установить (но не очистить) биты с помощью числового режима.

Флаг ограниченного удаления (или «Sticky Bit»)

Ограниченный флаг удаления или закрепленный бит – это один бит, интерпретация которого зависит от типа файла. Это предотвращает удаление или переименование файла в каталоге пользователям, которые не владеют файлом или каталогом; это называется флагом ограниченного удаления для каталога и обычно встречается в каталогах, доступных для записи во всем мире, таких как / tmp. Для обычных файлов в некоторых старых системах этот бит сохраняет текстовое изображение программы на устройстве подкачки, поэтому при запуске он загружается быстрее; это называется липким битом.

Как посмотреть разрешения файла

Быстрый и простой способ составить список прав доступа к файлу с помощью опции длинного списка (-l) команды ls. Например, чтобы просмотреть разрешения для file.txt, вы можете использовать команду:

ls -l file.txt

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

rwxrw-r– 1 user usergroup 123 Feb 03 15:36 file.txt

Примеры использования chmod

chmod 644 file.htm

Устанавливает для файла file.htm права «владелец может читать и писать; группа может только читать; другие могут только читать».

chmod -R 755 myfiles

Рекурсивно (-R) меняет разрешения для каталога myfiles и всех его папок и файлов на режим 755. Пользователь может читать, записывать и выполнять; члены группы и другие пользователи могут читать и выполнять, но не могут писать.

chmod u=rw example.jpg

Меняет разрешения для владельца example.jpg, чтобы владелец мог читать и записывать файл. Не меняет права доступа для группы или для других.

chmod u+s comphope.txt

Устанавливает бит «Set-User-ID» файла comphope.txt, чтобы каждый, кто пытается получить доступ к этому файлу, сделал это так, как если бы он был владельцем файла.

chmod u-s comphope.txt

Противоположность вышеупомянутой команды; снимает бит SUID

chmod 755 file.cgi

Устанавливает разрешения для file.cgi на «чтение, запись и выполнение владельцем» и «чтение и выполнение группой и всеми остальными».

chmod 666 file.txt

Устанавливает разрешение file.txt на «чтение и запись всеми».

chmod a=rw file.txt

Выполняет то же самое, что и вышеприведенная команда, используя символическую запись.

Изменение прав доступа командой chmod

Запись прав доступа числом

Пример:

chmod 764 myfile

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

  • Первая цифра используется для указания прав доступа для пользователя.
  • Вторая цифра для группы.
  • Третья для всех остальных.

В таблице ниже приводятся все возможные комбинации разрешений rwx и соответсвующие им числа (которые используются в команде chmod):

ЧислоРазрешенияСимвольное обозначение













0разрешения отсутствуют
1x — запуск–x
2w — изменение-w-
3x+w — запуск+изменение-wx
4r — чтениеr–
5r+x — чтение+запускr-x
6r+w — чтение+изменениеrw-
7r+w+x — чтение+изменение+запускrwx

Рассмотрим использование команды chmod с записью прав доступа числом на примере. Установим для файла права доступа 764:

chmod 764 myfile

Это означает (см. таблицу выше), что для файла myfile мы устанавливаем права доступа 764, которые означают:

  • 7 — права для владельца-пользователя. Владелец файла может читать, изменять и запускать файл (r+w+x).
  • 6 — права для группы. Пользователи, которые принадлежат группе могут читать и изменять файл (r+w).
  • 4 — права для всех остальных. Все остальные могут только читать файл (r).

Если записать 764 с помощью символов (см. таблицу), то мы получим: «rwxrw-r-».


В таблице ниже приведены некоторые часто используемые значения числовых значений прав доступа:

Числовое
обозначение”rwx”-обозначениеОписание














400-r——–Владелец файла может только читать файл. Для всех остальных все действия с файлом запрещены.
644-rw-r–r–Все пользователи могут читать файл. Владелец может изменять файл.
660-rw-rw—-Владелец и группа могут читать и изменять файл. Для всех остальных все действия с файлом запрещены.
664-rw-rw-r–Все могут читать файл. Владелец и группа могут изменять.
666-rw-rw-rw-Все могут читать и изменять файл.
700-rwx——Владелец может читать, изменять и запускать файл. Для всех остальных все действия с файлом запрещены.
744-rwxr–r–Все могут читать файл. Владелец может также изменять и запускать файл.
755-rwxr-xr-xВсе могут читать и запускать файл. Владелец может также изменять файл.
777-rwxrwxrwxВсе пользователи могут читать, изменять и редактировать файл.

Запись прав доступа символами

Примеры:

chmod +x myfile1 chmod g=rw myfile2 chmod u-w myfile3

Как вы можете видеть, в данном формате права доступа задаются символами rwx, но в синтаксисе используются и другие вспомогательные символы, например, математические операции «+» и «-» и такие символы как, например, «g» или «u».

Общий синтаксис можно записать примерно так:

chmod (владелец)(математическая операция)(разрешения) имя_файла

Обозначения для владельцев файла следующие:

ОбозначениеОписание









uВладелец-пользователь.
gГруппа.
oВсе остальные.
aВообще все.

Математические операции означают следующее:

ОператорОписание








+Добавляет к текущим правам доступа новое разрешение.
Удаляет из текущих прав доступа определенное разрешение.
=Устанавливает полностью новые разрешения (предыдущие перезаписываются новыми).

В одной команде можно перечислять владельцев и их разрешения через запятую (см. пример ниже).

Рассмотрим примеры:

  • chmod +x myfile1

    В данном случае мы не используем обозначения для владельцев, а значит разрешения устанавливаются для всех пользователей. «+x» означает — установить разрешение на запуск (x) файла для всех пользователей. Это эквивалентно выполнению команды: chmod a+x myfile1.

  • chmod g=rw myfile2

    Здесь используется обозначение g и символ равенства «=». Это означает, что для группы мы устанавливаем права доступа на чтение и запись файла (rw).

  • chmod u-w myfile3

    Для владельца файла (u) мы удаляем разрешение на изменение (w) файла.

  • chmod ug+x myfile2

    Разрешаем владельцу (u) и группе (g) запускать файл (x).

  • chmod u+x,g-w,o-r myfile3

    Это как раз тот случай, когда мы перечисляем владельцев через запятую и устанавливаем для них разрешения. Для владельца файла (u) мы разрешаем запуск файла, для группы (g) мы запрещаем изменять файл, для всех остальных (o) мы запрещаем читать файл.

Рекурсивное изменение прав доступа

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

chmod -R 644 Mydir

И еще один момент. Если пользователь не является владельцем файла, но ему нужно изменить права доступа у данного файла, то команду chmod необходимо выполнять с использованием sudo, например:

sudo chmod 644 file

Видео-обзор команды chmod