Администрирование Linux
  • Введение в дисциплину
    • Функции, права и ответственность системного администратор
    • Сетевые операционные системы
    • Знакомство с Linux
    • Дистрибутивы Linux
    • Графические оболочки Linux
    • Важно! Основы работы с ВМ!
    • Установка Linux
    • Запуск и останов системы
    • Общие сведения о работе в командной оболочке Linux
      • Документация по ОС Linux
      • Сокращения команд
      • Работа с потоком данных и его фильтрация
      • Выполнение команд. Простейшие команды для работы с каталогами
    • Требования к практическим работам
      • Правила оформления и сдачи отчётов
    • Контрольная работа
    • Практическая работа №1
  • Базовые задачи
    • Работа с пользователями в Linux
      • Редактирование файла Sudoers
      • /etc/passwd и /etc/shadow
      • Права доступа
      • Списки контроля доступа и расширенные атрибуты
      • Практическая работа №2. Управление учетными записями
      • Практическая работа №3. Управление правами доступа
    • Установка программ (утилит) пакетным менеджером
      • Установка программ (утилит) пакетным менеджером. Установка из архивов (тарболов)
      • Troubeshooting пакетных менеджеров
      • Практическая работа №4. Установка программ в Linux
    • Процессы и потребление ресурсов сервера
      • Процессы и потребление ресурсов сервера. Практика
      • Мониторинг процессов и ресурсов в ОС Linux
      • Система инициализации SystemD
      • Практическая работа №5
    • Контрольная работа
  • Управление файлами
    • Структура файловой системы Linux
      • Файлы-устройства
      • Типы файлов (MIME)
      • Сведения об именах файлов
    • Файловые менеджеры Linux
    • Работа с файлами и каталогами в Linux
      • Поиск информации в ОС Linux (find,grep,locate,wc, cut ...)
    • Архивирование файлов в Linux
    • Ссылки. Указатели на файл в ОС Linux
    • Создание раздела диска в Linux
      • Монтирование и разметка диска. Просмотр размера диска
    • Запись cd/dvd дисков в Linux
    • Практическая работа №6. Работа с файлами в UNIX
    • Контрольная работа
  • Сетевые настройки Linux
    • Сетевые настройки Linux
      • Вариант № 1. Сетевые настройки дистрибутивов, основанных на Debian (Astra Linux, Ubuntu, Kubuntu)
      • Вариант № 2. RedHat-based дистрибутивы ( RedOS, OpenSuse, CentOS, Fedora)
    • Настройка параметров прокси
    • Поиск и устранение неисправностей с сетевыми параметрами
      • 11 примеров использования netstat
      • Использование команд ifup, ifdown и ifquery на Linux
    • Практическая работа №7. Управление сетью
    • Iptables, firewalld, ufw, nftables
    • Расчет сети с помощью ipcalc
    • Контрольная работа
  • Сервисы Linux
    • Получение удаленного доступа к сервер
      • Про SSH port forwarding в Linux
    • Протокол DHCP
      • Настройка DHCP сервера (isc-dhcp-server)
    • Протокол DNS
      • Настройка DNS сервера (BIND9)
    • Протокол NTP
      • Настройка NTP сервера
    • Протокол FTP
      • Настройка FTP-сервера (vsftpd)
    • Протокол samba
      • Настройка Samba
    • Сетевая файловая система NFS
      • Настройка NFS
    • Настройка центра сертификации OpenSSL
    • Системы управления базами данных
      • Установка и настройка СУБД MySQL
      • Установка и настройка СУБД MongoDB
    • Веб-сервер
      • Apache
        • Установка и настройка стека LAMP
        • Установка и настройка PHPMyAdmin
        • Установка и настройка Wordpress
      • Nginx
        • Установка и настройка Nginx
    • Docker
      • Установка и развертывание приложения в Docker
    • Почтовый сервер Postfix, Dovecot
    • Что такое прокси сервер
      • Прокси Squid
    • OTRS
    • LMS
    • MediaWiki
    • ClamAV
    • CUPS
    • Rsyslog: syslog сервер в Linux
    • Резервное копирование в Linux
      • Резервное копирование через скрипт
      • Bacula
    • Контрольная работа
  • Дополнительно
    • Использование скриптов в ОС Linux
      • Написание bash-скриптов
      • Написание скриптов на Perl
      • Написание скриптов на Python
    • Игры и пасхалки в консоли Linux
    • Полезные ресурсы
    • Рекомендации ФСТЭК по безопасной настройке операционных систем Linux
