По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Самые фундаментальные навыки, которые нужно освоить инженеру, работающему с Linux - это перемещение по файловой системе и понимание того, что вас окружает. В этом разделе мы обсудим инструменты, которые позволят вам это сделать. Разберем базовые команды с примерами. pwd Когда вы входите на свой сервер, вы обычно попадаете в домашний каталог своей учетной записи. Домашний каталог - это каталог, предназначенный для хранения файлов и создания каталогов вашим пользователем. Чтобы узнать, где находится ваш домашний каталог по отношению к остальной файловой системе, вы можете использовать команду pwd. Эта команда отображает каталог, в котором мы сейчас находимся: pwd Вы должны получить обратно информацию, которая выглядит следующим образом: /home/demo Домашний каталог назван в честь учетной записи пользователя, поэтому в приведенном выше примере значение будет, если бы вы вошли на сервер с учетной записью под названием demo. Этот каталог находится в каталоге с именем /home, который сам находится в каталоге верхнего уровня, который называется root, но представлен одинарной косой чертой /. ls Теперь, когда вы знаете, как отображать каталог, в котором вы находитесь, мы можем просматривать содержимое каталога. Пока в нашем каталоге ничего нет, поэтому мы перейдем в другой, более насыщенный каталог для изучения. Введите в терминале следующее, чтобы перейти в каталог /usr/share. cd /usr/share После этого используем pwd, чтобы проверить, что мы успешно переехали: /usr/share Теперь, когда мы находимся в новом каталоге, давайте посмотрим, что внутри. Для этого мы введем команду ls: adduser groff pam-configs applications grub perl apport grub-gfxpayload-lists perl5 apps hal pixmaps apt i18n pkgconfig aptitude icons polkit-1 apt-xapian-index info popularity-contest . . . Как видите, в этом каталоге много элементов. Мы можем добавить в команду несколько необязательных флагов, чтобы изменить поведение. Например, чтобы перечислить все содержимое в расширенной форме, мы можем использовать флаг -l (для «длинного» вывода): total 440 drwxr-xr-x 2 root root 4096 Apr 17 2021 adduser drwxr-xr-x 2 root root 4096 Sep 24 19:11 applications drwxr-xr-x 6 root root 4096 Oct 9 18:16 apport drwxr-xr-x 3 root root 4096 Apr 17 2021 apps drwxr-xr-x 2 root root 4096 Oct 9 18:15 apt drwxr-xr-x 2 root root 4096 Apr 17 2021 aptitude drwxr-xr-x 4 root root 4096 Apr 17 2021 apt-xapian-index drwxr-xr-x 2 root root 4096 Apr 17 2021 awk . . . Этот вид дает нам много информации, большая часть которой выглядит довольно необычно. Первый блок описывает тип файла (если в первом столбце стоит d, это каталог, если -, это обычный файл) и разрешения. Каждый последующий столбец, разделенный пробелом, описывает количество жестких ссылок, владельца, владельца группы, размер элемента, время последнего изменения и имя элемента. Вы можете просмотреть эту информацию с помощью флага -l команды ls. Чтобы получить список всех файлов, включая скрытые файлы и каталоги, вы можете добавить флаг -a. Поскольку в каталоге /usr/share нет настоящих скрытых файлов, давайте вернемся в наш домашний каталог и попробуем эту команду. Вернуться в домашний каталог можно набрав cd без аргументов. После этого выполним команду ls -a: . .. .bash_logout .bashrc .profile Как видите, в этом выводе есть три скрытых файла вместе с . и .., которые являются специальными индикаторами. Часто файлы конфигурации хранятся как скрытые файлы, как здесь. Для записей с точками и двойными точками это не совсем каталоги, а встроенные методы обращения к связанным каталогам. Одиночная точка указывает текущий каталог, а двойная точка указывает родительский каталог этого каталога. По умолчанию ls выводит список содержимого текущего каталога. Однако мы можем передать имя любого каталога, содержимое которого мы хотели бы видеть, в конце команды. Например, мы можем просмотреть содержимое каталога с именем /etc, доступного во всех системах Linux, набрав: ls /etc Получим вывод: acpi fstab magic rc.local adduser.conf fstab.d magic.mime rc.local.orig aliases fuse.conf mailcap rcS.d aliases.db gai.conf mailcap.order reportbug.conf alternatives groff mailname resolvconf anacrontab group mail.rc resolv.conf apm group- manpath.config rmt . . . cd Мы уже сделали два перемещения каталога, чтобы продемонстрировать некоторые свойства ls. Давайте подробнее рассмотрим команду здесь. Начните с возврата в каталог /usr/share, набрав следующее: cd /usr/share Это пример изменения каталога путем указания абсолютного пути. В Linux каждый файл и каталог находится в самом верхнем каталоге, который называется «корневым» (root), но обозначается одинарной косой чертой в начале пути /. Абсолютный путь указывает расположение каталога по отношению к этому каталогу верхнего уровня. Это позволяет нам однозначно обращаться к каталогам из любого места файловой системы. Каждый абсолютный путь должен начинаться с косой черты. Альтернативой является использование относительных путей. Относительные пути относятся к каталогам относительно текущего каталога. Для каталогов, близких к текущему каталогу в иерархии, это обычно проще и короче. На любой каталог в текущем каталоге можно ссылаться по имени без косой черты в начале. Мы можем перейти в каталог locale в /usr/share из нашего текущего местоположения, набрав: cd locale Мы также можем переместиться на несколько уровней каталогов с относительными путями, указав часть пути, которая идет после пути к текущему каталогу. Отсюда мы можем перейти в каталог LC_MESSAGES в каталоге en, набрав: cd en/LC_MESSAGES Для возврата к родительскому элементу текущего каталога мы используем специальный индикатор с двумя точками, о котором мы говорили ранее. Например, теперь мы находимся в каталоге /usr/share/locale/en/LC_MESSAGES. Чтобы подняться на один уровень вверх, мы можем ввести: cd .. Это приведет нас в каталог /usr/share/locale/en. Мы можем вернуться в наш предыдущий каталог, набрав: cd - Шорткат, который вы видели ранее, который всегда будет возвращать вас в ваш домашний каталог - это использовать cd без указания каталога: cd
img
Всем привет! Сегодня мы поговорим о такой функции FreePBX как перехват вызова (Call Pickup). Эта функция позволяет перехватывать вызовы, которые приходят на другие телефоны, состоящие в одной группе перехвата. То есть вы можете перехватить звонок, направленный вашему коллеге, которого нет на рабочем месте и самостоятельно поговорить со звонившем, не потеряв при этом звонок, и не заставляя зря ждать на трубке. Как это сделать? Очень просто, и сейчас мы вам это расскажем! Настройка В веб-интерфейсе FreePBX переходим в раздел Applications → Extensions и заходим в настройки extension’a, во вкладку Advanced. Тут листаем вниз и находим две строки Call Groups и Pickup Groups. Вот они-то нам и нужны. Что они значат? Call Groups – это группа перехвата, в которую входит данный Extension. Устройство может входить сразу в несколько групп. Pickup Groups – это поле указывает устройства каких групп мы можем перехватывать, и здесь тоже можно указать несколько групп. Чтобы перехватывать вызов не обязательно находиться в группе, достаточно чтобы она была указана в Pickup Groups. Что дальше? Теперь нужно дождаться, когда придет звонок на телефон из группы перехвата и в самый ответственный момент набрать *8 и вы сможете перехватить входящий вызов себе. Это Feature Code, который можно повесить на кнопку быстрого вызова, и перехватывать звонки еще быстрее. Но это еще не все! Бывает, когда нужно очень-очень сильно перехватить входящий вызов, но телефон, на который он приходит не находиться в доступных группах перехвата или они не настроены вовсе. Для этого нужно набрать волшебную комбинацию - **номер_телефона. Например: **1234. Всего две звёздочки, номер телефона и вы на коне!
img
Перед началом, советуем почитать материал про плоскость управления. Топология - это набор связей (или ребер) и узлов, которые описывают всю сеть. Обычно топология описывается и рисуется как граф, но она также может быть представлена в структуре данных, предназначенной для использования машинами, или в дереве, которое обычно предназначено для использования людьми. Топологическую информацию можно обобщить, просто сделав так, чтобы пункты назначения, которые физически (или виртуально) соединены на расстоянии нескольких прыжков, казались непосредственно присоединенными к локальному узлу, а затем удалив информацию о связях и узлах в любой маршрутной информации, переносимой в плоскости управления, с точки суммирования. Рисунок 4 иллюстрирует эту концепцию. Изучение топологии Казалось бы, достаточно просто узнать о топологии сети: изучить подключенные каналы передачи данных. Однако то, что кажется простым в сетях, часто оказывается сложным. Изучение локального интерфейса может рассказать вам о канале, но не о других сетевых устройствах, подключенных к этому каналу. Кроме того, даже если вы можете обнаружить другое сетевое устройство, работающее с той же плоскостью управления по определенному каналу, это не означает, что другое устройство может вас обнаружить. Таким образом, необходимо изучить несколько вопросов. Обнаружение других сетевых устройств Если маршрутизаторы A, B и C подключены к одному каналу, как показано на рисунке 5, какие механизмы они могут использовать для обнаружения друг друга, а также для обмена информацией о своих возможностях? Первое, что следует отметить в отношении сети, показанной в левой части рисунка 5, - это то, что интерфейсы не соответствуют соседям. Фактические отношения соседей показаны в правой части рисунка 5. У каждого маршрутизатора в этой сети есть два соседа, но только один интерфейс. Это показывает, что плоскость управления не может использовать информацию об интерфейсе для обнаружения соседей. Должен быть какой-то другой механизм, который плоскость управления может использовать для поиска соседей. Ручная настройка - одно из широко распространенных решений этой проблемы. В частности, в плоскостях управления, предназначенных для перекрытия другой плоскости управления, или плоскостях управления, предназначенных для построения отношений соседства через несколько маршрутизируемых переходов по сети, ручная настройка часто является самым простым доступным механизмом. С точки зрения сложности, ручная настройка очень мало добавляет к самому протоколу. Например, нет необходимости в какой-либо форме многоадресного объявления соседей. С другой стороны, ручная настройка соседей требует настройки информации о соседях, что увеличивает сложность с точки зрения конфигурации. В сети, показанной на рисунке 5, маршрутизатор A должен иметь отношения соседства, настроенные с помощью B и C, маршрутизатор B должен иметь отношения соседства, настроенные с помощью A и C, а маршрутизатор C должен иметь отношения соседства, настроенные с помощью A и B. Даже если настройка соседей автоматизирована, ручная настройка углубляет и расширяет поверхности взаимодействия между плоскостями управления и контроля. Определение соседей из маршрутных объявлений - это решение, которое когда-то было широко распространено, но стало менее распространенным. В этой схеме каждое устройство периодически объявляет информацию о доступности и / или топологии. Когда маршрутизатор впервые получает информацию о маршрутизации от другого устройства, он добавляет удаленное устройство в локальную таблицу соседей. Пока соседнее устройство продолжает отправлять информацию о маршрутизации на регулярной основе, отношения между соседями будут считаться активными или активными. При выводе соседей из объявлений о маршрутизации важно иметь возможность определить, когда сосед вышел из строя (чтобы информация о достижимости и топологии, полученная от соседа, могла быть удалена из любых локальных таблиц). Наиболее распространенный способ решения этой проблемы - использование пары таймеров: таймера задержки или отключения и таймера обновления или объявления. Пока сосед отправляет обновление или объявление в пределах таймера отключения или задержки, он считается включенным или активным. Если весь "мертвый" период проходит без получения каких-либо обновлений, сосед считается "мертвым", и предпринимаются некоторые действия, чтобы либо проверить информацию о топологии и доступности, полученную от соседа, либо он просто удаляется из таблицы. Нормальная взаимосвязь между таймером отключения и таймером обновления составляет 3× - таймер отключения установлен на трехкратное значение таймера обновления. Следовательно, если сосед не отправляет три подряд обновления или объявления, таймер бездействия активируется и начинает обработку неработающего соседа. Явные приветствия являются наиболее распространенным механизмом обнаружения соседей. Пакеты приветствия передаются на основе таймера приветствия, и сосед считается "мертвым", если приветствие не получено в течение интервала таймера ожидания или объявления. Это похоже на таймеры dead и update, используемые для вывода соседей из объявлений маршрутизации. Приветствия обычно содержат информацию о соседней системе, такую как поддерживаемые возможности, идентификаторы уровня устройства и т. д. Централизованная регистрация - это еще один механизм, который иногда используется для обнаружения и распространения информации о соседних устройствах. Каждое устройство, подключенное к сети, будет отправлять информацию о себе в какую-либо службу и, в свою очередь, узнавать о других устройствах, подключенных к сети, из этой централизованной службы. Конечно, эту централизованную службу нужно каким-то образом обнаружить, что обычно осуществляется с помощью одного из других упомянутых механизмов. Обнаружение двусторонней связи В плоскостях управления с более сложными процессами формирования смежности - особенно протоколами, которые полагаются на приветствия для формирования отношений соседства - важно определить, могут ли два маршрутизатора видеть друг друга (осуществлять двустороннюю связь), прежде чем формировать отношения. Обеспечение двусторонней связи не только предотвращает проникновение однонаправленных каналов в таблицу пересылки, но также предотвращает постоянный цикл формирования соседей - обнаружение нового соседа, построение правильных локальных таблиц, объявление о доступности новому соседу, тайм-аут ожидания hello или другую информацию, удаление соседа или поиск нового соседа. Существует три основных варианта управления двусторонним подключением между сетевыми устройствами. Не утруждайте себя проверкой двусторонней связи. Некоторые протоколы не пытаются определить, существует ли двусторонняя связь между сетевыми устройствами в плоскости управления, а скорее предполагают, что сосед, от которого принимаются пакеты, также должен быть доступен. Перенос списка доступных соседей, услышанных на линии связи. Для протоколов, которые используют приветствия для обнаружения соседей и поддержания работоспособности, перенос списка доступных соседей по одному и тому же каналу является распространенным методом обеспечения двусторонней связи. Рисунок 6 иллюстрирует это. На рисунке 6 предположим, что маршрутизатор A включен раньше B. В этом случае: A отправит приветствия с пустым списком соседей, поскольку он не получил приветствия от любого другого сетевого устройства по каналу. Когда B включен, он получит приветствие A и, следовательно, включит A в список соседей, которые он слышал в своих hello пакетах. Когда A получает приветствие B, он, в свою очередь, включает B в свой список "услышанных" соседей в своих пакетах приветствия. Когда и A, и B сообщают друг о друге в своих списках соседей, которые "слышно от", оба маршрутизатора могут быть уверены, что двустороннее соединение установлено. Этот процесс часто называют трехсторонним рукопожатием, состоящим из трех шагов: A должен послать привет B, чтобы B мог включить A в свой список соседей. B должен получить приветствие A и включить A в свой список соседей. A должен получить приветствие B с самим собой (A) в списке соседей B. Положитесь на базовый транспортный протокол. Наконец, плоскости управления могут полагаться на базовый транспортный механизм для обеспечения двусторонней связи. Это необычное решение, но есть некоторые широко распространенные решения. Например, протокол Border Gateway Protocol (BGP), опирается на протокол управления передачей (TCP), чтобы обеспечить двустороннюю связь между спикерами BGP. Определение максимального размера передаваемого блока (MTU) Для плоскости управления часто бывает полезно выйти за рамки простой проверки двусторонней связи. Многие плоскости управления также проверяют, чтобы максимальный размер передаваемого блока (MTU) на обоих интерфейсах канала был настроен с одинаковым значением MTU. На рисунке 7 показана проблема, решаемая с помощью проверки MTU на уровне канала в плоскости управления. В ситуации, когда MTU не совпадает между двумя интерфейсами на одном канале, возможно, что соседние отношения сформируются, но маршрутизация и другая информация не будут передаваться между сетевыми устройствами. Хотя многие протоколы имеют некоторый механизм для предотвращения использования информации о результирующих однонаправленных каналах при вычислении путей без петель в сети, все же полезно обнаруживать эту ситуацию, чтобы о ней можно было явным образом сообщить и исправить. Протоколы плоскости управления обычно используют несколько методов, чтобы либо явно обнаружить это условие, либо, по крайней мере, предотвратить начальные этапы формирования соседей. Протокол плоскости управления может включать локально настроенный MTU в поле в пакетах приветствия. Вместо того чтобы просто проверять наличие соседа во время трехстороннего рукопожатия, каждый маршрутизатор может также проверить, чтобы убедиться, что MTU на обоих концах линии связи совпадает, прежде чем добавлять новое обнаруженное сетевое устройство в качестве соседа. Другой вариант - добавить пакеты приветствия к MTU локального интерфейса. Если дополненный пакет приветствия максимального размера не получен каким-либо другим устройством в канале связи, начальные этапы отношений соседства не будут завершены. Трехстороннее рукопожатие не может быть выполнено, если оба устройства не получают пакеты приветствия друг друга. Наконец, протокол плоскости управления может полагаться на базовый транспорт для регулирования размеров пакетов, чтобы коммуникационные устройства могли их принимать. Этот механизм в основном используется в плоскостях управления, предназначенных для наложения какой-либо другой плоскости управления, особенно в случае междоменной маршрутизации и виртуализации сети. Плоскости управления наложением часто полагаются на обнаружение MTU пути (Path MTU) для обеспечения точного MTU между двумя устройствами, подключенными через несколько переходов. Сам размер MTU может оказать большое влияние на производительность плоскости управления с точки зрения ее скорости сходимости. Например, предположим, что протокол должен передавать информацию, описывающую 500 000 пунктов назначения по многопоточному каналу с задержкой 500 мс, и для описания каждого пункта назначения требуется 512 бит: Если MTU меньше 1000 бит, для плоскости управления потребуется 500 000 циклов туда и обратно для обмена всей базой данных доступных пунктов назначения, или около 500 000 × 500 мс, что составляет 250 000 секунд или около 70 часов. Если MTU составляет 1500 октетов или 12000 битов, плоскости управления потребуется около 21000 циклов туда и обратно для описания всей базы данных доступных пунктов назначения, или около 21000 × 500 мс, что составляет около 175 минут. Важность сжатия такой базы данных с использованием какого-либо оконного механизма для сокращения числа полных обходов, необходимых для обмена информацией о достижимости, и увеличения MTU вполне очевидна. Далее почитайте материал о том, как происходит обнаружение соседей в сетях.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59