По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Когда нужно найти какой-нибудь файл или папку в системе Linux в голову сразу приходит команда find. Она проста в использовании и имеет множество разных опций, которые позволяют оптимизировать поиск файлов. Далее приведём несколько примеров использования этой команды. Поиск папок Чтобы сделать поиск по папкам команде find нужно передать параметр type d. Таким образом мы скажем команде find вести поиск только по директориям: $ find /path/to/search -type d -name "name-of-dir" Поиск скрытых файлов Так как скрытые файлы и директории в Linux начинаются с точки, то мы можем задать шаблон поиска так, чтобы команда рекурсивно выводила нам все скрытые файлы и директории. Для этого достаточно ввести следующую команду: $ find /path/to/search -name ".*" Поиск файлов по размерам Команда find дает возможность вести поиск файлов размером больше, меньше или равным указанному значению. Чтобы найти файл размером больше 10Мб нужно ввести команду: $ find /path/to/search -size +10M Для поиска файлов размером меньше указанного значения или равного ему нужно ввести следующие команды: $ find /path/to/search -size -10M $ find /path/to/search -size 10M Также есть возможность искать файлы размер которых находится в указанном промежутке. $ find /path/to/search -size +100M -size -1G Поиск файлов по списку Допустим нам нужно найти несколько файлов, указанные в списке, который хранится в виде файла с расширением .txt. Для этого мы можем воспользоваться комбинацией команд find и grep. Чтобы данная команда работала корректно, каждый шаблона поиска в списке должен начинаться с новой строки. $ find /path/to/search | grep -f filelist.txt Парметр f переданный команде grep означает файл и даёт нам возможность указать файл с шаблонами для поиска. В результате работы вышеуказанной команды система вернёт нам все файлы, название которых указаны в списке. Найти файл, которого нет в списке Так же в системе Linux есть возможность поиска, противоположная указанному выше. То есть мы можем искать файлы, которые не указаны в списке файлов. Для этого команде grep передадим параметр vf, что означает обратное сопоставление и вернет нам файлы, названий которых не найдёт в списке шаблонов. $ find /path/to/search | grep -vf filelist.txt Указываем максимальную глубину поиска По умолчанию, команда find ищет файлы во всех директориях и поддиректориях. Допустим, если мы в качестве пути для поиска укажем корневую директорию "/", то система будет искать искомый файл по всему жесткому диску. Мы можем ограничить область поиска командой maxdepth указав ему насколько глубоко нужно искать файл. $ find . -maxdepth 0 -name "myfile.txt" Команды указанная выше говорит системе искать файл только в указанной директории. А следующая команда предписывает вести поиск в указанной директории и в одной поддиректори. $ find . -maxdepth 1 -name "myfile.txt" Поиск пустых файлов Команда find также позволяет вести поиск по пустым файлам и директориям. Для этого команде добавляем флаг empty. Следующие две команды позволяют найти пустые файли и папки. Для поиска папок к строке поиске добавляет ключ d: $ find /path/to/search -type f empty $ find /path/to/search -type d empty Так же можно автоматически удалять найденные пустые файлы или папки. Следующая команда найдет и удалит все пустые файлы в указанной папке и всех подпапках: $ find /path/to/search -type f -empty delete Поиск самого большого файла или папки Если нужно быстро определить какой файл или какая папка в системе занимает больше всего места, то команда find с соответствующими ключами позволит нам рекурсивно искать и сортировать файлы/папки по их размеру: $ find /path/to/search -type f -printf "%s %p " | sort -n | tail -1 Заметьте, что при поиске мы прибегнули к двум другим удобным инструментам Linux: sort и tail. Sort отсортирует файл по их размеру, а tail покажет самый последний файл в списке, который и будет самым большим файлом/папкой. Мы можем изменить команду так, чтобы она выводила пять самых больших файлов для этого нужно воспользоваться следующей командой: $ find /path/to/search -type f -printf "%s %p " | sort -n | tail -5
img
Было время, когда все, что связано с установкой, конфигурацией, обслуживанием инфраструктуры, выполнялось вручную. Для одной работы привлекались много сотрудников. Все было вручную. Этот процесс имел значительный риск человеческих ошибок, что приводило к понижению доступности, безопасности и производительности приложений. Не стоит забывать и общую стоимость инфраструктуры. Но благодаря современным технологиям и философии, таким как DevOps, это больше не проблема. Теперь у нас есть несколько инструментов для выполнения задач создания, развертывания и управления инфраструктурой. Используя правильное программное обеспечение, можно автоматизировать всю инфраструктуру приводя участие человека к минимуму. Я говорю не о простых вещах, а о сложных задачах, таких как выделение ресурсов инфраструктуре, полная настройка приложений и т.д. Автоматизация инфраструктуры - это процесс развертывания аппаратных/программных компонентов, операционной системы, сетевых компонентов, компонентов хранения данных с использованием IaC (Infrastructure as Code). Этот процесс имеет вмешательство человека только для написания такого кода, который будет иметь все детали для создания и развертывания необходимых компонентов. Вот список наиболее популярных средств автоматизации инфраструктуры, широко используемых в отрасли. 1. Ansible Ansible - это ядро с открытым исходным кодом, который автоматизирует развертывание приложений, управление конфигурацией, организацию ИТ. Основана в 2012 году и написана на самом трендовом в настоящее время языке - Python. Для реализации всей автоматизации Ansible использует плейбуки, где все конфигурации написаны на удобочитаемом языке - YAML. Anible имеет безагентную архитектуру, то есть не нужно устанавливать какое-либо программное обеспечение отдельно на всех серверах. Он следует модели на основе push, где необходимо иметь локальную систему со всеми необходимыми конфигурациями, и эти конфигурации перемещаются на целевые серверы. Доступные функции: Автоматизация с помощью простого удобочитаемого языка; Безагентная архитектура позволяет подключаться к серверам через обычный SSH; Модель push передает конфигурации на сервер с локальной машины, управляемой вами. Построен на Python, поэтому поддерживает множество библиотек и функциональных возможностей данного скриптового языка; Кураторская коллекция модулей Ansible инженерной команды Red Hat. Для больших предприятий Red Hat предлагает Ansible Tower. 2. SaltStack Stack может с высокой скоростью выполнять управление инфраструктурой, управление конфигурацией и оркестровку. По сравнению с другими подобными инструментами, такими как Chef и Puppet, быстрота SaltStack является существенным отличием. Данное решение было представлено в 2011 году, и так же, как и Anible, он написан на Python. Он имеет архитектуру master-slave, где Salt Master является главным демоном, который управляет всем, а Salt Minions являются подчиненными демонами, установленными на каждой управляемой системе для выполнения команд, отправленных Salt Master. Salt Master отправляет необходимые настройки и команды Salt Minions, а Salt Minions выполняют их на своей машине, чтобы применить всю IT-автоматизацию. Функции Stack: Рассчитанный на масштаб и скорость, один мастер может работать с 10000 миньонов. Очень прост в настройке, имеет единую архитектуру удаленного выполнения. Файлы конфигурации в Stack поддерживают все виды языков. Он может выполнять команды на удаленных системах параллельно, что помогает ускорить автоматизацию. Предоставляет простой интерфейс программирования с использованием API Python. 3. Chef Одной из основных причин производственных инцидентов является несогласованность приложения или конфигурации. Это обычная проблема, и Chef стремится исправить это. Chef - это инструмент управления конфигурацией для управления инфраструктурой. Он был написан на Ruby, а первый релиз состоялся в 2009 году компанией OpsCode. Продукт Chef Infrastructure Management обеспечивает соответствие всех сред одним и тем же конфигурациям в инфраструктуре. Она предоставляет различные инструменты для управления инфраструктурой вроде Chef Infra, Chef Automate, Chef Enterprise и Chef Community. Функции Chef Infrastructure Management: Конфигурации написаны на языке YAML; Она поставляется с несколькими инструментами разработки для написания книг рецептов (конфигураций), тестирования и разрешения зависимостей; Корпоративная версия предоставляет возможности совместной работы для упрощения обработки сложных сред. Поддержка интеграции с сотнями инструментов DevOps, таких как GitHub, Jenkins, Azure Terraform. 4. Bolt Bolt - один из открытых проектов Puppet. Это безагентный инструмент для автоматизации ИТ. С помощью Bolt можно автоматизировать все задачи, выполняемые вручную, что необходимо сделать сегодня в соответствии с требованиями. Я говорю о таких задачах, как развертывание приложения, устранение неполадок серверов, остановка и перезапуск службы, исправление и обновление систем и т.д. Поскольку Bolt не содержит агентов, нет необходимости устанавливать какое-либо программное обеспечение агента на удаленных целевых машинах. Необходимо установить Bolt в локальной системе и подключить удаленные целевые системы с помощью SSH или WinRM. Основные возможности Bolt: Запишите план болта (сочетание команд, сценариев и задач) в YAML, простой в использовании и изучении. Многие существующие планы и рабочие процессы доступны в Puppet Forge (библиотека модулей). Переместите автоматизацию с Bolt на Puppet Enterprise для лучшей масштабируемости. 5. Terraform Terraform - это средство выделения ресурсов инфраструктуры с открытым исходным кодом, используемое для создания и развертывания инфраструктуры с использованием инфраструктуры в качестве кода (IaC). Hashicorp представила его в 2014 году. Terraform довольно хорошо работает с такими поставщиками облачных технологий, как AWS, Azure, GCP, Alibaba. С помощью Terraform можно развертывать инфраструктуру и управлять ею на любом из этих облачных поставщиков. В настоящее время Terraform широко используется многими организациями для управления Kubernetes кластерами. Преимущества Terraform: Простое управление конфигурацией неизменяемой инфраструктуры. Может выполнять полную оркестровку инфраструктуры, а не только управление конфигурацией. Использует язык конфигурации HashiCorp (HCL), который удобочитаем и очень прост для изучения. Предоставляет готовые модули и провайдеров для сотен инструментов, и технологий через реестр terraform. Заключение Это был мой список самых популярных решений для автоматизации инфраструктуры, которые предлагают продукты для организаций среднего размера на уровне предприятия. Если вы попадаете в домен DevOps и хотите автоматизировать свою инфраструктуру и связанные с ней монотонные задачи, это подходящее время, чтобы выбрать одно из вышеупомянутых решений и начать автоматизацию.
img
@media screen and (max-width: 736px){ .video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; } .video-container iframe { position: absolute; top:0; left: 0; width: 100%; height: 100%; }} Как думаешь, какой язык программирования сейчас самый популярный? Если погуглить, то окажется, что это Python. А почему так, мы сейчас расскажем и покажем. Начнем с произношения - как его называть? Питон? Писон? Пистон? Можно и так, но правильно будет Пайтон, потому что его создатель Гвидо Ван Россум, назвал его в честь популярной комедийной группы Монти Пайтон, а точнее их шоу “Летающий цирк Монти Пайтона”, так что чешуйчатые тут не причем. Почему мы слышим про Python из каждого утюга? В чем секрет его популярности? Дело в том, что он используется не только разработчиками, а еще очень популярен среди математиков, аналитиков, ученых, сетевых инженеров, сисадминов, хакеров и даже бухгалтеров. Для программиста, такое большое сообщество — это гигантский плюс - не знаешь, как решить задачу? Спроси или найди готовое решение на Stack Overflow, там это уже проходили и обсудили. Популярность Python также объясняет его простота освоения. Даже если ты очень далек от айти, а при виде кода у тебя потеют ладошки, то чилл - изучение пайтона не составит для тебя большой сложности - он имеет простую структуру и синтаксис. А все благодаря его философии, которая заложена в основу языка: Красивое лучше, чем уродливое. Явное лучше, чем неявное. Простое лучше, чем сложное. Сложное лучше, чем запутанное Порог вхождения в Python низкий, потому что это очень дружелюбный для новичков язык программирования Пайтон применяют для самых разных задач: анализ данных и их визуализация, искусственный интеллект, машинное обучение, автоматизация процессов, да что угодно! Теперь чутка техники: Python это высокоуровневый интерпретируемый язык программирования общего назначения. Не пугайся, все просто. Смотри: Высокоуровневый означает, что тебе не нужно в деталях знать, как работает компьютер. Это как со смартфоном - тебе не нужно понимать как работает транзистор и что такое “лавинный пробой”, чтобы послушать на нем треки. Ну и по сравнению с другими языками, работа с памятью происходит автоматически, нам не нужно предварительно выделять ее и освобождать - спасибо встроенному “сборщику мусора” Интерпретируемый - когда ты допишешь на Python свой первый скайнет, его будет нужно преобразовать в машинный язык, который сможет понять компьютер. Да - да, компьютер сам по себе твою писанину не поймет. Именно для этого используется интерпретатор Python, который при выполнении программы превращает написанный тобой код построчно, по одной за раз, в машинный код. А компилируемые языки, такие как Java, используют компилятор, который компилирует весь исходный код целиком перед выполнением твоей программы. Общего назначения означает, что использовать Python можно в различных областях, ну как мы уже и говорили: веб, десктоп и мобильные приложения, тестирование, работа с данными, работа с большими данными (big data), искусственный интеллект и машинное обучение, автоматизация и даже игры на нем писать можно! Так это вроде у всех есть, нет? Неа, например есть целевые языки, такие как SQL, который можно использовать только для запроса данных из реляционных баз данных. Пайтон является объектно-ориентированным языком (ООП) программирования. Если кратко, то ООП - это когда вся программа рассматривается как набор взаимодействующих друг с другом объектов, где каждый объект имеет свои свойства и поведение. А если ты уже прогаешь на другом языке, то смотри, что в пайтоне особенно круто: он строго типизированный - это означает, что значения переменных не будут неожиданно изменяться Но при этом динамически типизированный, следовательно нам не нужно указывать тип переменной каждый раз. А еще: забудь про точки с запятой! Вместо этого тут используются отступы, чтобы определить блоки кода. И да, фигурные скобки в этом случае, как видишь, тоже не нужны. Также стоит заметить то что пайтон это кроссплатформенный язык программирования, что значит что мы можем писать и запускать свой код на Windows, Linux, MacOS и прочих! Ну и не в последнюю очередь благодаря своей популярности, Python имеет огромную экосистему библиотек, фреймворков и инструментов которые упростят работу и расширят ваши возможности при написании кода. Для примера можно назвать популярные Tensorflow и PyTorch для машинного обучения, Django и Flask для веб приложений, Pandas для дата сайенса, Selenium для тестирования и NumPy для сложных вычислений. А для установки всех этих дополнительных крутых штук используется специальный менеджер пакетов, котороый называетися pip. Кстати, у нас есть курс по Python с нуля! Пройди бесплатный вводный урок, в котором ты напишешь свою первую программу, да еще и с графическим интерфейсом, после чего сможешь ее показывать всем вокруг и говорить “знаете, я и сам в каком-то роде тоже пайтон разработчик”
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59