Проблема с ключами в Arch Linux

При очередном обновлении часть пакетов не смогла обновиться ругаясь на неправильный ключ.

Такая-же проблема появляется иногда при обновлении отдельных пакетов.

Например:

vdpauinfo-0.9.tar.gz ... СБОЙ (неизвестный открытый ключ 1BEF3D8401A68861)

Решение оказалось довольно простым, хотя и пришлось перепробовать несколько вариантов.

$ gpg --keyserver keys.gnupg.net --recv-keys <не найденный ключ>

Пример:

$ gpg --keyserver keys.gnupg.net --recv-keys 1BEF3D8401A68861
gpg: ключ 09BA9635: импортирован открытый ключ "Aaron Plattner "
gpg: абсолютно доверенных ключей не найдено
gpg: Всего обработано: 1
gpg:                  импортировано: 1

Базовые операции в PostgreSQL

Запуск psql под пользователем postgres:

psql -h localhost -p 5432 -U user_name -W

Создать базу данных и пользователя:

postgres=# CREATE DATABASE test_database;
CREATE DATABASE

postgres=# CREATE USER test_user WITH password 'qwerty';
CREATE ROLE

postgres=# GRANT ALL privileges ON DATABASE test_database TO test_user;
GRANT

Изменить владельца базы:

ALTER DATABASE name OWNER TO new_owner;

Удалить базу данных и пользователя:

postgres=# DROP DATABASE test_database;
DROP DATABASE

postgres=# DROP USER test_user;
DROP USER
Читать далее «Базовые операции в PostgreSQL»

Монтирование образов qcow2

Образ виртуалки qcow2 можно примонтировать локально. Это может понадобиться чтобы вытащить или изменить нужные файлы даже если виртуалка не может сама загрузиться.
Для монтирования нужно выполнить несколько команд:

modprobe nbd max_part=8
qemu-nbd -c /dev/nbd0 название_образа.qcow2
mkdir /mnt/qemu
mount /dev/nbd0p1 /mnt/qemu

Диск монтируется в режиме чтения-записи. Чтобы отмонтировать диск и освободить ресурсы выполним обратную операцию:

umount /mnt/qemu
rm -R /mnt/qemu
qemu-nbd -d /dev/nbd0
modprobe -r nbd

MySQL: Импорт и экспорт базы при помощи консоли

Импорт и экспорт базы данных mysql при помощи консоли, я думаю, — это самый универсальный и самый удобный способ, по сравнению с тем же phpmyadmin, который нужно ещё и устанавливать, и настраивать. А работа с консолью занимает минимум времени.

Импорт

Сперва необходимо создать базу данных.

# mysql -uимя_пользователя -p имя_базы < db.sql

Экспорт

# mysqldump -uимя_пользователя -p имя_базы > db.sql

Значения «имя_пользователя» и «имя_базы» замените на имя пользователя и имя базы данных соответственно.

Для экспорта нескольких баз данных можно воспользоваться вот такой командой:

# mysqldump -uroot -p -B база_1 база_2 база_3 > db.sql

Где «база_1», «база_2», «база_3» — имена нужных для копирования баз данных, а «-B» — указание, что производится копирование нескольких баз.

Также утилита mysqldump позволяет сделать экспорт всех баз на сервере в один файл sql. Это делает команда:

# mysqldump -uroot -p -A > alldb.sql

MySQL: Как удалить базу данных и пользователя

Чтобы удалить базу данных и пользователя этой базы, нужно сначала подключиться к серверу mysql:

# mysql -uroot -pMyPassword

Затем удалить базу:

mysql> DROP DATABASE basename;

И удалить пользователя:

mysql> DROP USER 'username'@'localhost';

Вместо basename указать имя удаляемой базы данных.

Вместо username указать имя удаляемого пользователя. localhost, в некоторых случаях, может быть заменён доменным именем сервера, ip адресом.

MySQL: как изменить пароль пользователя

Бывает так, что нужно оперативно изменить пароль пользователя, а панели управления на сервере нет. В этом случае можно воспользоваться консольной командой, которую нужно выполнять от имени root на mysql-сервере.

mysql> SET PASSWORD FOR 'username'@'hostname' = PASSWORD('newpass');

username — имя пользователя базы данных.
hostname — домен, как правило, localhost или IP 127.0.0.1
newpass — новый пароль.

Как создать базу данных и пользователя MySQL

Если на вашем сервере не установлена какая-нибудь удобная панель администрирования и вам нужно добавить пользователя и базу данных mysql для создания сайта, сделать это можно через консоль.

Для начала подключитесь к серверу mysql.

# mysql -u root -p

При этом, будет запрошен пароль администратора.

Создаём базу данных:

mysql> CREATE DATABASE `db`;

name замените на имя базы данных.

Следующим шагом будет создание пользователя базы данных. В консоли напечатайте команду:

mysql> CREATE USER 'name'@'localhost' IDENTIFIED BY 'password';

Здесь нужно заменить name на имя пользователя, а password — на пароль для этого пользователя.

Последний шаг — это выдача всех превилегий на базу данных для созданного пользователя. Выполните следующую команду, заменив db на имя базы, a name на имя пользователя.

mysql> GRANT ALL PRIVILEGES ON `db`.* TO 'name'@'localhost';

Обновите превилегии командой:

mysql> FLUSH PRIVILEGES;

Настройка TFTP-сервера tftpd-hpa

У него можно отметить два достоинства:

  • Умеет работать автономно, без помощи inetd.
  • Есть опция, разрешающая создание новых файлов, что полезно для сохранения резервных копий конфигурации оборудования.

Установим пакет tftpd-hpa:

# apt install tftpd-hpa

После установки отредактируем файл /etc/default/tftpd-hpa, содержащий настройки сервера. Приведём его к следующему виду:

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--ipv4 --secure --create --umask 027 --permissive"

В настройках указаны дополнительные опции:

  • create разрешает серверу создавать новые файлы.
  • ipv4 предписывает ему ожидать подключений только на адресах IPv4.
  • umask предписывает сбрасывать бит записи для группы и все биты доступа для остальных пользователей.
  • permissive предписывает не проводить никаких проверок прав доступа к файлу сверх производимых операционной системой.

Создадим каталог для tftp-сервера, дадим серверу доступ к каталогу:

# mkdir /srv/tftp
# chown tftp:tftp /srv/tftp

Можно также поменять домашний каталог пользователя tftp в файле /etc/passwd на /srv/tftp.

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

# systemctl restart tftpd-hpa