По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Ядро Linux - это фундамент, на котором работают все дистрибутивы Linux. Это программное обеспечение с открытым исходным кодом - любой может декомпилировать, изучить и изменить код. Обновленные версии ядра могут повысить безопасность, добавить функциональность и повысить скорость работы операционной системы. Это руководство расскажет вам, как обновить ядро Linux на CentOS 7. Шаги по обновлению версии ядра CentOS Менеджер пакетов yum позволяет обновлять ядро. Однако CentOS не предлагает последнюю версию ядра в официальном репозитории. Чтобы обновить ядро в CentOS, вам необходимо установить сторонний репозиторий под названием ElRepo. ElRepo предлагает последнюю версию ядра, доступную на kernel.org. Официальные выпуски тестируются, чтобы убедиться, что они работают правильно и не дестабилизируют работу приложений и функций ОС. Есть два типа версий ядра Linux: Стабильный выпуск ядра с долгосрочной поддержкой (Stable long-term supported kernel release) - обновляется реже, но поддерживается дольше. Основной выпуск ядра (Mainline kernel release) - более короткий срок поддержки, но более частые обновления. Шаг 1. Проверьте текущую версию ядра. Чтобы проверить текущую версию ядра в CentOS, откройте интерфейс командной строки и введите следующую команду: uname -msr Система должна вернуться с записью, которая выглядит следующим образом: Output Linux 3.10.0-862.el7.x86-64 x86-64 В выходных данных указывается, какая версия ядра используется в настоящее время и на какой архитектуре оно основано. Шаг 2. Обновите репозитории CentOS Перед обновлением ядра все пакеты должны быть обновлены до последней версии. Чтобы обновить репозитории программного обеспечения CentOS, используйте команду: sudo yum -y update Ваш репозиторий программного обеспечения обновлен. Это гарантирует, что у вас будет доступ к последней версии ядра. Примечание. Параметр -y указывает системе отвечать «да» на любые всплывающие подсказки. Шаг 3. Включите репозиторий ELRepo Чтобы установить новую версию ядра, необходимо включить новый репозиторий (репозиторий ELRepo). В окне терминала введите: sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org Предыдущая команда устанавливает ключ GPG для репозитория ELRepo. Это важно - CentOS не позволит установить неподписанный программный пакет. Ключ GPG обеспечивает цифровую подпись для проверки подлинности программного обеспечения. Затем установите репозиторий ELRepo, выполнив следующую команду: sudo rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm Подождите, пока система завершит выполнение операции. Шаг 4: Список доступных ядер Чтобы вывести список доступных ядер, введите: yum list available --disablerepo='*' --enablerepo=elrepo-kernel Система должна вернуть список доступных модулей. Обратите внимание на строку в списке, в которой написано kernel-lt, что означает стабильный выпуск с долгосрочной поддержкой, или kernel-ml, который указывает на основной выпуск с более коротким сроком поддержки, но с более частыми обновлениями. Затем посмотрите на правый столбец и обратите внимание на ряд букв и цифр (который выглядит примерно как «4.4.113-1.e17.elrepo»). Это версия ядра. Используйте эти две части информации, чтобы решить, какую версию ядра вы хотите установить. Как видите, ядро Linux 5 - это последний основной выпуск. Шаг 5: Установите новую версию ядра CentOS Чтобы установить последнее основное ядро: sudo yum --enablerepo=elrepo-kernel install kernel-ml Чтобы установить последнее ядро долгосрочной поддержки: sudo yum --enablerepo=elrepo-kernel install kernel-lt Система должна загрузить программное обеспечение, а затем предложить вам подтвердить, что установка подходит - введите y и нажмите Enter. Подождите, пока процесс завершится. Шаг 6: перезагрузите и выберите новое ядро Перезагрузите систему, выполнив команду: reboot Вам будет представлен GRUB или меню загрузки. С помощью клавиш со стрелками выберите только что установленное ядро ??Linux, затем нажмите Enter. Ваша операционная система должна нормально загрузиться. Шаг 7. Проверьте работоспособность Найдите минутку, чтобы проверить функциональность вашей системы CentOS. Все ли у вас программное обеспечение запускается правильно и без ошибок? Все ли ваши сетевые функции работают правильно? Протестируйте новое ядро ??так, чтобы все ошибки были вовремя обнаружены и исправлены. Или, если нет никаких исправлений, вы можете вернуться к старому ядру. Шаг 8: Установите версию ядра по умолчанию Убедившись, что новое ядро ??совместимо и работает правильно, вы захотите отредактировать загрузочную утилиту GRUB так, чтобы по умолчанию она загружала ваше новое ядро. Перейдите в /etc/default/ и откройте файл grub в текстовом редакторе. Или введите в терминал следующее: sudo vim /etc/default/grub После открытия файла найдите строку с надписью GRUB_DEFAULT=X и измените ее на GRUB_DEFAULT=0. Эта строка проинструктирует загрузчик по умолчанию использовать первое ядро ??в списке, которое является последним. Сохраните файл, а затем введите следующую команду в терминале, чтобы воссоздать конфигурацию ядра: sudo grub2-mkconfig -o /boot/grub2/grub.cfg Перезагрузитесь еще раз: reboot Убедитесь, что загрузчик настроен на загрузку последней версии ядра по умолчанию. Итог Готово! Мы обновили ядро CentOS до последней стабильной версии с помощью ELRepo.
img
При изучении принципов написания программного кода вы, вероятно, встречались с термином AJAX и задавались вопросом, что же он значит. Что это – язык программирования, платформа или приложение? На самом деле ничего из перечисленного, но к концу прочтения этой статьи вы будете знать, что же такое AJAX (Asynchronous Javascript and XML - асинхронные сценарии JavaScript и XML). История AJAX До конца 1990-х годов большинство веб-сайтов могли выдавать в качестве результата только полные веб-страницы при посещении страницы на сайте. Иначе говоря, для того, чтобы перезагрузить какие-либо отдельные данные, вам необходимо было перезагрузить всю страницу. Это был не самый эффективный способ предоставления информации пользователям, и, соответственно, не очень хорошо сказывалось на впечатлениях пользователей от взаимодействия с сайтом. Также это увеличивало нагрузку на серверы и пропускную способность, необходимую для обслуживания данных. В 1996 году Microsoft представила тег iframe для Internet Explorer, который позволял браузеру асинхронно извлекать данные в фоновом режиме. Это был шаг в верном направлении на пути к современным веб-приложения. В 2004 году Google добавила в Gmail функцию, позволяющую получать данные в фоновом режиме, а в 2005 году они сделали то же самое и для Google Maps. Технологии Google и Microsoft позволяли разработчикам получать данные с веб-сервера с помощью JavaScript без необходимости перезагружать страницу. В 2005 году Джесси Джеймсон Гарретт в своей статье (о том, как Google добились такого результата) назвал эту технологию AJAX. Эта технология быстро стала одним из самых популярных способов создания веб-приложений. А теперь, когда вы узнали немного из истории AJAX, давайте посмотрим, как это работает. Как работает AJAX? Что делает работу AJAX возможной, так это встроенный в веб-браузер объект XMLHttpRequests (XHR). Этот объект поддерживают все современные браузеры, включая: Chrome Firefox IE7+ Safari Opera Большинство библиотек JavaScript, которые используют AJAX, помещают этот объект в пользовательский код для того, чтобы упростить его использование разработчиками, но мы рассмотрим, как AJAX работает в обычном JavaScript. Первый шаг – создать переменную, которая будет создавать для вас экземпляр объекта XMLHttpReaquests в JavaScript. Ниже приведен пример: const request = new XMLHttpRequest(); Поскольку мы хотим использовать эти данные в дальнейшем, например, хотим распечатать их на веб-странице, то мы добавим к этому запросу получатель запроса, который сообщит нам, когда наш запрос закончит обрабатываться и получит нужные данные. Как можно понять из самого термина, запросы AJAX выполняются асинхронно. Это значит, что код JavaScript продолжает работать после отправки запроса и не ждет ответа. Прикрепив получатель запросов, мы можем перехватить ответ, когда он будет готов. Сделаем мы это вот так: function requestListener() { console.log(this.responseText); } request.addEventListener("load", requestListener); Выше у нас есть функция, которая выводит ответ на консоль JavaScript, которую мы можем получить из атрибута responseText объекта XMLHttpRequests. Затем мы присоединяем эту функцию к событию load нашего запроса. Следующий шаг – используем этот объект для отправки запроса к серверу с помощью метода open объекта XMLHttpRequests. Метод open принимает два параметра. Первый параметр – это используемый метод запроса. Ниже приведены несколько наиболее распространенных методов: GET: этот метод используется для извлечения данных и является наиболее распространенным. POST: этот метод отправляет данные запрошенному ресурсу и чаще всего используется для создания новых записей или для входа в систему. PUT: этот метод заменяет текущие представления данных измененными, которые были отправлены в запросе. PATCH: этот метод обычно используется для обновления части данных в запрошенном ресурсе. DELETE: этот метод используется для удаления определенного ресурса. Второй параметр, который передается методу open, - это запрашиваемый ресурс. Мы будем использовать страницу с веб-сайта example.org и использовать запрос GET для простого получения данных. Вот так это будет выглядеть: request.open("GET", "http://www.example.org/example.txt"); Последний шаг – фактическая отправка запроса на удаленный ресурс с помощью метода send объекта XMLHttpRequests. Ниже приведен пример: request.send(); Если мы используем метод POST, PUT или какой-либо другой метод, который обновляет ресурс, то этот метод мы вызываем с параметром, содержащем данные, которые мы отправляем: request.send(OUR_DATA_VARIABLE) В нашем случае мы только извлекаем данные, поэтому, как только мы выполним этот код, на консоли нашего веб-браузера выведется содержимое http://example.org/example.txt. Данный пример помогает объяснить то, как работает AJAX, но на самом деле технология AJAX имеет куда более продвинутые функциональные возможности. Для чего нужен AJAX? Что вы должны были вынести из приведенного выше примера, так это то, что все функции кода загружаются на одной странице. Действительно, сначала загрузится веб-страница с нашим кодом JavaScript, затем он выполнится, и после он распечатает результаты запроса. С таким же успехом можно было прикрепить приведенный выше код к функции, которая выполняется при нажатии кнопки. Это бы означало, что каждый раз при нажатии кнопки, будет выполняться код, отправляться запрос, и результаты будут выводиться на консоль без загрузки новой страницы. И эта магическая технология изменила подход к веб-разработке. С появлением AJAX большая часть веб-разработки переместилась на внешний интерфейс приложения – часть, которая работает в браузере. Вы наблюдаете то, как работает AJAX ежедневно и даже не подозреваете об этом. Когда вы заходите на современный веб-сайт, перед вами появляется форма. Вы вводите свои учетные данные и нажимаете кнопку «Войти». Индикатор загрузки может вращаться в течение нескольких минут, но если вы обратите внимание, то заметите, что страница на самом деле никогда не перезагружается. Все, что вы сделали, это просто отправили свое имя пользователя и пароль на сервер с помощью AJAX. Индикатор загрузки нужен только для отвода глаз, пока запрос выполняется, независимо от того, ввели ли вы верные учетные данные или нет. Если ваши учетные данные верны, то ваша домашняя страница загружается, скорее всего, из другого запроса AJAX. Большинство запросов AJAX в JavaScript не загружают целые веб-страницы, как в нашем примере. Данные отправляются и извлекаются в формате JSON, для представления данных используется текстовый формат, а для форматирования этих данных в формате HTML и их печати на странице используется дополнительный код JavaScript. Например, данные, которые отправляются для входа на веб-сайт, в формате JSON будут выглядеть так: { username: "MyUserName", password: "MyPassword" } Как только учетные данные будут проверены, файл JSON, содержащий минимальный объем данных для отображения панели инструментов, будет отправлен обратно в браузер. AJAX в сочетании с JSON не только наделяет современные веб-страницы способностью быстро реагировать на действия пользователей, но и экономит пропускную способность, отправляя только необходимые данные для создания веб-страницы.
img
Всем привет! Сегодня в статье мы разберем одну из составляющих процесса маршрутизации звонков (Call Routing) – это механизм Route Patterns. Паттерны используются при маршрутизации вызова, и в зависимости от набранного набора цифр звонок будет отправлен по определенному маршруту. Route Pattern это часть механизма Call Routing, к которому еще относятся Route List, Route Group, Translation Pattern, Calling Search Space и Partitions, но в данной статье мы для начала рассмотрим только паттерны. /p> Route Patterns представляют собой набор символов, паттерн, который настроен на Cisco Unified Communications Manager (CUCM) . Когда набранный абонентом номер попадает под определенный заданный паттерн, то система маршрутизирует вызов в нужном направлении. Синтаксис Wildcard Описание X Одна любая символ (0-9, *, #) ! Один или более символов [X-Y] Диапазон символов от Х до Y [^X-Y ] Диапазон символов от Х до Y которые не будут включены <wildcard>? Один или более значений предыдущего символа или значения wildcard <wildcard>+ Ноль или более значений предыдущего символа или значения wildcard . Отделяет Access Code от номера телефона # Убирает таймаут ожидания следующего символа Рассмотрим примеры: Route Pattern Результат 1234 Подойдет единственный вариант 1234 9ХХХ Подойдут номера от 9000 до 9999 12[3-6]9 Подойдут номера 1239, 1249, 1259, 1269 12[^3-6]9 Подойдут номера 1209, 1219, 1229, 1279, 1289, 1299 999! Подойдут номера от 9990 до 99999999999999999999999999999999 9.88000000000 Отправляет номер 88000000000 91X? Подойдут номера от 91 до 91999999999999999999999 91Х+ Подойдут номера от 910 до 91999999999999999999999 Процесс анализа начинается, когда телефон набирает номер и сравнивает набранный номер с настроенным паттерном, после чего система отправляет вызов в нужном направлении, в нужный Route List. Если номер подходит под несколько паттернов, то выбирается паттерн с наилучшим совпадением. Настройка На странице Cisco Unified CM Administration переходим во вкладку Call Routing → Route/Hunt → Route Pattern. Здесь в строке Route Pattern указываем, необходимы нам паттерн, с которым будут сравниваться набранные номера. В строке Gateway/Route List указываем, куда нам нужно направить попавший вызов. Также здесь можно указать префикс и маску для digit manipulation. После чего нажимаем Save и настраиваем остальные паттерны.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59