Powered by GitBook
On this page
  • Практика
  • Скачивание пакетов и файлов в ОС Linux
  • Debian
  • RHEL/Fedora
  • Установка пакетов из архивов (тарболов)
  • Использование wget
  • 1. Загрузка файла
  • 2. Сохранить файл с другим именем
  • 3. Скачать несколько файлов
  • 4. Взять URL из файла
  • 5. Продолжить загрузку
  • 6. Загрузка файлов в фоне
  • 7. Ограничение скорости загрузки
  • 8. Подключение по логину и паролю
  • 9. Загрузить и выполнить
  • 10. Сохранить файл в папке
  • 11. Передать информацию о браузере
  • 12. Количество попыток загрузки
  • 13. Квота загрузки
  • 14. Скачать сайт
  1. Базовые задачи
  2. Установка программ (утилит) пакетным менеджером

Установка программ (утилит) пакетным менеджером. Установка из архивов (тарболов)

PreviousУстановка программ (утилит) пакетным менеджеромNextTroubeshooting пакетных менеджеров

Last updated 1 year ago

Практика

На практике пользователю необходимо уметь взаимодействовать с пакетными менеджерами – устанавливать и удалять пакеты.

Скачивание пакетов и файлов в ОС Linux

Для установки пакетов через исходники, необходимо наличие самих пакетов в системе. Их можно скачать по прямой ссылке, используя утилит wget или curl. Рассмотрим базовые примеры использования данных утилит:

wget

Это очень мощная утилита, способная работать по протоколам HTTP, HTTPS и FTP. Кроме того поддерживается работа через прокси. Команда wget , может выполнять загрузку файлов даже в фоновом режиме - без участия пользователя, в отличии от большинства веб браузеров.

Кроме скачивания файлов, есть возможность сохранять веб страницы или даже целые веб-сайты, благодаря функции открытия ссылок на страницах. Такую возможность еще называют рекурсивной загрузкой.

Команда wget имеет очень простой синтаксис:

$ wget опции адрес_ссылки

Можно указать не один URL для загрузки, а сразу несколько. Опции указывать не обязательно, но в большинстве случаев они используются для настройки параметров загрузки.

Debian

1.

Синтаксис dpkg:

dpkg <ключ> <пакет>

Установка пакета:

  • Установка пакета(ов): -i: dpkg -i package.deb

  • Установка пакета(ов) - 2й вариант: --install: dpkg --install package.deb

  • Установка всех пакетов из указанной директории и её поддиректорий (рекурсивно): -R: dpkg -R --install /путь/до/нужной/директории

  • Распаковка пакета без установки: --unpack: dpkg --unpack package.deb

  • Раздельная распаковка и установка пакета: --unpack, --configure: dpkg --unpack package.deb && dpkg --configure package.deb

Для установки пакета через dpkg необходимо наличие скачанного файла пакета в формате .deb в системе

Удаление пакета:

  • Удаление пакета без зависимостей: -r: dpkg -r package

  • Полное удаление пакета: -P: dpkg -P package

Просмотр информации о пакете:

  • Просмотр содержимого пакета: -c: dpkg -c package

  • Проверить, установлен ли пакет: -s: dpkg -s package

  • Просмотреть, куда установлены файлы пакета: -L: dpkg -L package

Синтаксис apt:

apt <действие> <пакет> <ключ>

Установка или обновление пакета:

  • Установка пакета: install: apt install package

Можно также установить программу непосредственно из пакета .deb, скачанного вами ранее: apt install docker.deb

  • Обновление списков пакетов: update: apt update

  • Обновление пакетов: upgrade, full-upgrade: apt upgrade && apt full-upgrade

Удаление пакетов:

  • Удаление пакета: remove: apt remove package

  • Полное удаление пакета: purge: apt purge package

  • Удаление брошенных зависимостей, более не используемых никакими пакетами в системе: autoremove: apt autoremove

Информация о пакетах:

  • Информация о пакете: show: apt show package

  • Список всех установленных пакетов: list --installed: apt list --installed

  • Список пакетов, требующих обновления: list --upgradable: apt list --upgradable

  • Поиск пакетов:

apt-cache search <название пакета>

RHEL/Fedora

1. rpm

Синтаксис rpm:

rpm <ключ> <пакет>

Установка пакетов:

  • Установка пакета: -i: rpm -i package.rpm

  • Установка пакета - 2й вариант: --install: rpm --install package.rpm

  • Установка пакета без учёта его зависимостей: --nodeps: rpm -i --nodeps package.rpm

  • Обновление пакета: -U: rpm -U package.rpm

Для установки пакета через rpm необходимо наличие скачанного файла пакета в формате .rpm в системе

Удаление пакетов:

  • Удаление пакета: -e: rpm -e package.rpm

  • Удаление пакета - 2й вариант: --erace: rpm --erace package.rpm

  • Удаление пакета без учёта его зависимостей: --nodeps: rpm -e --nodeps package.rpm

