По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В данной статье обзорно рассмотрим, какие программные оболочки бывают их виды и основные консольные команды. Самых распространенных оболочек не много: The Bourne Shell - /bin/sh The Bourne again shell - /bin/bash The Korne shell - /bin/ksh The C shell - /bin/csh Tom’s C shell - /bin/tcsh Наиболее признанной и распространенной оболочкой является bash. Поэтому в дальнейшем и в данной статье мы будем рассматривать именно ее. Посмотрим несколько основных команд: cat вывод содержимого файла в консоль; cd переход в каталог; ls вывод содержимого каталога; echo вывод текста в консоль; touch - обновление времени редактирования файла, а так же данная команда позволяет нам создать новый файл; file справка по файлу; whatis справка по названию; history вывод истории команд; env вывод переменных среды; pwd текущий каталог; export задание переменной; unset - отключение переменной; Для начала можно посмотреть, какая оболочка используется в текущий момент. В большинстве случаев это будет оболочка bash, которая является самой популярной оболочкой и самой используемой. При помощи данной оболочки мы взаимодействуем с операционной системой. Это не просто командная строка, но, а также целая программируемая среда. Со своими сценариями, переменными, со своим синтаксисом, т.е все эти оболочки ведут себя по-разному. Увидеть какую оболочку использует наш конкретный дистрибутив мы можем, посмотрев файл /etc/passwd/ На картинке видно много пользователей, можно увидеть, что пользователь Jenkins использует оболочку /bin/bash/. Это нормальная ситуация для Ubuntu т. к. в данной операционной системе данная оболочка используется по умолчанию. Если нам необходимо мы можем посмотреть глобальные настройки данной оболочки, которые располагаются /etc/profile. В данном файле много настроек, но необходимо знать языки программирования для того, чтобы редактировать файл. Единственное, что интересует в рамках данной стати это PS1 строчки, которые показывают, как должна выглядеть строка-приглашение. Если мы посмотрим, строка приглашение выглядит имя пользователя, тильда, смотря где мы находимся перечисляет нам. Мы можем настроить, каждую новую строчку так, чтобы не показывал имя пользователя, показывал полный путь, относительный путь и еще много чего, хоть пусть туда время выводит. Это уже такая детальная настройка внешнего вида оболочки bash. Если мы перейдем в домашнюю директорию пользователя, то там мы можем найти файл .profile с локальными настройками командной оболочки. Файл в линуксе который начинается с точки, является скрытым. Посмотреть такие файлы можно командой ls a. Ну и посмотрим, что у данного файла есть внутри cat .profile Мы опять видим некий сценарий и ссылку на некий файл ~/.bashrc. В котором уже находятся настройки внешнего вида этой оболочки. Мы так же его можем посмотреть cat .bashrc. Здесь уже более понятные и расширенные настройки, например, сколько хранится история команд, каким шрифтом выделять что-то. Например, мы можем сделать, так чтобы оболочка выделяла путь к файлу определенным цветом, имя пользователя другим цветом и т.д. все это делается в данном файле. Синтаксис в данной статье мы не разбираем. Соответственно можно непосредственно в редакторе редактировать файл, а можно посылать команды, которые будут вносить изменения в данные файлы. Вернемся к вопросу базовых команд. Команда echo выводит информацию в консоль. Синтаксис просто набираем: echo hello и получим в консоли hello. Т.е. командная оболочка, распознает первое слова как команду, а второе как аргумент данной команды. Если нам необходимо вывести в консоль несколько слов подряд, то их необходимо взять в кавычки. Можно выполнить две команды одна за другой, например, echo hello; ls. В данном случае сначала напечатается слово hello, а затем выведется список файлов. Мы можем создать свою команду, привязать команду к какому-нибудь псевдониму внутри оболочки т.е. создать такие ссылки и привязать действующую команду с новой. И новая команда уже будет вызывать команду echo. Для примера возьмем команду storm. При попытке ввода оболочка не понимает и начинает искать команду или исполняемый пакет. Но мы можем создать такой файлик, который будет что-то делать. Есть такая команда cat, она используется для вывода текста из файла на экран. Но она может действовать и в обратную сторону с экрана текст передавать в файл, для этого необходимо изменить направление передачи, например, cat> storm. И теперь все, что мы введем будет внесено в файл storm, опять же для примера echo и случайный набор букв. Затем нажимаем ctrl+c и прерываем ввод. Если мы посмотрим, что сохранилось в файлике storm то мы увидим, все то, что ввели в консоль. Далее сделаем файл storm исполняемым chmod +x storm. Можно видеть, что теперь при просмотре списка файлов командой ls данный файл подсвечивается зеленым, согласно настройкам программной оболочки. Если мы попробуем теперь выполнить команду, которую мы придумали, то опять ничего не выйдет, потому, что у нас оболочка по-умолчанию ищет исполняемые файлы, которые мы пишем, как команды по определенному пути. А все эти пути можно посмотреть в переменных среды. Переменные среды это определённые переменные, которые могут показать определенные настройки текущей операционной системы. Мы данные настройки можем посмотреть командой env. В выводе команды мы можем найти вот такую строчку PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games Здесь указан путь, по которому будут искаться переменные. Соответственно мы так же можем увидеть и другие настройки его среды, язык, его домашнюю папку и т.д. так как у нас по указанному выше пути ищутся исполняемые файлы мы не можем взять и запустить команду не пойми откуда. Но мы можем ее запустить, используя полный путь к исполняемому файлу. Чтобы посмотреть, где мы находимся, можно воспользоваться командой pwd, она покажет путь. В моем случае /root. У нас получится /root/storm Запустился. Следовательно, команда вывела тот текст, который мы изначально туда поместили. Вот это у нас получается полный путь к файлу /root/storm. Введем еще раз команду ls a. Мы видим скрытые файлы начинающиеся с "." , а так же еще два символа "." и ".." . Первый символ точки - это просто текущая папка. Т.е. если сделать cd . , то мы останемся в текущей директории. А если cd .. то это означает подняться на уровень выше по иерархии каталогов в файловой системе. Можно обнаружить, что при нахождении в домашней папке /root, под пользователем root, мы видим значок домашней папке ~. Это происходит потому, что в переменных для данного пользователя данная папка прописана, как домашняя. Теперь с учетом выше сказанного можно запустить нашу команду более кратко ./storm Это называется путь из текущей папки, где "." указывает на текущую папку. Таким образом мы можем запускать файлы. Еще раз вернемся к переменным среды. Например, мы можем добавить переменную ABC = 123, т.е. мы задали символьной последовательности ABC значение 123. Пока это не переменная, мы просто задали слову число. Чтобы это превратить в переменную есть команда export. Воспользуемся export ABC. И мы видим, что наша переменная добавилась. Теперь можно с данной переменной работать, например, можно ее указывать в качестве аргумента какой-либо команды. Например, echo $ABC, здесь "$" указывает, что мы обращаемся к переменной. В результате появится на экране 123. Мы можем отменить данную переменную, командой unset ABC. Снова смотрим перечень переменных env и видим, что переменная ABC исчезла. Можем поработать с другой переменной среды PATH. Например написать "PATH=$PATH:." , т.е. к текущему значению $PATH мы через двоеточие, как это показано в выводе команды env добавляем текущую папку в виде точки. Это означает, что у меня теперь будут запускаться файлы из той директории, которая обозначена точкой. Директорию, в которой находимся можно посмотреть pwd. Групповые символы: Создадим несколько файлов с помощью команды touch. Если мы хотим вывести файлы, которые заканчиваются на txt, мы вводим ls *.txt. Т.е. значок звездочки заменяет любое количество символов. Возможен, например, еще такой вариант команды, мы получим аналогичный результат ls *.t* Есть значок вопросительного знака, который заменяет только один символ. Работает по аналогии выше. Можно запросить информацию о диапазоне. Например, ls [1-4].txt, результатом вывода данной команды будет 4 файла. Все эти символы можно комбинировать. Мы можем создать некую последовательность. Например, touch {6,7,8}.txt соответственно созданы 3 файла, 6.txt, 7.txt, 8.txt. Символов достаточно много, но вот эти самые основные. Справочные команды Команда uname показывает какая операционная система. Ну я думаю и так, всем понятно, что Linux. Если ввести с ключиком a, то мы получим более информативный вариант Linux jenkins 5.4.0-45-generic #49-Ubuntu SMP Wed Aug 26 13:38:52 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux. Плюс дополнительные параметры, версия, издание и другое. Команда File на примере нашего файла storm. Мы можем увидеть, что данный файл - это обычный текст. Есть еще справочная похожая команда whatis запрос. Команда history - показывает историю ввода команд. Чтобы повторить, какую-нибудь команду можно двигать стрелочкой вверх на клавиатуре, а также можно перебирать стрелочкой вниз. Когда мы используем данный функционал, мы как раз двигаемся по истории команд. Еще полезный функционал, если написать пару символов и нажать дважды кнопку табуляции, то операционная система постарается дописать команду или файл, или выдаст возможные варианты, если вариантов нет просто допишется название файла или команды. И самая, пожалуй, важная команда это команда man, она позволяет открывать мануалы по той или иной команде.
img
Отчетность. Важная штука, не правда ли? Особенно в крупном контакт - центре, где контроль за SLA и работой тысяч операторов является критическим бизнес - узлом. Ранее, мы рассказывали про UCCE. Это такой большой контакт - центр от Cisco для больших компаний. А сегодня мы поговорим Cisco Unified Intelligence Center (CUIC), как его еще называют “куик". Обзор возможностей, архитектура и термины продукта в статье. Зачем нужен? CUIC позволяет работать с историческими данными и данными реального времени. “Куик" можно установить по модели standalone, когда у вас будет только 1 сервер, или кластеризовать это решение, добавив в него до 8 серверов. В CUIC можно добавлять различные отчеты, в том числе кастомизированные, править отображение отчетов, делать его в формате диаграмм, чартов, делать “пермалинки" (ссылки по web на отчет), дашборды и многие другие функции. Архитектура С точки зрения высокоуровневой архитектуры, CUIC работает вот так: Итак, с точки зрения высокоуровневой архитектуры: Пользователь (супервайзер) через браузер делает обращение в CUIC для генерации отчета; Веб запрос обрабатывается web - сервером в кластере серверов Unified Intelligence Center; Данные “парсятся" черед Data source (датасорс, источник данных); Датасорс предоставляет отчеты реального времени или исторические с UCCE или CVP сервера отчетности; Кстати, подключить CUIC можно и к данным UCCX При подключении к UCCE (в CUIC есть отдельный пункт настройки Data Sources), мы указываем подключение серверу AWDB (Administrative Workstation DB). По факту, это просто SQL - плечо по 1433 порту (если не меняли). Как мы сказали ранее, по факту, CUIC - визуализатор данных из БД источников. Предварительная настройка его в этом и заключается - настроить источники данных (data sources). Разобрались с архитектурой. Теперь давайте посмотрим, как выглядит CUIC. Как выглядит CUIC? Давайте быстро пробежимся по UI интеледженс центра. Форма авторизации весьма стандартная: Чуть раньше в статье мы говорили про создание Data Source для CUIC - источников данных. Вот как этот конфигуратор выглядит в реальности: Тут совершенно ничего сложного. Просто плечо в БД. Теперь про отчеты. Вот так выглядит дашборд в системе. Обратите внимание, на нем преднастроены отчеты, стикеры (позволяющие запинить важные данные, например), фреймы на нужные веб - ресурсы: CUIC начиная с 12 версии В 12 версии Cisco прокачала свои интерфейсы в контакт - центровых продуктах (ну или купила компанию, которая это делает, сами понимаете). Изменения в плоскости интерфейса коснулись так же и агентского рабочего места Finesse. Посмотрите еще раз на скриншот выше. А теперь посмотреть, как изменился UI интерфейс CUIC:
img
В статье рассматриваются примеры протоколов, обеспечивающих Interlayer Discovery и назначение адресов. Первую часть статьи про Interlayer Discovery можно прочитать тут. Domain Name System DNS сопоставляет между собой человекочитаемые символьные строки, такие как имя service1. exemple, используемый на рисунке 1, для IP-адресов. На рисунке 3 показана основная работа системы DNS. На рисунке 3, предполагая, что нет никаких кэшей любого вида (таким образом, весь процесс проиллюстрирован): Хост A пытается подключиться к www.service1.example. Операционная система хоста проверяет свою локальную конфигурацию на предмет адреса DNS-сервера, который она должна запросить, чтобы определить, где расположена эта служба, и находит адрес рекурсивного сервера. Приложение DNS операционной системы хоста отправляет DNS-запрос на этот адрес. Рекурсивный сервер получает этот запрос и - при отсутствии кешей - проверяет доменное имя, для которого запрашивается адрес. Рекурсивный сервер отмечает, что правая часть имени домена именуется example, поэтому он спрашивает корневой сервер, где найти информацию о домене example. Корневой сервер возвращает адрес сервера, содержащий информацию о домене верхнего уровня (TLD) example. Рекурсивный сервер теперь запрашивает информацию о том, с каким сервером следует связаться по поводу service1.example. Рекурсивный сервер проходит через доменное имя по одному разделу за раз, используя информацию, обнаруженную в разделе имени справа, чтобы определить, какой сервер следует запросить об информации слева. Этот процесс называется рекурсией через доменное имя; следовательно, сервер называется рекурсивным сервером. Сервер TLD возвращает адрес полномочного сервера для service1.example. Если информация о местонахождении службы была кэширована из предыдущего запроса, она возвращается как неавторизованный ответ; если фактический сервер настроен для хранения информации об ответах домена, его ответ является авторитетным. Рекурсивный сервер запрашивает информацию о www.service1.example у полномочного сервера. Авторитетный сервер отвечает IP-адресом сервера B. Рекурсивный сервер теперь отвечает хосту A, сообщая правильную информацию для доступа к запрошенной службе. Хост A связывается с сервером, на котором работает www.service1.example, по IP-адресу 2001:db8:3e8:100::1. Этот процесс может показаться очень затяжным; например, почему бы просто не сохранить всю информацию на корневом сервере, чтобы сократить количество шагов? Однако это нарушит основную идею DNS, которая заключается в том, чтобы держать информацию о каждом домене под контролем владельца домена в максимально возможной степени. Кроме того, это сделало бы создание и обслуживание корневых серверов очень дорогими, поскольку они должны были бы иметь возможность хранить миллионы записей и отвечать на сотни миллионов запросов информации DNS каждый день. Разделение информации позволяет каждому владельцу контролировать свои данные и позволяет масштабировать систему DNS. Обычно информация, возвращаемая в процессе запроса DNS, кэшируется каждым сервером на этом пути, поэтому сопоставление не нужно запрашивать каждый раз, когда хосту необходимо достичь нового сервера. Как обслуживаются эти таблицы DNS? Обычно это ручная работа владельцев доменов и доменов верхнего уровня, а также пограничных провайдеров по всему миру. DNS не определяет автоматически имя каждого объекта, подключенного к сети, и адрес каждого из них. DNS объединяет базу данных, обслуживаемую вручную, с распределением работы между людьми, с протоколом, используемым для запроса базы данных; следовательно, DNS попадает в базу данных сопоставления с классом протоколов решений. Как хост узнает, какой DNS-сервер запрашивать? Эта информация либо настраивается вручную, либо изучается с помощью протокола обнаружения, такого как IPv6 ND или DHCP. DHCP Когда хост (или какое-либо другое устройство) впервые подключается к сети, как он узнает, какой IPv6-адрес (или набор IPv6-адресов) назначить локальному интерфейсу? Одним из решений этой проблемы является отправка хостом запроса в какую-либо базу данных, чтобы определить, какие адреса он должен использовать, например DHCPv6. Чтобы понять DHCPv6, важно начать с концепции link local address в IPv6. При обсуждении размера адресного пространства IPv6, fe80:: / 10 был назван зарезервированным для link local address. Чтобы сформировать link local address, устройство с IPv6 объединяет префикс fe80:: с MAC (или физическим) адресом, который часто форматируется как адрес EUI-48, а иногда как адрес EUI-64. Например: Устройство имеет интерфейс с адресом EUI-48 01-23-45-67-89-ab. Этот интерфейс подключен к сети IPv6. Устройство может назначить fe80 :: 123: 4567: 89ab в качестве link local address и использовать этот адрес для связи с другими устройствами только в этом сегменте. Это пример вычисления одного идентификатора из другого. После того, как link local address сформирован, DHCP6 является одним из методов, который можно использовать для получения уникального адреса в сети (или глобально, в зависимости от конфигурации сети). DHCPv6 использует User Datagram Protocol (UDP) на транспортном уровне. Рисунок 4 иллюстрирует это. Хост, который только что подключился к сети, A, отправляет сообщение с запросом. Это сообщение поступает с link local address и отправляется на multicast address ff02 :: 1: 2, порты UDP 547 (для сервера) и 546 (для клиента), поэтому каждое устройство, подключенное к одному и тому же физическому проводу, получит сообщение. Это сообщение будет включать уникальный идентификатор DHCP (DUID), который формирует клиент и использует сервер, чтобы обеспечить постоянную связь с одним и тем же устройством. B и C, оба из которых настроены для работы в качестве серверов DHCPv6, отвечают рекламным сообщением. Это сообщение является одноадресным пакетом, направленным самому A с использованием link local address, из которого A отправляет запрашиваемое сообщение. Хост A выбирает один из двух серверов, с которого запрашивать адрес. Хост отправляет запрос на multicast address ff02 :: 1: 2, прося B предоставить ему адрес (или пул адресов), информацию о том, какой DNS-сервер использовать, и т. д. Сервер, работающий на B, затем отвечает ответом на изначально сформированный link local address A; это подтверждает, что B выделил ресурсы из своего локального пула, и позволяет A начать их использование. Что произойдет, если ни одно устройство в сегменте не настроено как сервер DHCPv6? Например, на рисунке 4, что, если D - единственный доступный сервер DHCPv6, потому что DHCPv6 не работает на B или C? В этом случае маршрутизатор (или даже какой-либо другой хост или устройство) может действовать как ретранслятор DHCPv6. Пакеты DHCPv6, которые передает A, будут приняты ретранслятором, инкапсулированы и переданы на сервер DHCPv6 для обработки. Примечание. Описанный здесь процесс называется DHCP с отслеживанием состояния и обычно запускается, когда в объявлении маршрутизатора установлен бит Managed. DHCPv6 может также работать с SLAAC, для предоставления информации, которую SLAAC не предоставляет в режиме DHCPv6 без сохранения состояния. Этот режим обычно используется, когда в объявлении маршрутизатора установлен бит Other. В тех случаях, когда сетевой администратор знает, что все адреса IPv6 будут настроены через DHCPv6, и только один сервер DHCPv6 будет доступен в каждом сегменте, сообщения с объявлением и запросом можно пропустить, включив быстрое принятие DHCPv6. А теперь почитайте про Address Resolution Protocol - протокол разрешения IPv4-адресов
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59