Установка PostgreSQL из дистрибутива Linux

В статье «Что такое репозиторий» мы уже касались способов установки программного обеспечения в ОС Linux. Напоминаем, что принцип установки ПО в Linux несколько отличается от установки ПО в Windows.

Команды Linux для навигации в терминале

  1. &&. Строго говоря, это не команда. Если вы хотите выполнить сразу несколько команд, поставьте между ними двойной амперсанд вот так: первая_команда && вторая_команда. Терминал выполнит команды по порядку. Вы можете ввести столько команд, сколько захотите.
  2. alias. Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введите alias длинная_команда короткая_команда.
  3. cd. Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введите cd адрес_папки, и терминал будет работать с файлами, которые там находятся.
  4. clear. Очищает окно терминала от всех сообщений.
  5. history. Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними командами с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел так: ваша_команда.
  6. man. Отображает руководство по программам и командам Linux. Введите man имя_пакетаили man ваша_команда.
  7. whatis. Отображает краткое описание какой-либо программы. Введите команду и название программы whatis имя_пакета.
Команды Linux для навигации в терминале

Состав дистрибутива PostgreSQL

К сожалению, во время написания этой статьи стандарт на установку PostgreSQL еще не был выработан. Такой стандарт в большинстве слу­чаев стал бы благом, хотя иногда и мог бы создавать некоторые труд­ности.

В состав PostgreSQL входят ряд приложений, утилит и каталогов с данными. Его главное приложение (postmaster или postgres) содержит серверный код, отвечающий за обслуживание запросов на доступ к данным от клиентов. Утилиты, такие как pg_ctl, применяются для уп­равления главным серверным процессом, который должен выполнять­ся постоянно, обеспечивая работу сервера. В каталоге data находятся все файлы, необходимые базе данных. В них хранятся не только таб­лицы и записи, но и системные параметры.

По умолчанию устанавливаются все компоненты PostgreSQL, пере­численные в табл. 2, каждый в соответствующем подкаталоге. В ка­честве общего каталога (и каталога по умолчанию при установке из ис­ходного кода) обычно используется /usr/local/pgsql.

Главный каталог PostgreSQL включает в себя следующие подката­логи:

Таблица 2. Компоненты PostgreSQL

Каталог

Описание

bin

Приложения и утилиты, например pg_ctl и postmaster

data

Файлы базы данных

doc

Документация в формате HTML

include

Заголовочные файлы для разработки приложений PostgreSQL

lib

Библиотеки для разработки приложений PostgreSQL

man

Руководство по PostgreSQL

share

Примеры файлов конфигурации

Читайте также:  Call of Duty: как освободить пространство, удалив пакеты

Недостаток работы с единственным каталогом в том, что неизменные файлы программ и изменяющиеся данные хранятся совместно, а это не всегда удобно.

Файлы, используемые PostgreSQL, можно разделить на несколько ка­тегорий. Файлы программ не могут и не должны изменяться во время работы. Файлы журналов, создаваемые сервером, содержат информа­цию о доступе к базе данных и могут быть очень полезны в решении проблем. Они растут по мере того, как в них добавляются новые запи­си. Файлы данных — это сердце системы, в них хранится вся информа­ция всех баз данных.

Из соображений эффективности и удобства администрирования фай­лы разных типов можно поместить в разные каталоги. Гибкость PostgreSQL позволяет хранить файлы программ, системных журналов и данных в различных местах, а дистрибутивы Linux позволяют извлечь из этой гибкости максимум выгоды.

Например, в SuSE 7.0 программы PostgreSQL размещаются вместе с остальными приложениями в /usr/bin, для журнальных файлов от­водится /var/log/postgresql, а данные хранятся в /var/lib/pgsql/data. Благодаря этому можно легко разделить процедуры резервного копи­рования наиболее важных файлов данных и менее критичных жур­нальных файлов и т. п.

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

$ rpm -q -l postgres /usr/bin/createdb …. /usr/share/man/manl/ $

Чтобы просмотреть все установленные файлы, придется запустить rpm для каждого из пакетов, входящих в PostgreSQL:

$ rpm -q -l pg_serv /sbin/conf.d/ ….. /var/lib/pgsql/data/pg_options $

В разных дистрибутивах названия пакетов могут слегка отличаться, в данном случае серверному пакету дано имя pg_serv. Вместо rpm мож­но использовать графический менеджер пакетов, например kpackage (рис. 2), поставляемый в комплекте с оболочкой KDE:

Рис. 2. Графический менеджер пакетов kpackage

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

Иногда бывает удобнее установить PostgreSQL из исходного кода.

Вас заинтересует / Intresting for you: Устанавливать или обновлять Po… 911 просмотров Максим Николенко Sun, 12 Aug 2018, 11:07:20 Установка PostgreSQL 10.5 из и… 1425 просмотров Tarcoola Ningae Sun, 19 Aug 2018, 11:45:55 Основные типы данных PostgreSQ… 3532 просмотров Андрей Волков Mon, 30 Jul 2018, 11:44:18 Author: Tarcoola NingaeДругие статьи автора:

  • Установка PostgreSQL 10.5 из исходного кода на Unix и Linux
  • Создание веб-страниц в SQL*Plus — MARKUP