Сбор информации о пакете:

  • Краткая информация о пакете -qi: rpm -qi openssh-server

  • Полное наименование пакета и его версия -q: rpm -q gcc

  • Список файлов пакета -ql: rpm -ql

  • Узнать пакет, которому принадлежит файл -qf: rpm -qf /etc/sshd_config

*В дистрибутиве ALT Linux директория будет /etc/openssh/sshd_config

  • Вспомнить полное название пакета -qa: rpm -qa | grep netscape

  • Вспомнить каталог пакета -qal: rpm -qal | grep -i monitors

  • Информация о неинсталированном пакете -qip: rpm -qip /net/rdist/dist/contrib/libc6/i386/x11amp-0.65r2-1.i386.rpm

  • Узнать зависимости пакета -qRp: rpm -qRp /net/rdist/dist/contrib/libc6/i386/x11amp-0.9-alpha2-2.i386.rpm

  • Проверка текущего состояния пакета -qs: rpm -qs mytetra

    normal    /usr/bin/mytetra
    normal    /usr/share/applications/mytetra.desktop
    normal    /usr/share/doc/mytetra-1.42.2
    normal    /usr/share/doc/mytetra-1.42.2/readme.txt
    normal    /usr/share/icons/hicolor/48x48/apps/mytetra.png

Данная команда позволяет сравнить текущее состояние файлов пакета с информацией, записанной в базе данных.

Это требуется, например, при проверке, не испорчены ли какие-нибудь важные для системы файлы (такое случается после внезапного отключения питания). При нахождении различий печатается ключевая строка, с обозначением отличий и имя файла, в котором они найдены. Сравниваются следующие параметры:

  • Проверка целостности указанного пакета -Vf: rpm -Vf /путь/к/программе

    # rpm -Vf /bin/mount
    .M.......    /bin/mount
    .M.......    /bin/umount

  • 5 Контрольная сумма (подсчитанная по алгоритму MD5)

  • S Размер файла

  • L Куда указывает символьный линк (если проверяемый файл является симлинком)

  • T Время модификации

  • D Устройство (раздел), на котором расположен файл

  • U Владелец

  • G Группа-владелец

  • M Права доступа

Проверку лучше выполнять как "root", так как некоторые файлы (например, /usr/X11R6/bin/xterm) могут быть недоступны на чтение другим пользователям и для них всегда будет выдаваться несовпадение по контрольной сумме.

Синтаксис dnf:

dnf <действие> <пакет> <ключ>

Установка или обновление пакета:

  • Установка пакета: install: dnf install package

  • Установка группы пакетов: groupinstall: dnf groupinstall 'название группы'

  • Проверка обновлений: check-update: dnf check-update

  • Установка обновлений: update: dnf update

  • Обновление конкретного пакета: update: dnf update package

  • Обновление группы пакетов: groupupdate: dnf groupupdate 'название группы'

  • Просмотр списка всех доступных групп: grouplist: dnf grouplist

Удаление пакета:

  • Удаление одного пакета с его зависимостями: remove: dnf remove package

  • Удаление пакетов из определённой группы: groupremove: dnf groupremove 'имя группы'

Информация о пакете:

  • Поиск определённого пакета по названию и описанию: search: dnf search package

  • Список всех пакетов: list: dnf list

  • Список всех установленных в системе пакетов: list installed: dnf list installed

  • Информация о пакете: info: dnf info package

Установка пакетов из архивов (тарболов)

Дистрибутив с пакетом, представляет из себя архив с кучей файлов и обычно имеет расширение .tar , .tar.gz , .bz, .tgz ну или что то похожее.

Для архивов сжатых с помощью GZIP (gz, gz2 и т.д.) выполняем:

tar -xvzf имя_файла

Для архивов сжатых с помощью BZIP (bz, bz2 и т.д.) выполняем:

tar -xvjf имя_файла

Команды Tar:

  • x — извлечь файлы из архива;

  • v — подробный вывод информации на экран;

  • f — Обязательная опция. Если не указать, Tar будет пытаться использовать магнитную ленту вместо файла;

  • z — обработать архив сжатый gzip’ом;

  • j — обработать архив сжатый bzip’ом.

После выполнения, будет создана папка с именем, идентичным названию пакета.

Далее необходимо открыть эту созданную папку

cd имя_папки

Далее все зависит от того, как была собрана программа, в виде исполняемого файла, или в исходном коде, который сначала необходимо скомпилировать и лишь потом устанавливать. В любом случае для начала лучше прочитать инструкцию, которая должна присутствовать в распакованном архиве и, как правило, называется README, или что то похожее.

Если программа собрана в виде исполняемого файла, то в папке будет находиться файл, с расширением .sh, обычно он так и называется install.sh. Его достаточно просто запустить на исполнение:

./install.sh

Если же программа представлено в исходном коде, выполняем следующие команды:

./configure #Если не сработало, переходим к след. команде
make
make install

