Архив рубрики: linux

Синхронизация времени между Windows, macOS и Linux

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

  1. Нажмите одновременно на клавиатуре кнопки “Win” + “R” и введите в открывшееся окно “Выполнить” команду “regedit
  2. Перейдите по пути: \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
  3. После чего справа создайте новый параметр:
    • DWORD – для 32 битных ОС Windows
    • QWORD – для 64 битных ОС Windows  (90% всех современных компьютеров)

Присвоить имя RealTimeIsUniversal созданному параметру

После чего добавить ему значение 1

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

openwrt overlay на внешнем usb диске

Подготовка

Установите следующие пакеты:

  • block-mount (подробную информацию смотрите в block_mount и в fstab).
  • kmod-fs-ext4 или kmod-fs-[файловая система, которую вы используете на USB-диске]
  • kmod-usb-storage-extras

    opkg update
    opkg install block-mount kmod-fs-ext4 kmod-usb-storage-extras
  • Если opkg выдаёт ошибку при установке kmod-usb-storage-extras, следует сперва установить

    kmod-usb-core

Читать далее openwrt overlay на внешнем usb диске

ZFS

Создать пул raidz:

$ zpool create -f -o ashift=12 tank raidz /dev/sda /dev/sdb /dev/sdc

Добавить диски в пул:

$ zpool add -f tank raidz /dev/sda /dev/sdb /dev/sdc

Создать фс:

$ zfs create tank/storage

Включить сжатие:

$ zfs set compression=on tank/storage

Изменить точку монтирования:

$ zfs set mountpoint=/media/storage tank/storage

Добавить кэш диск l2arc:

$ zpool add tank cache /dev/sda -f

Добавить ZIL:

$ zpool add tank log /dev/sda -f

Если диск отпал (проблемы с кабелем) или специально его отключили можно подключить его обратно:

$ zfs online tank /dev/sda

tun в lxc

В конфиге контейнера /etc/pve/lxc/[ID].conf добавить строку

Для tun устройства:

lxc.mount.entry = /dev/net/tun dev/net/tun none bind,create=file

Дополнительно для openvpn

lxc.cgroup.devices.allow = c 10:200 rwm

Для fuse устройства:

lxc.mount.entry = /dev/fuse dev/fuse none bind,create=file

Для ppp устройства (для работы ppp требуется CAP_NET_ADMIN):

lxc.mount.entry = /dev/ppp dev/ppp none bind,create=file

настройка openvpn

Установка утилиты Easy-RSA

Все операции по созданию ключей и сертификатов можно выполнить с помощью утилиты openssl. Однако проще воспользоваться специально созданной для этого программой Easy-RSA, которая использует openssl для выполнения действий с ключами и сертификатами.

Ранее утилита Easy-RSA поставлялась вместе с OpenVPN, но теперь это отдельный проект.

Все операции с удостоверяющим центром и сертификатами можно (и нужно) проводить от имени непривилегированного пользователя.

$ ./easyrsa init-pki

На втором шаге с помощью команды build-ca создайте удостоверяющий центр CA:

$ ./easyrsa build-ca

Читать далее настройка openvpn

Проблема с ключами в 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:

sudo -u postgres psql

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

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

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

postgres=# DROP DATABASE test_database;
DROP DATABASE

postgres=# DROP USER test_user;
DROP USER

Читать далее Базовые операции в PostgreSQL