По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Символические ссылки используются в Linux для управления файлами и их сопоставления. В этом руководстве вы узнаете, как использовать команду ln для создания символических ссылок в Linux. Команда Ln для создания символических ссылок Чтобы использовать команду ln, откройте окно терминала и введите команду в следующем формате: ln [-sf] [source] [destination] По умолчанию команда ln создает hard link (жесткая ссылка). Используйте параметр -s, чтобы создать символическую ссылку, она же soft link. Параметр -f заставит команду перезаписать уже существующий файл. Source - это файл или каталог, на который делается ссылка. Destination - это место для сохранения ссылки - если это поле не заполнено, символическая ссылка сохраняется в текущем рабочем каталоге. Например, создайте символическую ссылку с помощью: ln -s test_file.txt link_file.txt Это создает символическую ссылку link file.text, которая указывает на testfile.txt. Чтобы проверить, создана ли символическая ссылка, используйте команду ls: ls -l link_file.txt Создать символическую ссылку на каталог Linux Символическая ссылка может относиться к каталогу. Чтобы создать символическую ссылку на каталог в Linux: ln -s /mnt/external_drive/stock_photos ~/stock_photos В этом примере создается символическая ссылка с именем stock_photos в домашнем каталоге ~ /. Ссылка относится к каталогу stock_photos на внешнем диске external_drive. Примечание. Если система подключена к другому компьютеру, например к корпоративной сети или удаленному серверу, символические ссылки могут быть связаны с ресурсами в этих удаленных системах. Принудительно перезаписать символические ссылки Вы можете получить сообщение об ошибке, как показано на изображении ниже: Сообщение об ошибке означает, что в месте назначения уже есть файл с именем link_file.txt. Используйте параметр -f, чтобы система перезаписывала целевую ссылку: ln -sf test_file.txt link_file.txt Примечание. Использование опции -f навсегда удалит существующий файл. Удаление ссылок Если исходный файл будет перемещен, удален или станет недоступным (например, сервер отключится), ссылку нельзя будет использовать. Чтобы удалить символическую ссылку, используйте команду rm (remove) или unlink: rm link_file.txt unlink link_file.txt Soft Links против Hard Links Команду ln можно использовать для создания двух разных типов ссылок: Hard Links (жесткие ссылки) Soft Links (символические или мягкие ссылки) Символические ссылки (Soft Links) Символическая ссылка, иногда называемая мягкой ссылкой или soft link, указывает на расположение или путь к исходному файлу. Она работает как гиперссылка в Интернете. Вот несколько важных аспектов символической ссылки: Если файл символьной ссылки удаляется, исходные данные остаются. Если исходный файл будет перемещен или удален, символическая ссылка работать не будет. Символическая ссылка может относиться к файлу в другой файловой системе. Символические ссылки часто используются для быстрого доступа к часто используемым файлам без ввода всего местоположения. Жесткие ссылки (Hard Links) Когда файл хранится на жестком диске, происходит несколько вещей: Данные физически записываются на диск. Создается справочный файл, называемый индексом, который указывает на расположение данных. Имя файла создается для ссылки на данные inode. Жесткая ссылка работает путем создания другого имени файла, которое ссылается на данные inode исходного файла. На практике это похоже на создание копии файла. Вот несколько важных аспектов жестких ссылок: Если исходный файл удален, к данным файла все равно можно будет получить доступ через другие жесткие ссылки. Если исходный файл перемещен, жесткие ссылки по-прежнему работают. Жесткая ссылка может относиться только к файлу в той же файловой системе. Если количество жестких ссылок равно нулю, индексный дескриптор и данные файла удаляются безвозвратно.
img
В некоторых компаниях существует сменный график работы операторов. Как правило, в этом случае, они делят между собой рабочее место. То есть, когда приходит один оператор, то он вводит на общей рабочей станции свои учётные данные и работает под своей учётной записью, а когда приходит другой оператор - то делает то же самое, но под собственной учётной записью. Таким образом, компания экономит на необходимости организации отдельного рабочего места под каждого сотрудника. Кстати, с IP-телефоном можно провести точно такой же трюк и для этого существует специальное понятие - Hot Desking. Как это сделать на IP-АТС Asterisk с помощью графической оболочки FreePBX, мы сейчас расскажем в этой статье. Итак, для того чтобы настроить эту фичу, нам сначала нужно разделить привычный нам модуль Extensions на два отдельных модуля Devices и Users. Для этого открываем Advanced Settings, ищем опцию User & Devices Mode и меняем её значение на deviceanduser вместо extensions. Не забываем нажать Submit и Apply Config Отлично! Теперь, если мы посмотрим в раздел Applications, то увидим там два новых модуля - Devices и чуть пониже - Users: Рассмотрим модуль Devices. Данный модуль теперь управляет сущностями устройств, то есть – телефонов, софтфонов и других клиентов. Как видите, здесь уже находятся внутренние номера, которые были созданы ещё в модуле Extensions: Однако теперь, доступный для настройки функционал немного изменился: По умолчанию, на данном устройстве есть жёстко привязанный пользователь (в данном случае - 175. Мы рассмотрим его настройки в модуле Users). В такой конфигурации на данное устройство нельзя залогиниться с учётными данными другого пользователя. Чтобы это изменить, нужно поменять значение опции Device Type с Fixed на Adhoc. Дефолтного пользователя, который будет по умолчанию залогинен на данном устройстве, можно оставить без изменения, а можно поставить: Теперь нужно сделать настройки для пользователей, которые будут логиниться на данное устройство в модуле Users. Как видите, пользователи также остались от тех, которые были созданы при модуле Extensions: Для начала сделаем настройки для дефолтного пользователя на устройстве - 175. Самое главное здесь – это задать пароль (а точнее даже PIN) пользователя, чтобы функционал аутентификации заработал на устройстве. Пользователь вручную будет вводить этот пароль на устройстве, поэтому в качестве пароля можно указать только цифры: Один настроенный пользователь нам ничего не даст, чтобы организовать сменную работу на устройстве, нам нужно их как минимум два. Для этого, в модуле Users, создадим ещё одного пользователя, который не будет привязан ни к какому устройству и зададим для него PIN код: Супер, переходим к самому интересному. У нас есть софтфон DrayTek, который выступает в роли устройства с номером 175. По умолчанию, на нём сидит пользователь Алексей Добронравов с внутренним номером 175. Но сегодня в смену вступает созданный ранее пользователь - Крипто Виталий с внутренним номером 199. Чтобы залогиниться на устройстве, Крипто Виталию нужно: Набрать Feature Code - *11; Он услышит в трубке предложение набрать свой внутренний номер (199) и нажать #; Если такой внутренний номер существует, то ему будет предложено ввести пароль (PIN код) и нажать #; Если пароль будет введён верно, то пользователя поблагодарят и сообщат, что оператор зарегистрирован. Для того, чтобы удалить регистрацию, используйте фича код - *12 Сногсшибательно! Теперь на нашем устройстве (софтфоне) зарегистрирован другой пользователь (Крипто Виталий) и он может совершать звонки! Давайте проверим это, позвонив на другой внутренний номер, например - 188, на котором у нас зарегистрирован стационарный телефон: Profit! Попробуйте реализовать этот функционал у себя и сократите затраты на организацию дополнительных мест!
img
Виртуализация часто применяется для поиска более простого способа решения некоторых проблем, отмеченных в начальных статьях этой темы, таких как разделение трафика. Как и все в мире сетевой инженерии, здесь есть компромиссы. На самом деле, если вы не нашли компромисс, вы плохо искали. В этом разделе будут рассмотрены некоторые (хотя, конечно, не все) различные компромиссы сложности в области виртуализации сети. Основой этого обсуждения будет триада компромиссов сложности: Состояние: количество состояний и скорость, с которой изменяется состояние в сети (особенно в плоскости управления). Оптимизация: оптимальное использование сетевых ресурсов, включая такие вещи, как трафик, следующий по кратчайшему пути через сеть. Поверхность: количество слоев, глубина их взаимодействия и широта взаимодействия. Поверхности взаимодействия и группы связей общих рисков Каждая система виртуализации, когда-либо задуманная, реализованная и развернутая, создает в некотором роде общий риск. Например, рассмотрим одну линию, по которой передается несколько виртуальных каналов, каждый из которых передает трафик. Должно быть очевидным (на самом деле тривиальным) наблюдение, что в случае отказа одного физического канала произойдет сбой всех виртуальных каналов. Конечно, вы можете просто перенаправить виртуальные каналы на другой физический канал. Правильно? Может быть, а может и нет. Рисунок 1 иллюстрирует это. С точки зрения A и D, есть две линии, доступные через B и C, каждая из которых обеспечивает независимое соединение между хостом и сервером. В действительности, однако, и провайдер 1, и провайдер 2 приобрели виртуальные каналы через единственное соединение у провайдера 3. Когда единственное соединение в сети провайдера 3 выходит из строя, трафик может быть перенаправлен с основного пути через провайдера 1 на путь через провайдера. 2, но поскольку оба канала используют одну и ту же физическую инфраструктуру, ни одна из них не сможет передавать трафик. Говорят, что эти два звена в этой ситуации разделяют одну общую судьбу, потому что они являются частью Shared Risk Link Group (SRLG). Можно найти и обойти SRLG или ситуации с shared fate, но это усложняет плоскость управления и/или управление сетью. Например, невозможно обнаружить эти shared fate без ручного тестирования различных ситуаций отказа на физическом уровне или изучения сетевых карт, чтобы найти места, где несколько виртуальных каналов проходят по одному и тому же физическому каналу. В ситуации, описанной на рисунке 1, найти ситуацию с shared fate было бы почти невозможно, поскольку ни один из провайдеров, скорее всего, не скажет вам, что использует линию от второго провайдера, показанного на рисунке как провайдер 3, для предоставления услуг. Как только эти ситуации с shared fate обнаружены, необходимо предпринять некоторые действия, чтобы избежать серьезного сбоя в работе сети. Обычно для этого требуется либо вводить информацию в процесс проектирования, либо усложнять дизайн, либо вводить информацию в плоскость управления (см. RFC8001 в качестве примера типа сигнализации, необходимой для управления группами SRLG в плоскости управления, спроектированной трафиком). По сути, проблема сводится к следующему набору утверждений: Виртуализация - это форма абстракции. Абстракция удаляет информацию о состоянии сети с целью снижения сложности или предоставления услуг за счет реализации политики. Любое нетривиальное сокращение информации о состоянии сети так или иначе снизит оптимальное использование ресурсов. Единственным противодействием конечному состоянию из этих трех, является протекание информации через абстракцию, поэтому можно восстановить оптимальное использование ресурсов - в этом случае отказ одного канала не вызывает полного отказа потока трафика через сеть. Единственное решение, таким образом, - сделать абстракцию сквозной абстракцией, что снизит эффективность абстракции при контроле области действия состояния и реализации политики. Поверхности взаимодействия и наложенные плоскости управления В сетевой инженерии принято накладывать друг на друга два протокола маршрутизации или две плоскости управления. Хотя это не часто рассматривается как форма виртуализации, на самом деле это просто разделение состояния между двумя различными плоскостями управления для контроля количества состояний и скорости изменения состояний, чтобы уменьшить сложность обеих плоскостей управления. Это также часто встречается при запуске виртуальных наложений в сети, поскольку между головным и хвостовым узлами туннеля будет существовать нижележащая плоскость управления, обеспечивающая достижимость, и плоскость управления наложением, обеспечивающая достижимость в виртуальной топологии. Две наложенные друг на друга плоскости управления будут взаимодействовать иногда неожиданным образом. Для иллюстрации используется рисунок 2. На рисунке 2: Каждый маршрутизатор в сети, включая B, C, D и E, использует две плоскости управления (или, если это проще, протоколы маршрутизации, отсюда протокол 1 и протокол 2 на рисунке). Протокол 1 (оверлей) зависит от протокола 2 (базовый) для обеспечения доступности между маршрутизаторами, на которых работает протокол 1. Протокол 2 не содержит информации о подключенных устройствах, таких как A и F; вся эта информация передается в протоколе 1. Протокол 1 требует гораздо больше времени для схождения, чем протокол 2. Более простой путь от B к E проходит через C, а не через D. Учитывая этот набор протоколов, предположим, что C на рисунке 2 удален из сети, двум управляющим плоскостям разрешено сходиться, а затем C снова подключается к сети. Каков будет результат? Произойдет следующее: После удаления C сеть снова объединится с двумя путями в локальной таблице маршрутизации в B: F доступен через E. E доступен через D. После повторного подключения C к сети протокол 2 быстро сойдется. После повторной конвергенции протокола 2 лучший путь к E с точки зрения B будет через C. Следовательно, у B теперь будет два маршрута в локальной таблице маршрутизации: F доступен через E. E достижимо через C. B перейдет на новую информацию о маршрутизации и, следовательно, будет отправлять трафик к F через C до того, как протокол 1 сойдется, и, следовательно, до того, как C узнает о наилучшем пути к F. С момента, когда B начинает пересылку трафика, предназначенного для F в C, и момента, когда протокол 1 сойдется, трафик, предназначенный для F, будет отброшен. Это довольно простой пример неожиданного взаимодействия наложенных протоколов. Чтобы решить эту проблему, вам необходимо ввести информацию о состоянии конвергенции протокола 1 в протокол 2, или вы должны каким-то образом заставить два протокола сходиться одновременно. В любом случае вы по существу добавляете состояние обратно в два протокола, чтобы учесть их разницу во времени конвергенции, а также создавая поверхность взаимодействия между протоколами. Примечание: Этот пример описывает фактическое взаимодействие конвергенции между IS-IS и BGP, или протоколом Open Shortest Path First (OSPF) и BGP. Чтобы решить эту проблему, более быстрый протокол настроен на ожидание, пока BGP не сойдется, прежде чем устанавливать какие-либо маршруты в локальной таблице маршрутизации.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59