После установки делаем:

make clean

Использование wget

Команда wget , обычно поставляется по умолчанию в большинстве дистрибутивов, но если нет, ее можно очень просто установить. Например установка с помощью yum будет выглядеть следующим образом:

yum -y install wget

А в дистрибутивах основанных на Debian:

sudo apt install wget

Теперь перейдем непосредственно к примерам:

1. Загрузка файла

Команда wget скачает один файл и сохранит его в текущей директории. Во время загрузки мы увидим прогресс, размер файла, дату его последнего изменения, а также скорость загрузки:

wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

2. Сохранить файл с другим именем

Опция -О позволяет задать имя сохраняемому файлу, например, скачать файл wget с именем wget.zip:

wget -O wget.zip http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

3. Скачать несколько файлов

Вы можете скачать несколько файлов одной командой даже по разным протоколам, просто указав их URL:

wget http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz ftp://ftp.gnu.org/gnu/wget/wget-1.10.1.tar.gz.sig

4. Взять URL из файла

Вы можете сохранить несколько URL в файл, а затем загрузить их все, передав файл опции -i. Например создадим файл tmp.txt, со ссылками для загрузки wget, а затем скачаем его:

wget -i /wget/tmp.txt

5. Продолжить загрузку

Утилита wget рассчитана на работу в медленных и нестабильных сетях. Поэтому если вы загружали большой файл, и во время загрузки было потеряно соединение, то вы можете скачать файл wget с помощью опции -c.

wget -c http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

6. Загрузка файлов в фоне

Опция -b заставляет программу работать в фоновом режиме, весь вывод будет записан в лог файл, для настройки лог файла используются специальные ключи wget:

wget -b -o ~/wget.log http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

7. Ограничение скорости загрузки

Команда wget позволяет не только продолжать загрузку файлов, но и ограничивать скорость загрузки. Для этого есть опция --limit-rate. Например ограничим скорость до 100 килобит:

wget --limit-rate=100k ftp://ftp.iinet.net.au/debian/debian-cd/8.4.0/amd64/iso-dvd/debian-8.4.0-amd64-DVD-1.iso

Здесь доступны, как и в других подобных командах индексы для указания скорости - k - килобит, m - мегабит, g - гигабит, и так далее.

8. Подключение по логину и паролю

Некоторые ресурсы требуют аутентификации, для загрузки их файлов. С помощью опций --http-user=username, –http-password=password и --ftp-user=username, --ftp-password=password вы можете задать имя пользователя и пароль для HTTP или FTP ресурсов.

wget --http-user=narad --http-password=password http://mirrors.hns.net.in/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-LiveDVD.iso

Или:

wget --ftp-user=narad --ftp-password=password ftp://ftp.iinet.net.au/debian/debian-cd/6.0.5/i386/iso-dvd/debian-6.0.5-i386-DVD-1.iso

9. Загрузить и выполнить

Вы, наверное, уже видели такие команды. wget позволяет сразу же выполнять скачанные скрипты:

wget -O - http://сайт/скрипт.sh | bash

Если опции -O не передать аргументов, то скачанный файл будет выведен в стандартный вывод, затем мы его можем перенаправить интерпретатору bash, как показано выше.

10. Сохранить файл в папке

По умолчанию wget сохраняет файл в текущую папку, но это поведение очень легко изменить с помощью опции -P:

wget -P ~/Downloads/ http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

11. Передать информацию о браузере

Некоторые сайты фильтруют ботов, но мы можем передать фальшивую информацию о нашем браузере (user-agent) и страницу с которой мы пришли (http-referer).

wget ‐‐refer=http://google.com ‐‐user-agent=”Mozilla/5.0 Firefox/4.0.1″ //losst.pro

12. Количество попыток загрузки

По умолчанию wget пытается повторить загрузку 20 раз, перед тем как завершить работу с ошибкой. Количество раз можно изменить с помощью опции --tries:

wget --tries=75 http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

13. Квота загрузки

Если вам доступно только ограниченное количество трафика, вы можете указать утилите, какое количество информации можно скачивать, например разрешим скачать файлов из списка только на десять мегабайт:

wget -Q10m -i download-list.txt

Здесь работают те же индексы для указания размера - k, m, g, и т д.

14. Скачать сайт

Wget позволяет не только скачивать одиночные файлы, но и целые сайты, чтобы вы могли их потом просматривать в оффлайне. Использование wget, чтобы скачать сайт в linux выглядит вот так:

wget --mirror -p --convert-links -P ./<папка> адрес_сайта

2.

2. - ссылка для устаревшего yum, форком которого является dnf. У них одинаковые синтаксис и основные опции.

dpkg
apt
dnf
Программа wget
Аналоги программ Windows в Linux
Изучаем команду wget на 12 примерахHabr
Logo
Logo