По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Для того, чтобы нормально пользоваться инструментом Terraform, нам понадобится текстовый редактор с плагином, понимающим язык разметки Terraform (HCL). Это необходимо для того, чтобы было удобно писать код для поднятия инфраструктуры. На самом деле, код можно писать в каком угодно текстовом редакторе, но наиболее удачно подходит текстовый редактор Atom.
Для Windows установка очень простая. Идем на сайт www.atom.io, сайт автоматически определяет версию операционной системы и нажимаем на кнопку скачать. Дальнейшая инсталляция под операционную систему Windows очень простая - запуск файла и нажатие несколько раз кнопки Далее.
В случае если мы хотим работать из-под операционной системы Linux, заходя на сайт мы видим, что сайт предлагает скачать нам установочные пакеты в вариации deb и rmp. Но возможно пойти нам и другим путем. Заходим на сайте в документацию, находим Atom Flight Manual.
Далее выбираем с левой стороны Installing Atom, а вверху тип операционной системы.
Далее мы видим описание инсталляций для разных ОС семейства Linux. Для Ubuntu и для CentOS.
При инсталляции на Ubuntu:
wget -qO - https://packagecloud.io/AtomEditor/atom/gpgkey | sudo apt-key add -
Скачиваем ключ и помещаем в хранилище.
sudo sh -c 'echo "deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ any main" > /etc/apt/sources.list.d/atom.list'
Обновляем список депозитарий командой apt update, а также обновляем сам репозиторий. Ну собственно и последующая инсталляция непосредственно самого текстового редактора Atom.
sudo apt-get install Atom
Инсталляция на CentOS в принципе аналогичная.
Скачиваем и добавляем ключ.
sudo rpm --import https://packagecloud.io/AtomEditor/atom/gpgkey
sudo sh -c 'echo -e "[Atom]
name=Atom Editor
baseurl=https://packagecloud.io/AtomEditor/atom/el/7/$basearch
enabled=1
gpgcheck=0
repo_gpgcheck=1
gpgkey=https://packagecloud.io/AtomEditor/atom/gpgkey" > /etc/yum.repos.d/atom.repo'
Теперь мы можем воспользоваться пакетным менеджером yum или dnf
sudo dnf install Atom
sudo dnf install atom-beta
Или если установлен альтернативный пакетный менеджер yum или операционная система CentOS 7, можно скачать пакет в rpm формате https://atom.io/download/rpm и установить
sudo yum install -y atom.x86_64.rmp
sudo dnf install -y atom.x86_64.rpm
После данных манипуляций у нас установится текстовый редактор Atom. Конечно, установка имеет смысл на машину с графическим интерфейсом пользователя. Его можно найти по зеленой иконке, как на скриншоте.
Далее, самая интересная, часть данной статьи. Если мы просто вставим кусочек кода от TerraForm, то мы увидим, что он ничем не отличается от обычного текста. Все преимущества данного текстового редактора раскрываются в использовании плагинов для Terraform.
Для установки плагина, который различает написанный код Terraform, нам необходимо зайти в Edit, в данном открывшемся меню найти Preferences. В следующем открывшемся окне выбираем Install. В правой части после данной операции появляется строка поиска для инсталляции дополнительных пакетов (Plugins). С помощью данного поиска находим пакет по запросу Terraform. Пакетов будет найдено достаточно много. Можно посмотреть описание и версию пакетов и сколько раз был скачен данный пакет. Я рекомендую выбрать пакет language-terraform. Для большинства данного пакета будет совершенно достаточно. Данный пакет дает не только красивую подсветку кода, но и много других функций. Еще для удобства работы можно установить terraform-fmt. Данный пакет не столь популярен, но за то он позволяет удобно форматировать код Terraform при написании. А именно, код будет выравниваться при нажатии сочетания клавиш Ctrl+S для сохранения изменений в файле.
Для того, чтобы плагины начали работать, необходимо перезапустить текстовый редактор. И второй важный момент переименовать файл рабочий в файл с разрешением *.tf.
В данной статье мы рассмотрим такие вопросы как, копирование, перенос и удаление файлов. Копирование нескольких файлов и папок в том числе рекурсивно. Удаление файлов и папок в том числе рекурсивно. Использование групповых символов. Отбор файлов по типу, размеру, дате и.т.д. Утилиты tar, cpio и dd.
Исходя из обозначенных выше вопросов будем разбираться со следующим списком команд: cp, find, mkdir, mv, ls, rm, rmdir, touch, tar, cpio, dd, file, gzip, gunzip, bzip2, xz, file globbing.
А также захватим основные виды архиваторов и посмотрим, как с ними работать.
Команда touch
Данная команда меняет отметки времени файла. При помощи этой команды мы можем создавать новые файлы и менять время доступа к файлу.
Например, мы можем посмотреть, что в текущей директории нет текстовых фалов. Убедится мы можем командой ls, а посмотреть в какой директории pwd. Соответственно вводим touch 123.txt и файл появляется.
Есть так же другая команда для создания директорий mkdir. Описание можно по ней посмотреть, через ввод команды man mkdir. Данная команда создает директорию, например, mkdir folder1 создаст нам директорию folder1. Для просмотра используем команду ls. По данной команде мы тоже можем посмотреть мануал man ls. В описании написано, что показывает содержимое папки. Мы так же ее можем использовать с ключем –l, листинг, т.е в виде списка.
В таком формате мы можем увидеть, кто владелец папки или файла, группу права на папку или файл. Достаточно информативно получается использование данной команды.
Создадим еще один файл 456.txt и файл 1.txt в папке folder1
touch 456.txt
touch folder1/1.txt
и групповое создание файлов touch folder1/{2,3}.txt, а так же мы можем посмотреть, что у нас получилось в папке folder1.
Команда cp
Команда предназначена для копирования файлов и директорий.
Самый простой пример сделать копию: cp 123.txt copy123.txt. Можно скопировать директорию cp folder1 folder2. И команда откажется выполнятся, потому, что по умолчанию рекурсивно не работает. В папке folder1 находятся файлы. И если мы хотим это осуществить то используем ключ –r или –R.
Данная команда очень важна, т.к приходится использовать ее достаточно часто, например при настройке, какого–нибудь важного демона. Прежде чем вносить правки в файл конфигурации данного демона, оригинальный конфигурационный файл лучше всего скопировать.
Команда mv
Данная команда позволяет перенести файлы или папки, или переименовать (перенести данные из одного имени в другое). Для примера, скажем файл 456.txt перенести в файл something.txt, т.е mv 456.txt something.txt. Как мы видим файл 456 исчез, а появился something.txt
Данная команда можем переносить так же в другую папку, например, глубже
mv something.txt folder1/
Вот так будет выглядеть команда. А также можно вернуть его обратно, командой:
mv folder1/something.txt .
В конце знак точки выполняет функцию обозначения текущей папки. Аналогичные действия мы можем производить с папками. С помощью команд mv и cp.
Команда rm
Данная команда предназначена для удаления папок и файлов.
rm 123.txt - удаление файла
rm folder1 – удаление каталога, но команда выдает ошибку. Это происходит потому, что в папке находится файл. Если мы хотим удалить рекурсивно, то необходимо добавить ключ –r, а если без предупреждений и принудительно , то еще ключик –f. Итоговая команда будет выглядеть следующим образом.
rm –rf folder1
Есть еще одна команда которая удаляет непосредственно папки, называется она rmdir. Мануал посмотреть вы можете по ней командой man rmdir. Данная команда удаляет непосредственно пустые директории. Работает достаточно близко по функционалу к rm.
Команда file
Команда определяет тип файла. Перейдем в папку Folder.
cd folder
Попробуем определить тип файла file yandex.url, как мы можем убедится команда выдает, что данный файл является текстовым.
Если мы наберем, например, File *, то команда применится ко всем файлам в текущей директории и определит все типы файлов.
Важной частью работы с файлами и папками являются Групповые Символы.
* - все что угодно (заменяет любое количество символов)
? – любой символ (одиночный символ, ?? – два символа)
! – не (отрицание)
[ac] – a или с
[a-c] – a,b,c
Создал несколько новых файлов:
touch bag.txt
touch bat.txt
touch cat.txt
touch sat.txt
ls * - дает занимательную картинку, где видны файлы и папки.
Команда ls *.* нам покажет только те файлы которые имеют расширения. Первая звездочка, означает любое имя, вторая звездочка указывает на любое расширение. Мы можем указать на конкретное количество символов обозначив их знаками “?”. Например, ls *.??? – это означает, что подходят любые файлы, у которых расширение из 3-х любых символов. Знаки вопросов и звездочек, можно использовать с сочетаниями букв и других символов. Можно сказать, покажи нам все файлы, которые начинаются с букв a или b, команда ls [ab]*.
Также можно использовать конструкцию ls [a-m]*. Следовательно, работают все конструкции с групповыми символами.
Команда find
Данная команда будет осуществлять поиск файлов по иерархической структуре папок.
Попробуем найти в директории все файлы:
find * .
Получим вот такой ответ на данную команду. У данной команды очень много ключей. Можем для примера взять такую конструкцию find . –name “In*” . Данная конструкция обозначает поиск в текущей папке, по имени, которое начинается с In и имеет в имени любое количество символов. Данную команду можно использовать для поиска файлов например по размеру: find . –size +5M . Следовательно, данным запросом мы ищем все файлы в текущем каталоге с размером более 5 MB.
Команда cpio
Работа с архивами очень важная часть операций с файлами. Для того, чтобы разобраться в данном вопросе рассмотрим следующую команду.
Данная команда позволяет копировать файлы в архивы и из архивов. Данная команда позволяет работать с архивами, грубо говоря это двоичный архиватор. Смотрим, что есть в директории ls.
Далее даем вот такую команду: ls | cpio –o > ../test.cpio
В результате получили файл
Пояснения, что мы сделали. Мы взяли вывод команды ls по конвейеру передали на вход команды cpio с ключем –o, который создает архив и то, что должно получится мы указали папку .. т.е родительская директория и файл test.cpio. Команда выполнилась и вывела число блоков, сколько обработалось. И переместившись на уровень выше, в родительскую директорию мы можем увидеть, что файл появился.
А можем сделать следующую вещь: find . –name ”*.txt” | cpio –o > test2.cpio. Т.е мы можем выполнит поиск всех текстовых файлов в текущей директории и заархивировать, причем положить в текущую директорию.
Создадим папку mkdir extract. И перейдем в нее cd /root/extract. Теперь мы попробуем разархивировать cpio –id < .. / test2.cpio
Как мы видим все текстовые файлы появились. По сути, что мы сделали. Мы сказали команде cpio подняться на уровень выше взять test2.cpio и разархивировать в текущий каталог. Как видите там же попался каталог folder2, а попался т.к в нем тоже есть текстовые файлы. Напоминаю, что команда find работает так же со вложенными файлами, поэтому данный каталог и попал в архив.
Команда dd
Еще немного про архивы.
Конвертирует и копирует файлы. Данная команда умеет копировать, не части файловой системы, как файлы или папки, а умеет копировать блочные устройства или его части, например, диск. Для того, чтобы показать, как это работает я примонтировал еще один раздел на 5 ГБ.
Далее пишем следующее, находясь в директории cd /root/extract.
dd if=/dev/sdc of=drive.img
dd - сама команда
if (Input файл) - диск
of (Output файл) - путь куда положить.
Мы видим, что команда столько-то получила, столько-то отправила данных в файл.
Как можно увидеть, команда отработала. Следовательно, команда dd может сделать целиком резервную копию блочного устройства.
Команда gzip
Переходим непосредственно к архиваторам.
Утилита, которая позволяет разжимать и упаковывать файлы.
gzip drive.img
Получаем в итоге, что вместо drive.img гигантского, получился более компактный drive.img.gz т.е команда gzip не просто создает архив , но и убивает оригинальный файл. Соответственно если мы хотим его отзиповать, то используем команду gunzip drive.img.gz
Все архиваторы различаются по типу сжатия.
Команда bzip2
Данный архиватор уже работает с блоками. Если его запустить аналогичным образом предыдущему архиватору, то получим файл немного меньшего размера. Это значить, что данный архиватор работает более эффективно с данным типами файлов. Разархивация осуществляется так же аналогично.
Команда tar
Теперь посмотрим легендарный архиватор tar
Наиболее часто использующийся архиватор. С множеством функций и ключей. Пример использования.
tar cvf archive.tar folder2
Синтаксис простой, команда с – создать , v - показывать процесс, f - файл, archive.tar - путь к месту где создастся архив, folder2 папка которую архивируем.
Теперь мы можем подключить сжатие архиватора gzip, в опции надо добавить ключ “z” и выходной файл надо назвать archive.tar.gz.
Для разархивации мы указываем ключи xvf и путь до архива.
Старый и безусловно привычный администраторам интерфейс FreePBX 12 – ой версии в прошлом – в декабре 2015 выпущена тринадцатая версия графической оболочки для Asterisk. Как идти в ногу со временем и произвести обновление с 12 на 13 версию FreePBX расскажем в статье.
Обновление через WEB - интерфейс
Для полного удобства в двенадцатой версии FreePBX был создан встроенный пошаговый мастер обновления. Перейдите во вкладку Admin -> 12 to 13 Upgrade Tool
Перед вами откроется приветственное меню мастера обновления. Тут же, развернув выделенную на скриншоте ниже красным вкладку, вы сможете ознакомиться с новинками FreePBX 13. Для продолжения установки, нажмите Check the requirements!.
Система проверит текущие версии установленных на вашей IP – АТС Asterisk модулей, и, в случае не совместимости укажет какие из них необходимо будет обновить. Имейте ввиду, для корректного обновления необходимо чтобы следующие условия были выполнены:
Asterisk 11 версии или выше
PHP версии 5.3.3 или выше
FreePBX версии 12
Нажмите на кнопку Proceed to the upgrade process. Мастер обновления занимает 3 простых шага:
На первом шаге необходимо указать информацию о пользователе FreePBX, выбрав наиболее подходящую опцию в выпадающем поле Distribution
На втором шаге, мастер попросит указать ваши контактные данные, такие как:
Ваше имя
Название компании
Номер телефона
Адрес электронной почты
Третьим шагом будет начато обновление дистрибутива FreePBX 12 до 13 версии.
По окончанию работы мастера обновления ваша система будет готова к работе в рамках 13 версии.
Обновление через консоль
Если по каким-либо причинам вы не можете обновить FreePBX через пошаговый, встроенный в графический интерфейс мастер обновления, вы можете сделать это через командную строку Asterisk, то есть через CLI. Для этого, выполните указанные ниже команды:
amportal a ma upgradeall
amportal a m
update admin set value = '13.0.0alpha1' where variable = 'version';
exit
amportal a ma upgrade framework
fwconsole --fix_zend
fwconsole ma upgrade core
fwconsole ma disable backup
fwconsole ma download backup
fwconsole ma install backup
Рассмотрим команды поподробнее. Сразу обозначим, что fwconsole и amportal это командная прослойка между пользователем через командную строку Linux и FreePBX. Итак:
ma - это короткая запись команды moduleadmin. Команда отвечает за администрирование модулей FreePBX
ma upgradeall - обновление в FreePBX 12 всех имеющихся модулей
m - это короткая запись команды mysql. Команда отвечает за управление базой данных через MySQL
update admin set value = '13.0.0alpha1' where variable = 'version';
- обновляем версию в базе данных на 13
a ma upgrade framework - обновление фреймворка FreePBX
--fix_zend - с помощью программного обеспечения Zend Guard, на момент активации ваш сервер генерирует хэш – сумму, которая хранится на сервере лицензирования. Данный хэш связывается с идентификатором инсталляции, и называется Zend ID. Данная команда урегулирует все возможные конфликты с Zend.
ma upgrade core - обновление модуля Core. Обратите внимание, команда уже выполняется с помощью fwconsole
ma disable backup - выключаем модуль Backup
ma download backup - загружаем модуль Backup
ma install backup - устанавливаем модуль Backup
Если у вас имеются коммерческие (купленные) модули, то укажите так же команду fwconsole ma upgrade sysadmin
Для завершения установки, укажите следующие команды:
fwconsole ma upgradeall
fwconsole chown
fwconsole reload
ma upgradeall - обновление всех модулей до актуальных версий
fwconsole chown - команда устанавливает необходимые права на все файлы FreePBX
fwconsole reload - перезагружаем FreePBX