По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Gzip – один из самых популярных алгоритмов сжатия, который позволяет сократить размер файла, но при этом сохранить исходный файловый режим, владельца объекта и отметку времени.
Gzip является отсылкой к формату файлов .gz и утилите gzip, используемой для сжатия и распаковки файлов.
В данной статье мы покажем, как использовать команду gzip.
Синтаксис команды gzip
Общий синтаксис команды gzip выглядит следующим образом:
gzip [ПАРАМЕТР]... [ФАЙЛ]...
Gzip сжимает отдельные файлы и создает сжатый файл для каждого заданного файла в отдельности. По определению имя файла, который был сжат с помощью Gzip, должно оканчиваться на .gz или .z.
Если вам необходимо сжать несколько файлов или каталогов в один файл, то для начала вам нужно создать архив Tar, а затем уже сжать файл с разрешением .tar с помощью Gzip. Файл, оканчивающийся на .tar.gz или .tgz, представляет собой архив Tar, сжатый с помощью Gzip.
Как правило, Gzip используют для сжатия текстовых файлов, архивов Tar и веб-страниц. Не нужно использовать Gzip для сжатия изображений, аудиофайлов, PDF-документов и других файлов в двоичном формате, поскольку они уже являются сжатыми.
gzip может сжимать только обычные файлы. символические ссылки он игнорирует.
Сжатие файлов с помощью gzip
Для того, чтобы сжать один файл, вызовите команду gzip, за которой следует имя файла:
gzip имя_файла
gzip создаст файл с именем имя_файла.gz, а исходный файл удалит.
По умолчанию gzip сохраняет в сжатом файле временную метку, файловый режим, владельца объекта и имя исходного файла.
Сохранение исходного файла
Если вы хотите, чтобы исходный файл был сохранен, воспользуйтесь параметром –k:
gzip -k имя_файла
Есть еще один вариант сохранить исходный файл – воспользоваться параметром -c, который сообщает gzip о необходимости записи в стандартный вывод и перенаправлении вывода в файл:
gzip -c имя_файла > имя_файла.gz
Подробный вывод
Если вы хотите увидеть процент уменьшения размера файла и имена обрабатываемых файлов, тогда воспользуйтесь параметром -v:
gzip -v имя_файла
имя_файла: 7.5% -- replaced with имя_файла.gz
Сжатие нескольких файлов
В качестве аргументов команде вы можете передать несколько файлов. Например, чтобы сжать файлы с именами file1, file2, file3, вам необходимо выполнить следующую команду:
gzip file1 file2 file3
После чего приведенная выше команда создаст три сжатых файла: file1.gz, file2.gz, file3.gz.
Сжатие всех файлов в каталоге
Для того, чтобы сжать все файлы в каталоге, воспользуйтесь параметром -r:
gzip -r имя_каталога
gzip рекурсивно пройдет через всю структуру каталогов и произведет сжатие всех файлов в каталоге и его подкаталогах.
Изменение уровня сжатия
gzip дает возможность указать уровень сжатия, его диапазон - от 1 до 9. -1 или --fast означает самую высокую скорость сжатия с минимальной степенью сжатия, -9 или --best - самую низкую скорость с максимальной степенью. По умолчанию уровень сжатия равен -6.
Например, чтобы установить максимальный уровень сжатия, вам необходимо запустить следующую команду:
gzip -9 имя_файла
Сжатие – это задача, интенсивно использующая ЦП. Соответственно, чем выше уровень сжатия, тем больше времени занимает процесс.
Использование стандартного ввода
Для того, чтобы создать файл расширения .gz из стандартного ввода, вам необходимо передать вывод команды gzip. Например, чтобы сжать резервную копию базы данных MySQL, вам необходимо запустить следующую команду:
mysqldump имя_базы_данных | gzip -c > имя_базы_данных.sql.gz
Вывод команда mysqldump послужит вводом для gzip.
Распаковка файлов с помощью gzip
Для того, чтобы распаковать файл с расширением .gz, воспользуйтесь параметром -d:
gzip -d имя_файла.gz
Есть также еще одна команда, которую вы можете использовать для распаковки файла Gzip, - это gunzip. Эта команда по сути является альтернативным вариантом команды gzip -d:
gunzip имя_файла.gz
Сохранение сжатого файла
Здесь, как и при сжатии файла, для того, чтобы показать gzip, что входной файл (в данном случае это сжатый файл) нужно сохранить, необходимо воспользоваться параметром -k:
gzip -dk имя_файла.gz
Распаковка нескольких файлов
Для того, чтобы распаковать несколько файлов одновременно, вам необходимо передать имена файлов в gzip в качестве аргументов:
gzip -d file1.gz file2.gz file3.gz
Распаковка всех файлов в каталоге
Для того, чтобы gzip рекурсивно распаковал все файлы в заданном каталоге, необходимо воспользоваться параметрами -d и -r:
gzip -dr имя_каталога
Перечень содержимого сжатого файла
Для того, чтобы посмотреть статистику данных сжатого файла, воспользуйтесь параметром -l:
gzip -l имя_файла
Вывод покажет имя несжатого файла, размер сжатого и несжатого файла, а также степень сжатия:
compressed uncompressed ratio uncompressed_name
130 107 7.5% имя_файла
Чтобы получить больше информации, добавьте параметр -v:
gzip -lv имя_файла
method crc date time compressed uncompressed ratio uncompressed_name
defla a9b9e776 Sep 3 21:20 130 107 7.5% имя_файла
Заключение
С помощью Gzip вы можете уменьшить размер определенного файла - команда gzip позволяет сжимать и распаковывать файлы.
На этот раз мы спешим поделиться процессом настройки подключения (SIP – транка) на FreePBX 13 на примере оператора Beeline.
Настройка транка
Настройка транка от данного оператора не отличается какими-то особенным параметрами – все происходит так же, как и в случае других операторов. После покупки аккаунта, вам должны предоставить следующие данные:
Опция
В нашем примере
Телефонный номер
+74956661313
Логин(UserID)
74956661313
Пароль
test
Сервер
sip.beeline.ru
Домен
sip.beeline.ru
OutboundProxy
msk.beeline.ru (DNS SRV-запись)
Создаем новый транк. Для этого необходимо перейти по следующему пути: Connectivity → Trunks. Далее необходимо кликнуть на кнопку создания нового транка (+ Add Trunk). Выбираем опцию создания SIP (chan_sip) Trunk. Нужно присвоить транку имя и указать Outbound CallerID (номер, который вы получили от провайдера).
Далее переходим во вкладку sip Settings и вносим необходимые настройки в поле PEER Details вкладки Outgoing:
Ниже приведены настройки для поля PEER Details в текстовом виде, для удобства:
username=74956661313 //ваш логин (он же номер)
type=friend
secret=test //ваш пароль
outboundproxy=msk.sip.beeline.ru
insecure=port,invite
host=sip.beeline.ru
fromuser=74956661313
fromdomain=sip.beeline.ru
dtmfmode=rfc2833
disallow=all
directmedia=no
defaultuser=74956661313
context=from-trunk
allow=alaw&ulaw
Далее переходим во вкладку Incoming и настраиваем строку регистрации:
Для оператора Билайн строка регистрации имеет следующий вид:
Логин:пароль@sip.beeline.ru/ваш_номер
Логин – это ваш так называемый AuthUserID
Нажимаем Submit и Apply Config.
Маршрутизация вызовов
Для настройки входящего маршрута переходим в Connectivity → Inbound Routes, далее кликаем на кнопку создания нового маршрута (+ Add Inbound Route). Присваиваем имя и указываем DID Number – удобнее всего оба поля заполнить значением вашего номера, и указываем куда будет маршрутизироваться входящий вызов:
Кликаем Submit и Apply Config, переходим к настройке исходящего маршрута: во вкладке Connectivity – Outbound Routes, кликаем + Add Outbound Route. Указываем имя маршрута, указываем CID и выбираем транк
Далее переходим во вкладку Dial Patterns и в поле Match Pattern ставим одну-единственную точку (для маршрутизации всех вызовов в сторону Билайна). После этого кликаем Submit и Apply Config – на этом настройка транка в FreePBX 13 для оператора Билайн закончена.
Привет, дорогой читатель! На этапе траблшутинга системные администраторы прибегают к просмотру и анализу лог – файлов Asterisk. В статье поговорим про причины отбоя вызова (hangupcause) в Asterisk, как их найти в лог – файле и что они означают.
Поиск Hangupcause
Подключаемся к нашему серверу IP – АТС по SSH. Открываем консоль и вводим следующую команду:
[root@asterisk ~]# grep -e '[CALLID].*HANGUPCAUSE' /var/log/asterisk/full
Здесь CALLID - это идентификатор вызова. Найти его очень просто. В лог – файле введите номер звонящего/вызываемого абонента и найдете примерно вот такую запись (в примере поиск осуществляется по номеру 89123456789):
[2017-02-08 18:58:03] VERBOSE[18823][C-00000009] pbx.c: Executing [recordcheck@sub-record-check:11] Goto("Local/89123456789@from-internal-00000007;2", "startrec") in new stack
Находим запись выше. Здесь, [C-00000009] - является идентификатором вызова.
После того, как Вы нашли hangupcause, его необходимо понять. Переходим к следующему шагу – интерпретация.
Все причины отбоя вызова в Asterisk
Ниже, в таблице, мы составили причины отбоя вызова и соответствующие для них коды SIP ответов с небольшим описанием:
Код отбоя (hangupcause)
Полученный SIP - ответ
Описание
1
410
Unallocated (unassigned) - неназначенный номер. Данная ошибка указывает, что вызываемый номер назначения не может быть вызван, по причине отсутствия маршрута до него. Как правило, данную ошибку возвращает провайдер телефонных услуг. Например, при звонка зарубеж, данная ошибка может возвращаться из-за отсутствия маршрута к номеру назначения.
2
500
No route to specified transit network - ошибка индицирует о том, что оборудование, сгенерировавшее данную ошибку получило запрос запрос на маршрутизацию вызова через неизвестную ей транзитную сеть. Вполне возможно, что данная сеть в целом не существует.
3
404
No route to destination - чисто "сетевая" ошибка. Обозначает отсутствие коннективити (маршрутизации) между сетями инициатора вызова и вызываемого абонента.
4
500
Send special information tone - вызываемый абонент не может быть вызван по причинам "долгосрочного характера", и звонящий должен получить специальный звуковой тон.
5
500
Misdialled trunk prefix - сигнализирует о том, что к вызываемому номеру был подставлен ошибочный телефонный префикс.
6
500
Channel unacceptable - проблемы на канале связи. Как правило это сетевая проблема.
7
500
Call awarded and being delivered in an established channel - индикация того, что пользователь получил входящий вызов и что пользователь уже имеет аналогичный вызов
8
500
Prefix 0 dialed but not allowed - префикс в начале номер "0" не разрешен
9
500
Prefix 1 dialed but not allowed - префикс в начале номер "1" не разрешен
10
—
Prefix 1 not dialed but required - префикс "1" подставлен в начало номера, но не является требованием
11
—
More digits received than allowed, call is proceeding - в вызываемом номере передано больше цифр, чем позволено на оборудовании передающим данный код отбоя
16
BYE
Normal call clearing - вызов был закончен естественным образом (кто - то из абонентов положил трубку)
17
486
User busy - индицирует, что вызываемый абонент не может принять вызов, так как находится в состоянии "Занят" (есть активный разговор)
18
480
No user responding - вызываемый абонент не ответил на сообщение о вызове (инициации) в течение определенного времени
19
480
T.301 expired: – User Alerted, No answer from user - аппарат вызываемого абонента звонил, но он не ответил на звонок
21
603
Call rejected - вызов отклонен
22
480
Number changed to number in diagnostic field - индицирует о том, что вызываемый номер более не существует. В сообщение так же может быть включен новый номер вызываемого абонента
23
—
Reverse charging rejected - вариант, когда за звонок платит принимающая вызов сторона. Данное сообщение обозначает отклонение такого вызова.
24
—
Call suspended - оборудование получило запрос на приостановку вызова
25
—
Call resumed - вызов возобновлен (продолжение 24 отбоя)
26
500
Non-selected user clearing - пользователю не был назначен входящий вызов
27
404
Destination out of order - данное сообщение индицирует о том, что телефонная сигнализация не может быть доставлена через выбранный NIC (сетевой интерфейс). В данном случае, проблема скорее всего кроется на L1 или на L2 уровне (физический или канальный)
28
484
Invalid number format or incomplete address - неправильный формат вызываемого номера или номер указан не полностью
29
501
EKTS facility rejected by network - проблема на уровне платы - устройство отклонено на уровне сети
30
500
Response to STATUS ENQUIRY - сообщение ответ на запрос о состоянии
31
404
Normal, unspecified - эта причина отбоя используется в случае, если другие причины (более конкретные) не были применены
33
—
Circuit out of order - построенный канал связи вышел из строя
34
503
No circuit/channel available - нет доступного для установления соединения канала связи
35
500
Destination unattainable - нет возможности доставить сообщение до получателя
36
500
Out of order - объект функционирует не корректно
37
500
Degraded service - уведомление о том, что сервис находится в некорректном состоянии
38
503
Network out of order - сетевое соединение функционирует не корректно (вероятная проблема на уровне L3)
39
500
Transit delay range cannot be achieved - требуемый диапазон задержки (время обработки, передачи) не может быть достигнут
40
500
Throughput range cannot be achieved - требуемый диапазон пропускной способности (передача сообщения) не может быть достигнута
41
503
Temporary failure - временная неработоспособность сервиса. "Временная" означает то, что пользователь может попробовать еще раз через некоторое время
42
503
Switching equipment congestion - в настоящее время, оборудование коммутации испытывает пиковые значения нагрузки и не может обработать запрос
43
500
Access information discarded - данная причина индицирует о том, что по запросу сеть (L3) не может доставить информацию о доступе к удаленному пользователю
44
503
Requested circuit channel not available - запрошенный канал связи недоступен
45
500
Preempted - данная причина указывает на то, что вызов был прерван
46
500
Precedence call blocked - означает, что вызываемый пользователь занят вызовов с более высоким приоритетом
47
503
Resource unavailable, unspecified - причина, отправляемая в том случае, если ни одна другая не была отправлена
49
500
Quality of service unavailable - использование QoS требование не доступно
50
500
Requested facility not subscribed - пользователь запросил услугу, которую он не может получить по причине отсутствия доступа к ней
51
—
Reverse charging not allowed - вариант, когда за звонок платит принимающая вызов сторона не разрешен для данного пользователя
52
—
Outgoing calls barred - исходящий вызов запрещен для абонента
53
500
Outgoing calls barred within CUG - данная причина означает, что несмотря то, что пользователь является членом закрытой группы юзеров (CUG - Closed User Groups) для совершения исходящего вызова, ему данная итерация запрещена
54
—
Incoming calls barred - входящий вызов запрещен для абонента
55
603
Incoming calls barred within CUG - данная причина означает, что несмотря то, что пользователь является членом закрытой группы юзеров (CUG - Closed User Groups) для приема входящего вызова, ему данная итерация запрещена
56
—
Call waiting not subscribed - пользователь не имеет права (не подписан) на услугу "Ожидание вызова"
57
501
Bearer capability not authorized - пользователь запросил расширение пропускной способности канала до оборудования, но не имеет права на подобные итерации
58
501
Bearer capability not presently available - пользователь запросил расширение пропускной способности канала до оборудования, но в данный момент данная функция не доступна
63
503
Service or option not available, unspecified - сообщение сообщает о недоступности услуги в том случае, если другие причины (более конкретные) не были отправлены пользователю
65
501
Bearer service not implemented - служба передачи (переноса) информации не реализована
66
500
Channel type not implemented - устройство, посылающее данную причину не поддерживает указанный типа канала связи
67
—
Transit network selection not implemented - не удалось совершить выбор транзитной сети
68
—
Message not implemented - данное сообщение не реализовано
69
500
Requested facility not implemented - эта причина указывает на то, что устройство, отсылающее эту причину не поддерживает запрашиваемые дополнительные услуги
70
500
Only restricted digital information bearer capability is available - данное сообщение указывает на то, что пользователь запросил неограниченный доступ к пропускной способности канала связи, но устройство поддерживает только с ограничениями
79
501
Service or option not implemented, unspecified - услуга или опция не реализована (когда другие причины не были отправлены)
81
500
Invalid call reference value - эта причина указывает на то, что устройство, отсылающее эту причину, получило сообщение с идентификатором вызова, который в настоящее время не используется на интерфейсе сети пользователя
82
500
Identified channel does not exist - эта причина указывает на то, что устройство, отсылающее эту причину, получило запрос на использование канала, который не активизирован на сетевом интерфейсе. Например, если пользователь использует в потоке Е1 (PRI) тайм – слоты с 1 по 12, а запросил использовать с 3 по 24 – будет сгенерирована данная причина
83
500
A suspended call exists, but this call identity does not - вызов существует, но отсутствуют идентификаторы для него
84
500
Call identity in use - оборудование получило запрос на приостановление вызова, содержащий идентификатор вызова, под которым вызов уже значится приостановленным
85
500
No call suspended - получен запрос на возобновление вызова с идентификатором звонка, который не числится в списке приостановленных
86
500
Call having the requested call identity has been cleared - получен запрос на возобновление вызова с идентификатором звонка, который был прерван в результате тайм - аута
87
603
Called user not member of CUG - вызываемый абонент не является членом закрытой группы юзеров (CUG - Closed User Groups)
88
404
Incompatible destination - система получила запрос на установление соединения с параметрами, которые не могут быть обслужены
89
—
Non-existent abbreviated address entry - не существующий адрес
90
500
Destination address missing, and direct call not subscribed - адрес назначения не указан, а опция директивного вызова недоступна для пользователя
91
500
Invalid transit network selection (national use) - получен индикатор транзитной сети, который имеет неверный формат (в рамках рекомендации Q.931)
92
—
Invalid facility parameter 93 Mandatory information element is missing - обязательный элемент информационного сообщения отсутствует
93
500
Message type non-existent or not implemented - получено устройством сообщение не может быть интерпретировано на оборудовании
95
404
Invalid message, unspecified - неправильное сообщение. Используется только тогда, когда другие (более конкретные сообщения) не были отправлены
96
500
Mandatory information element is missing - в полученном оборудованием сообщение отсутствует важное для его обработки поле
97
500
Message type non-existent or not implemented - тоже самое что и 93 код
98
500
Message not compatible with call state or message type non-existent or not implemented - сообщение не совместимо с текущим состоянием звонка или не может быть интерпретировано оборудованием
99
500
Information element nonexistent or not implemented - информационный элемент не существует или не может быть интерпретирован оборудованием
100
500
Invalid information element contents - элемент не может быть интерпретирован. Помимо этого, одно или более полей сообщения были закодировано алгоритмом, который не поддерживает оборудованием.
101
500
Message not compatible with call state - полученное сообщение не соответствует состоянию вызова
102
408
Recovery on timer expiry - процедура восстановления по причине тайм - аута параллельно с алгоритмами обработки ошибок
103
500
Parameter non-existent or not implemented – passed on - параметр не существует или не реализован на оборудовании
111
404
Protocol error, unspecified - ошибка, которая отправляется в случае, если более детальное сообщение не было отправлено
127
500
Internetworking, unspecified - на этапе установления соединения произошел сбой