По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В данной статье мы рассмотрим стандартный демон логирования syslog. Он немного устарел, но с ним разобраться стоит потому, что все современные системы логирования построены по такому же принципу и имеют лишь небольшие отличия и небольшие улучшения, немного расширенный функционал. Система логирования в любой операционной системе играет важнейшую роль. Это связано с тем, что с помощью нее осуществляется разбор ошибок, поиск неисправностей и восстановление работоспособности сервисов. Очень часто бывает так что операционная система или сервисы ведут себя не так, как мы ожидаем от них и лучший способ разобраться с проблемой заглянуть в журнал логирования. Мы разберем, как настраивается стандартный демон syslog, понятия источников событий и приоритета событий. В операционной системе Windows тоже есть данный функционал, но развит не так хорошо, как в операционных системах Linux. Итак, стандарт конфигурации событий выглядит следующим образом: Мы пишем для каждого источника события, источник, приоритет и куда такие события отправлять, т.е действие. Формат: источник.приоритет назначение Источников в операционной системе Linux может быть много, более 20 штук. Самые популярные представлены на картинке. В операционной системе Windows, есть 3 уровня приоритетов - информационные, предупреждения и ошибка. У операционной системы Linux приоритетов 8 штук, разберем их: Emergency – чрезвычайная ситуация Alert – тревога Critical – критическое событие Error – ошибка Warning – предупреждение Notice – замечание Info – информационное сообщение Debug – отладочное событие И последняя колонка на картинке – это примеры куда мы можем записывать те или иные события: Файл – мы можем записывать в журнал Консоль – мы можем выводить в консоль Конвейер – мы можем передавать с помощью конвейера сразу следующей команде Удаленная система – можем передавать удаленной системе Группа пользователей – можем передавать группе пользователей К сожалению, открыть файл cat /etc/syslog.conf (CentOS 5) не получится, т.к является устаревшим, но подходит для объяснения принципа настройки. Например современный rsyslog, настраивается практически идентично в разных системах, находится в разных местах на виртуальной машине, в Ubuntu 20.04 расположен в /etc/rsyslog.d/ 50-default.conf Примерно таким образом выглядит конфигурационный файл. В данном файле все настройки демона. Мы можем увидеть, что все события ядра kern.* выводятся в файл /var/log/kern.log. Символ * говорит о том, что события с любым приоритетом. Мы можем изменить указав явно приоритет например kern.info или kern.debug, можем так же изменить куда выводить например в консоль /dev/console. У нас в файле есть строчка закомментированная *.info; *.=notice;*.=warn; - отправлять в /var/log/messages, и если мы ее раскомментируем, то данные все события будут уходить в указанный файл. Есть строчка auth,authpriv.* /var/log/auth.log, которая означает, что все события авторизации, в том числе и с вводом паролей будут записываться в отдельный файл /var/log/auth.log, это сделано специально, в целях информационной безопасности. На отдельный файл проще поставить особые права доступа. Есть в файле еще интересная строчка mail.* -/var/log/mail.log, которая говорит нам о том, что все почтовые события будут записываться в журнал /var/log/mail.log. Обратите внимание, что некоторые файлы имеет значок - перед указанием пути. Этот символ указывает демону на то, что после использования данного журнала, не нужно выгружать из оперативной памяти. Это сделано для того, чтобы более оперативно работать с журналами и в оперативной памяти всегда есть кэш данного файла. Есть и минус такого подхода. Если у нас случится паника ядра, т.е аппаратная ошибка и система вылетит, то те события, которые находились в оперативке, не успеют сбросится на жесткий диск и мы их потеряем. Файлы логов можно читать командой cat, правда не все форматы и не все логи, но популярными являются утилиты less и tail. Причем утилита tail с ключем -f позволяет, читать файл лога в реальном времени. Пользоваться утилитами достаточно просто: less [опции] [файл_лога] tail [опции] [файл_лога] Но работая с данными утилитами не все форматы можно прочитать. Можно порекомендовать для чтения логов утилиту, которая сможет прочесть практически любой формат лога - lnav. Устанавливается стандартно - apt install lnav -y. Синтаксис утилиты - lnsv [опции] [файл_лога] lnav dmesg Получаем вот такой красивый вывод команды. Дополнительно утилита раскрашивает лог для удобства чтения.
img
Чтобы начать наше знакомство с регулярными выражениями, давайте взглянем на них поближе. Регулярные выражения являются шаблоном, который выполняет сравнение последовательности текста слева направо. Выражние "регулярные выражения" используют не очень часто, чаще всего применяют "regex" либо "regexp". В общем и целом, регулярные выражения предназначены для изменения текста в строке, а также они выполняют проверку некоторых форм, и т.д. К примеру, у вас в разработке ведется некое приложение, и вам понадобилось выявить какие-то правила, по которым юзер уже будет выбирать собственное наименование. Важным условием будет ограничение в количестве символов и написании самого имени, которое должно состоять из букв, цифр, дефиса и нижнего подчеркивания. Для того, чтобы решить данную задачу, можно воспользоваться представленным ниже решением: john_doe; jo-hn_doe; john12_as. Но если наименование юзера будет состоять из прописной буквы, например Jo, то оно никак не будет соответствовать данному условию. Основные совпадения Регулярные выражения являются шаблоном, который состоит из неких символов, с помощью которого разработчики выполняют поиск в тексте. К примеру, условие "The" будет означать букву "t", за которой идет "h", затем - "e". "the" => The fat cat sat onthemat. Метасимволы Строительными блоками регулярных выражений являются метасимволы, которые являются независимыми, и обычно используются любыми способами. Некоторое количество из них могут иметь особое предназначение, поэтому они выделяются квадратными скобками. Ниже вы можете ознакомиться с метасимволами. Метасимволы Описание . Любой единичный символ, исключая новую строку. [ ] Поиск набора символов, помещенных в скобки. [^ ] Отрицательный класс символов. Соответствует любому символу, не заключенному в квадратные скобки. * 0 или больше повторений предшествующего символа. + 1 или больше повторений предшествующего символа. ? Делает предшествующий символ опциональным. {n,m} Возвращает как минимум "n", но не более "m" повторений предшествующего символа. (xyz) Находит группу символа в строго заданном порядке. | Разделяет допустимые варианты. Исключает следующий символ. Позволяет искать служебные символы [ ] ( ) { } . * + ? ^ $ | ^ Находит начало введенной строки. $ Находит конец введенной строки. Сокращения для обозначения символов В регулярных выражениях также существуют некоторые сокращения для символов, что в несколько раз повышает комфортность при работе. Ниже приведен список сокращений: Сокращение Описание . Любой символ, кроме новой строки w Соответствует буквенно-цифровым символам: [a-zA-Z0-9_] W Соответствует не буквенно-цифровым символам: [^w] d Соответствует цифрам: [0-9] D Соответствует нецифровым знакам: [^d] s Соответствует знаку пробела: [ f p{Z}] S Соответствует символам без пробела: [^s] Look Around Позиционная проверка Look Around представляет собой набор некоторых групп, которые предназначены для поиска в тексте, но сами в него не входят. Позиционная проверка используется в том случае, если в определенном условии существует шаблон, который либо предшествует, либо идет следующим. Символ Описание ?= Положительный Lookahead ?! Отрицательный Lookahead ?<= Положительный Lookbehind ? Отрицательный Lookbehind Флаги Флаги также часто называют модификаторами, так как они могут изменять выходные данные регулярного выражения. Флаги ниже являются неотъемлемой частью и могут использоваться в любом порядке или комбинации регулярных выражений. Флаг Описание i Нечувствительность к регистру: делает выражение нечувствительным к регистру. g Глобальный поиск: поиск шаблона во всей строке ввода. m Многострочность: анкер метасимвола работает в каждой строке. Жадные vs. ленивые выражения По умолчанию регулярные выражения выполняются благодаря "жадным" квантификаторам, им соответствует максимально длинная строка из всех возможных. "/(.*at)/" => The fat cat sat on the mat. Чтобы получить "ленивое" выражение, нужно использовать знак "?". Так будет получена максимально короткая строка. "/(.*?at)/" => The fat cat sat on the mat.
img
В сегодняшней статье мы еще раз коснемся сетей ISDN (Integrated Services for Digital Network). Как известно, ISDN – это набор протоколов, который объединяет цифровую телефонию и сервисы передачи данных. Основная идея ISDN – преобразование телефонной сети в цифровую форму для передачи аудио, видео и текстовых сообщений через существующие телефонные линии. Конечная цель ISDN – формирования Глобальной сети (WAN), которая обеспечивает универсальное непрерывное соединение через цифровую среду. В ISDN существует два типа интерфейсов для организации доступа к ресурсам сети – PRI (Primary Rate Interface) и BRI Basic Rate Interface, котором и пойдет речь. Итак, BRI – это тип интерфейса в сети ISDN, обеспечивающий предоставление двух основных цифровых каналов (ОЦК) по 64 кбит/с каждый, именуемых также каналами “B”, и однополосных канал, выделенный для передачи цифровой сигнализации со скоростью 16 кбит/с, который называют каналом “D”. Наиболее распространенный тип цифровой сигнализации, применяемый в сетях ISDN - DSS1 (Euro ISDN). Таким образом, интерфейс доступа BRI идентифицируют как 2B+D, а максимальная скорость передачи по данному интерфейсу составляет 128 + 16 = 144 кбит/с. Стоит отметить, что интерфейс BRI предназначен в первую очередь для использования в абонентских линиях, аналогичных тем, которые уже давно используются для голосовой телефонной связи. Предоставляется в основном для абонентов жилищного сектора и малых офисов. С физической точки зрения, интерфейс BRI делится на несколько частей. 1) Прокладка кабеля непосредственно от ISDN терминала до сетевого окончания NT (Network Termination) - S/T интерфейс (S0) Данный процесс описывается в рекомендации I.430, разработанной Международным Союзом Электросвязи (ITU). Интерфейс S/T использует 4 провода, одна пара выделяется под передачу (uplink), а другая под прием (downlink). Осуществляет полнодуплексный режим взаимодействия. Рекомендация I.430 описывает определение 48-битных пакетов, включая 16 бит от канала B1, 16 бит от канала B2, 4 бит от канала D, а также 12 бит, использующихся для нужд синхронизации. Эти пакеты отсылаются с частотой 4 КГц, в результате чего, общий битрейт 192 кбит/c, обеспечивает скорость передачи, перечисленных выше данных, с максимально возможной пропускной способностью – 144 кбит/c. Интерфейс S0 позволяет организовать соединение типа точка-точка или точка – множество точек. Максимальная длина – 900 м (точка-точка), 300 м (точка – множество точек) 2) Передача от сетевого окончания NT до центрального офиса – U интерфейс Интерфейс U использует два провода. Общий битрейт – 160 кбит/с; пропускная способность 144 кбит/с, 12 кбит/c выделяется для нужд синхронизации и 4 кбит/с для сигналов обслуживания. Сигналы от U интерфейса в точке отправки кодируются двумя способами модуляции, исходя их используемых стандартов в той или иной стране. Так в Северной Америке, Италии и Швейцарии используется механизм 2B1Q, и 4B3T в остальных странах. В зависимости от применяемой длины кабеля существует три разновидности U интерфейсов – UpN, Up0 и Uk0 . Интерфейс Uk0 использует один пару проводов с эхоподавлением для длинного кабеля последней мили между АТС и сетевым окончанием NT . Максимальная длина этого промежутка BRI составляет от 4 до 8 км.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59