По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Во многих наших статьях проскакивают различные команды, связанные с файловыми манипуляциями – создание директорий, файлов, установка пакетов и т.д. В данной статье мы решили начать повествование последовательно. Основы Итак, в Linux в отличие от Windows существует понятие полного и относительного пути. Разница между ними в том, что полный путь всегда начинается с корневого каталога (корневой каталог обозначается как /), и далее также через слеш происходит перечисление всех названий каталогов на пути к искомому файлу или директории, а в случае относительного пути – в начале слеш не указывается. То есть без слеша путь указывается относительно нынешнего местоположения, а со слешем – относительно корневого каталога. Примеры: /home/user1/tmp/test.sh - полный путь; ~/tmp/file1 - относительный путь; Ниже вы встретите часто используемые команды для работы с файлами, архивами и установкой программ. Команды для работы с файлами и директориями Команд довольно много, я перечислю самые, на мой взгляд, часто используемые: cd - смена директории на домашнюю, можно добавлять аргументы – к примеру, cd /root; pwd - команда покажет текущий путь к директории, в которой вы находитесь в данный момент; ls - вывод списка файлов и каталогов по порядку (наверное, самая известная команда) если добавить модификаторы lax, то команда выведет форматированный список всех файлов и директорий (в том числе скрытые); cat - показывает содержимое файла, к примеру – cat /root/file.txt; tail - например, tail /root/file.txt, выводит только конец файла, удобно при работе с логами; cp - копирование директории или файла, то есть cp /root/file.txt /etc/folder1/file.txt – из /root файл будет скопирован в указанную директорию mkdir - создание директории, например, mkdir /root/1; rmdir - удаление директории, синтаксис такой же, как и у команды выше; rm -rf - очень опасная команда (и довольно популярная в интернет фольклоре), но иногда и она может пригодиться – она удаляет директорию со вложенными файлами; mv - переименование файла или директории, сначала указывается целевая директория и затем её новое название; locate - поиск файла с заданным названием; Для наглядности, посмотрите на вывод команды tail # tail install.log Installing dosfstools-3.0.9-4.el6.i686 Installing rfkill-0.3-4.el6.i686 Installing rdate-1.4-16.el6.i686 Installing bridge-utils-1.2-10.el6.i686 Installing eject-2.1.5-17.el6.i686 Installing b43-fwcutter-012-2.2.el6.i686 Installing latrace-0.5.9-2.el6.i686 Installing trace-cmd-2.2.4-3.el6.i686 Installing crash-trace-command-1.0-5.el6.i686 *** FINISHED INSTALLING PACKAGES *** В примере выше, команда tail вывела только последние 11 строк. Работа с архивами Работа с .tar архивами – очень часто встречающаяся задача, поэтому хотим привести несколько полезных команд, чтобы не пришлось лишний раз пользоваться поисковиком :) tar cf example.tar /home/example.txt - создание .tar архива, который будет содержать в себе текстовый файл example.txt; tar cjf example1.tar.codez2 /home/example1.txt - команда с тем же функционалом, только будет использоваться сжатие Bzip2; tar czf example2.tar.gz /home/example2.txt - опять архивация, только на этот раз со сжатием Gzip; tar xf example.tar - распаковка архива в текущую директорию, если тип сжатия нестандартный, то после расширения нужно добавить тип сжатия (.codez2 или .gz соответственно); Работа с .rpm пакетами Так как мы больше всего рассказываем и пишем про FreePBX, который по умолчанию скачивается с официального сайта вместе c СentOS, здесь место для пары команд по работе c RPM пакетами. Почему? Потому что CentOS – RPM-based Linux Distribution :) Команды требуют наличие прав супер - пользователя. rpm -qa - вывод списка всех установленных RPM пакетов в системе; rpm –i rpmpackage.rpm - установка пакета с именем rpmpackage; rpm –e rpmpackage - удаление пакета с таким именем; dpkg -i *.rpm - установка всех пакетов в директории; Про жёсткие диски Команда fdisk –l выводит информацию о всех подключенных жёстких и сменных дисках в системе, бывает очень полезной. Ниже пример вывод этой команды (в качестве пример рассматривается OTRS - сервер) umask 0077
img
Седьмая часть тут. Поля фиксированной длины - самый простой из описанных в словаре механизмов. Протокол определяет набор полей, какие данные содержит каждое поле и насколько велико каждое поле. Эта информация «встроена» в определение протокола, поэтому каждая реализация построена в соответствии с этими же спецификациями и, следовательно, может взаимодействовать друг с другом. Рисунок 1 иллюстрирует кодирование поля фиксированной длины, используемое в протоколе Open Shortest Path First (OSPF), взятом из RFC2328. Ряд чисел в верхней части рисунка 1 указывает отдельные биты в формате пакета; каждая строка содержит 32 бита информации. Первые 8 битов указывают номер версии, вторые 8 битов всегда имеют номер 5, следующие 16 битов содержат общую длину пакета и так далее Каждое из этих полей дополнительно определяется в спецификации протокола с видом информации, переносимой в поле и как оно закодировано. Например: Поле номера версии кодируется как целое число без знака. Это метаданные, указывающие словарь и грамматику, используемые для этого пакета. Если формат пакета необходимо изменить, номер версии может быть увеличен, что позволяет передатчикам и получателям использовать правильный словарь и грамматику при кодировании и декодировании информации в пакете Число 5 указывает тип пакета в протоколе; это часть словаря, определенного в другом месте в документе стандартов, поэтому он просто вставляется как фиксированное значение на этом рисунке. Этот конкретный пакет является пакетом подтверждения состояния канала (Link State Acknowledgment Packet). Длина пакета кодируется как целое число без знака, указывающее количество октетов (или наборов из 8 битов), содержащихся в полном пакете. Это позволяет размеру пакета варьироваться по длине в зависимости от объема передаваемой информации. Формат поля фиксированной длины имеет несколько преимуществ. Прежде всего, местоположение любого фрагмента информации в пакете будет одинаковым для каждого пакета, что означает, что легко оптимизировать код, предназначенный для кодирования и декодирования информации вокруг формата пакета. Например, обычным способом обработки формата пакета фиксированной длины является создание структуры данных в памяти, точно соответствующей формату пакета; когда пакет считывается с провода, он просто копируется в эту структуру данных. Поля в пакете могут быть прочитаны напрямую. Форматы фиксированной длины имеют тенденцию быть несколько компактными. Метаданные, необходимые для кодирования и декодирования данных, передаются «вне протокола» в форме спецификации протокола. Сами пакеты содержат только значение и никогда не содержат никакой информации о значениях. С другой стороны, форматы фиксированной длины могут тратить много места на буферизацию полей, чтобы они всегда были одинаковой длины. Например, десятичное число 1 может быть представлено одной двоичной цифрой (один бит), тогда как десятичное число 4 требует 3 двоичных цифры (три бита); если поле фиксированной длины должно быть в состоянии представить любое число от 0 до 4, оно должно быть длиной не менее 3 битов, даже если два из этих битов иногда «теряются» при представлении меньших десятичных чисел. Форматы фиксированной длины также часто занимают место, выравнивая размеры полей по общим границам памяти процессора, чтобы повысить скорость обработки. Поле, которое должно принимать значения от 0 до 3, даже если для представления полного набора значений требуется только два бита, может быть закодировано как 8-битовое поле (полный октет), чтобы обеспечить всегда выравнивание следующего поля на границе октета для более быстрой обработки в памяти. Гибкость - то, где кодирование фиксированной длины часто сталкивается с проблемами. Если какое-либо поле определено как 8-битное значение (один октет) в исходной спецификации, нет очевидного способа изменить длину поля для поддержки новых требований. Основной способ решения этой проблемы в схемах кодирования с фиксированной длиной - через номер версии. Если длина поля должна быть изменена, номер версии изменяется в форматах пакетов, поддерживающих новую длину поля. Это позволяет реализациям использовать старый формат, пока все устройства в сети не будут обновлены для поддержки нового формата; после того как все они обновлены, вся система может быть переключена на новый формат, будь то больше или меньше.
img
Привет, друг! Сегодня в статье мы расскажем, как рассчитать IP-адрес подсети с помощью инструмента ipcalc. При управлении сетью, несомненно, придется иметь дело с подсетями. Некоторые сетевые администраторы могут довольно быстро выполнять двоичные вычисления, чтобы определить маску подсети. Тем не менее, другим может потребоваться некоторая помощь, и здесь инструмент ipcalc очень пригодится. Ipcalc на самом деле делает намного больше - он принимает на вход IP-адрес и маску сети и на выходе вы получаете адрес сети, Cisco wildcard маску, широковещательный адрес, минимальный и максимальный хост и общее количество хостов. Вы также можете использовать его в качестве учебного пособия для представления результатов подсетей в простых для понимания двоичных значениях. Некоторые из применений ipcalc: Проверить IP-адрес Показать рассчитанный широковещательный адрес Отображение имени хоста, определенного через DNS Показать сетевой адрес или префикс Как установить ipcalc в Linux Чтобы установить ipcalc, просто запустите одну из приведенных ниже команд в зависимости от используемого дистрибутива Linux. $ sudo apt install ipcalc Пакет ipcalc должен автоматически устанавливаться в CentOS / RHEL / Fedora, и он является частью пакета initscripts, но если по какой-то причине он отсутствует, вы можете установить его с помощью: # yum install initscripts #RHEL/CentOS # dnf install initscripts #Fedora Как использовать ipcalc в Linux Ниже вы можете увидеть несколько примеров использования ipcalc. Получить информацию о сетевом адресе: # ipcalc 192.168.20.0 Результат примера: Address: 192.168.20.0 11000000.10101000.00010100. 00000000 Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000 Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111 => Network: 192.168.20.0/24 11000000.10101000.00010100. 00000000 HostMin: 192.168.20.1 11000000.10101000.00010100. 00000001 HostMax: 192.168.20.254 11000000.10101000.00010100. 11111110 Broadcast: 192.168.20.255 11000000.10101000.00010100. 11111111 Hosts/Net: 254 Class C, Private Internet Рассчитайте подсеть для 192.168.20.0/24. # ipcalc 192.168.20.0/24 Результат: Address: 192.168.20.0 11000000.10101000.00010100. 00000000 Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000 Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111 => Network: 192.168.20.0/24 11000000.10101000.00010100. 00000000 HostMin: 192.168.20.1 11000000.10101000.00010100. 00000001 HostMax: 192.168.20.254 11000000.10101000.00010100. 11111110 Broadcast: 192.168.20.255 11000000.10101000.00010100. 11111111 Hosts/Net: 254 Class C, Private Internet Рассчитайте одну подсеть с 10 хостами: # ipcalc 192.168.20.0 -s 10 Результат: Address: 192.168.20.0 11000000.10101000.00010100. 00000000 Netmask: 255.255.255.0 = 24 11111111.11111111.11111111. 00000000 Wildcard: 0.0.0.255 00000000.00000000.00000000. 11111111 => Network: 192.168.20.0/24 11000000.10101000.00010100. 00000000 HostMin: 192.168.20.1 11000000.10101000.00010100. 00000001 HostMax: 192.168.20.254 11000000.10101000.00010100. 11111110 Broadcast: 192.168.20.255 11000000.10101000.00010100. 11111111 Hosts/Net: 254 Class C, Private Internet 1. Requested size: 10 hosts Netmask: 255.255.255.240 = 28 11111111.11111111.11111111.1111 0000 Network: 192.168.20.0/28 11000000.10101000.00010100.0000 0000 HostMin: 192.168.20.1 11000000.10101000.00010100.0000 0001 HostMax: 192.168.20.14 11000000.10101000.00010100.0000 1110 Broadcast: 192.168.20.15 11000000.10101000.00010100.0000 1111 Hosts/Net: 14 Class C, Private Internet Needed size: 16 addresses. Used network: 192.168.20.0/28 Unused: 192.168.20.16/28 192.168.20.32/27 192.168.20.64/26 192.168.20.128/25 Если вы хотите убрать двоичный вывод, вы можете использовать опцию -b, как показано ниже. # ipcalc -b 192.168.20.100 Результат: Address: 192.168.20.100 Netmask: 255.255.255.0 = 24 Wildcard: 0.0.0.255 => Network: 192.168.20.0/24 HostMin: 192.168.20.1 HostMax: 192.168.20.254 Broadcast: 192.168.20.255 Hosts/Net: 254 Class C, Private Internet Чтобы узнать больше об использовании ipcalc, вы можете использовать: # ipcalc --help # man ipcalc
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59