Шрифт:
md5sum /dev/cdrom
34e354760f9bb7fbf85c96f6a3f94ece /dev/cdrom
Многие типы носителей, такие как DVD, требуют точного вычисления числа блоков. Следующий пример демонстрирует проверку целостности файла образа dvd-image.iso и диска в устройстве /dev/dvd привода DVD. Вам понятно, как работает эта команда?
md5sum dvd-image.iso; dd if=/dev/dvd bs=2048 count=$(( $(stat - c "%s" dvd-image.iso) / 2048 )) | md5sum
7 Оно гласит: «ВНИМАНИЕ: если вы создали или изменили разделы DOS 6.x, прочитайте дополнительную информацию на странице справочного руководства для команды fdisk». — Примеч. пер.
16. Сети
Когда дело доходит до сетевых возможностей, трудно представить что-то, что было бы невозможно для Linux. Linux используется для создания всех видов сетевых систем, программных компонентов и устройств, включая брандмауэры, маршрутизаторы, серверы имен, сетевые устройства хранения данных (Network-Attached Storage, NAS) и так далее и тому подобное.
Насколько обширна тема сетей, настолько же обширна коллекция команд, которые можно использовать для настройки и управления ими. Мы сосредоточим свое внимание лишь на тех из них, которые чаще всего используются на практике. В число команд, выбранных для исследования в этой главе, входят команды, используемые для мониторинга сетей и передачи файлов. Дополнительно мы исследуем программу ssh, используемую для входа в удаленные системы. В этой главе рассматриваются следующие команды:
• ping — посылает пакеты ICMP ECHO_REQUEST узлам в сети.
• traceroute — выводит трассировку маршрута пакетов к сетевому узлу.
• netstat — выводит список сетевых соединений, таблицы маршрутов, статистику интерфейсов, маскируемые соединения и сведения о членстве в широковещательных группах.
• ftp — программа передачи файлов через Интернет.
• lftp — улучшенная программа передачи файлов через Интернет.
• wget — неинтерактивный загрузчик файлов из сети.
• ssh — клиент OpenSSH SSH (программа для входа в удаленные системы).
• scp — программа безопасного копирования файлов через сеть.
• sftp — программа безопасной передачи файлов через сеть.
Далее предполагается, что вы имеете некоторые базовые знания о сетях. В нашем мире повсеместного распространения Интернета каждый пользователь компьютера должен иметь представление о том, как действуют сети, хотя бы на элементарном уровне. Для полноценного использования этой главы вы должны знать следующие термины:
• IP-адрес (адрес протокола Интернета).
• Имя хоста и домена.
• URI (Uniform Resource Identifier — унифицированный идентификатор ресурса).
ПРИМЕЧАНИЕ
Для доступа к некоторым командам из рассматриваемых ниже может потребоваться установить дополнительные пакеты (в зависимости от дистрибутива) из репозиториев вашего дистрибутива, и некоторые из них могут требовать привилегий суперпользователя.
Исследование и мониторинг сети
Даже если вы не являетесь системным администратором, бывает полезно уметь оценивать производительность и функционирование сети.
ping — передача специальных пакетов сетевым узлам
Команда ping является самой простой сетевой командой. Она посылает специальные сетевые пакеты IMCP ECHO_REQUEST указанному сетевому узлу. Большинство сетевых устройств принимает эти пакеты и отвечает на них, — это позволяет проверить сетевые соединения.
ПРИМЕЧАНИЕ
Многие сетевые устройства (в том числе и компьютеры с Linux) могут настраиваться так, чтобы игнорировать эти пакеты. Обычно это делается для повышения безопасности и отчасти — чтобы ввести в заблуждение потенциального злоумышленника. Кроме того, многие брандмауэры блокируют трафик IMCP.
Например, с помощью команды ping можно проверить достижимость сетевого узла http://www.linuxcommand.org/ (один из моих любимых сайтов ;-)):
[me@linuxbox ~]$ ping linuxcommand.org
Сразу после запуска программа ping начинает посылать пакеты с определенным интервалом (по умолчанию 1 секунда), пока ее выполнение не будет прервано:
[me@linuxbox ~]$ ping linuxcommand.org