Названия пакетов

Каждый пакет RPM имеет название, которое состоит из нескольких частей:

  • Название программы;
  • Версия программы;
  • Номер выпущенной версии (количество раз пересборки программы одной и той же версии). Также часто используется для обозначения дистрибутива, под который собран этот пакет, например, mdv (Mandriva Linux) или fc4 (Fedora Core 4);
  • Архитектура, под которую собран пакет (i386, ppc и т. д.)
Читайте также:  Замена тачскрина на планшете своими руками

Собранный пакет обычно имеет такой формат названия:

<название>-<версия>-<выпуск>.<архитектура>.rpm

Например:

Иногда в пакет входят исходные ы. Такие пакеты не содержат информации об архитектуре, она заменяется на src. Например:

Библиотеки чаще всего распространяются в двух отдельных пакетах. Первый содержит собранный , второй (обычно к нему добавляют -devel) содержит заголовочные файлы и другие файлы, необходимые разработчикам. Необходимо следить за тем, чтобы версии этих двух пакетов совпадали, иначе библиотеки могут работать некорректно. Пакеты с расширением не зависят от конкретной архитектуры компьютера. Обычно они содержат графику и тексты, используемые другими программами.

Команды для управления правами на файлы и директории

Все, что нужно для разрешения проблем, связанных с правами в Linux.

  • sudo — выдает права суперпользователя. Используется перед любой другой командой в терминале, если нужно выполнить ее от имени администратора. Многие программы и операции запускаются исключительно при наличии этих прав, так что sudo используется часто. Например, чтобы обновить список пакетов в Ubuntu, введем: sudo apt-get update. При этом система запросит пароль администратора.
  • sudo su — переводит терминал в режим суперпользователя. В нем каждая введенная команда будет восприниматься системой так, будто перед ней ввели sudo. Помогает запускать несколько скриптов и утилит, требующих права администратора, без необходимости постоянно корректировать их или вводить пароль от учетной записи.
  • sudo gksudo — используется для запуска графических утилит от имени администратора. В Windows для этого есть специальная кнопка в контекстном меню, а в Linux — префикс. Синтаксис такой:

​sudo gksudo название приложения, нуждающееся в запуске от имени администратора

  • sudo !! — запускает предыдущую команду от имени администратора. Используется, если до этого была неудачная попытка запустить программу. Помогает не тратить время на повторный ввод большого количества символов.
  • chmod — корректирует права доступа к выбранному файлу. Применяется исключительно с набором аргументов, обозначающих список прав. Допустим, я хочу выдать права на чтение и запись файла на рабочем столе. Для этого введу в терминал: chmod 777 ~/Desktop/. Теперь его можно открывать и редактировать. Аналогичным образом пользователи поступают с системными файлами, когда приходит время что-то в них менять. По умолчанию большая их часть защищена от записи.
  • chown — назначает владельца для выбранной директории, документа, картинки или любого другого элемента в файловой системе. Синтаксис следующий:
Читайте также:  Ubuntu Phone os установка вместо Android

chown имя учетной записи, которому надо передать права путь до файла, права на который нужно передать

Компиляция программ

Большинство программ для Linux являются открытыми, то есть распространяются вместе с исходным кодом. Это позволяет участвовать в разработке широкому кругу программистов, исправлять ошибки, дорабатывать программы, проверять их на наличие вредоносного кода и закладок, переносить программы на другие платформы и т. д. Кроме того, при компиляции можно оптимизировать работу программ, например скорость их выполнения. С другой стороны, компиляция программ является самым сложным видом их установки. Пользователь должен сам отслеживать зависимости и обрабатывать ошибки, которые могут возникнуть при компиляции. Исходный код обычно поставляется в виде архивов tar, сжатых архиваторами gzip: , tgz, bzip2:

Сначала необходимо распаковать файл с исходным кодом, выполнив команду:

tar -xvf

Если файл сжатый, то тип архиватора будет распознан автоматически, поэтому можно не указывать его в виде ключа. Исходный код будет распакован в директорию, соответствующую названию файла, в данном случае program. Переходим в директорию с исходным кодом:

cd program

Если в папке есть файлы README или INSTALL необходимо их прочесть, там обычно содержится важная информация по установке и список необходимых библиотек, которые следует установить перед компиляцией. Посмотреть список файлов можно с помощью команды ls, а просмотреть файл README с помощью команды less README.

Чаще всего компиляция выполняется с помощью следующих команд: ./configure

configure — это скрипт, который проверяет, есть ли все программы и библиотеки, необходимые для компиляции и выполняет подготовку к основному процессу. В случае, если скрипт выдаст ошибку, необходимо будет установить соответствующие программы и библиотеки. Если ошибок нет, выполняем непосредственно компиляцию командой:

make

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

make install

В случае, если установка проводится в системные директории, необходимы права root или команда sudo:

sudo make install

После установки можно удалить ненужные временный файлы командой:

sudo make clean

Удаление программы, которая установлена таким образом, обычно производится с помощью команды:

sudo make uninstall

Упомянем еще один способ установки программ, а конкретно игр.

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