asciidoc вместо markdown
This commit is contained in:
@ -1,26 +1,25 @@
|
||||
---
|
||||
title: "Astra: авторизация в PostgreSQL через PAM"
|
||||
category: Linux
|
||||
tags: Linux, Astra, postgresql, базы данных,
|
||||
summary:
|
||||
...
|
||||
= Astra: авторизация в PostgreSQL через PAM
|
||||
:category: Linux
|
||||
:tags: Linux, Astra, postgresql, базы данных,
|
||||
|
||||
|
||||
Для обеспечения авторизации пользователей через PAM системному
|
||||
пользователю `postgres`, с правами которого выполняется сервер
|
||||
базы данных, необходимо выдать права на чтение информации из базы
|
||||
данных пользователей и сведений о мандатных метках и привилегиях:
|
||||
пользователю `postgres`, с правами которого выполняется сервер базы
|
||||
данных, необходимо выдать права на чтение информации из базы данных
|
||||
пользователей и сведений о мандатных метках и привилегиях:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
usermod -a -G shadow postgres
|
||||
setfacl -d -m u:postgres:r /etc/parsec/macdb
|
||||
setfacl -R -m u:postgres:r /etc/parsec/macdb
|
||||
setfacl -m u:postgres:rx /etc/parsec/macdb
|
||||
```
|
||||
----
|
||||
|
||||
Для обеспечения возможности авторизации пользователя `user`,
|
||||
зарегистрированного в системе PAM, нужно выполнить команду
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
usermac -c 0:0 -l 0:0 user
|
||||
```
|
||||
|
||||
----
|
@ -1,42 +1,45 @@
|
||||
---
|
||||
title: "CUPS: команды"
|
||||
category: Linux
|
||||
tags: Linux, печать, CUPS
|
||||
...
|
||||
= CUPS: команды
|
||||
:category: Linux
|
||||
:tags: Linux, печать, CUPS,
|
||||
|
||||
Текущее состояние принтера (см. также [lpstat](http://cheat.sh/lpstat)):
|
||||
Текущее состояние принтера (см. также http://cheat.sh/lpstat[lpstat]):
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lpstat -h hostname -p printer_name
|
||||
```
|
||||
----
|
||||
|
||||
Возобновить работу принтера:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lpadmin -h hostname -p printer_name -E
|
||||
```
|
||||
----
|
||||
|
||||
Печать (см. также [lp](http://cheat.sh/lp)):
|
||||
Печать (см. также http://cheat.sh/lp[lp]):
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lp -h hostname -d printer_name file.pdf
|
||||
```
|
||||
----
|
||||
|
||||
Просмотр очереди:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lpq -h hostname -p printer_name
|
||||
```
|
||||
----
|
||||
|
||||
Удаление задания job-id из очереди:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lprm -h hostname -p printer_name job-id
|
||||
```
|
||||
----
|
||||
|
||||
Удаление всех заданий из очереди:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
lprm -h hostname -p printer_name -
|
||||
```
|
||||
|
||||
----
|
@ -1,12 +1,10 @@
|
||||
---
|
||||
title: "APT"
|
||||
category: Linux
|
||||
tags: linux, ubuntu, debian, apt,
|
||||
summary:
|
||||
...
|
||||
= APT
|
||||
:category: Linux
|
||||
:tags: linux, ubuntu, debian, apt,
|
||||
|
||||
Запрет загрузки переводов описаний пакетов:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
echo 'Acquire::Languages "none";' > /etc/apt/apt.conf.d/99translations
|
||||
```
|
||||
----
|
@ -1,32 +1,35 @@
|
||||
---
|
||||
title: "GnuPG: шифрование файлов"
|
||||
category: Linux
|
||||
tags: Linux, GnuPG, безопасность
|
||||
...
|
||||
= GnuPG: шифрование файлов
|
||||
:category: Linux
|
||||
:tags: Linux, GnuPG, безопасность
|
||||
|
||||
Для шифрования файлов с использованием публичного ключа адресата можно выполнить команду:
|
||||
Для шифрования файлов с использованием публичного ключа адресата можно
|
||||
выполнить команду:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
tar cp files_list | pv | gpg -e --recipient user@domain.tld > archive.tar.gpg
|
||||
```
|
||||
----
|
||||
|
||||
По умолчанию во время шифрования данные сжимаются компрессорами `zip` или `gzip`,
|
||||
поэтому сжимать данные до `gpg` не нужно. Можно отключить стандартный алгоритм сжатия и
|
||||
использовать собственный компрессор, например `xz`:
|
||||
По умолчанию во время шифрования данные сжимаются компрессорами `zip`
|
||||
или `gzip`, поэтому сжимать данные до `gpg` не нужно. Можно отключить
|
||||
стандартный алгоритм сжатия и использовать собственный компрессор,
|
||||
например `xz`:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
tar cp files_list | pv | xz -9 | gpg -e --compress-algo none --recipient user@domain.tld > archive.tar.xz.gpg
|
||||
```
|
||||
----
|
||||
|
||||
Для шифрования с использованием пароля:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
tar cf files_list | pv | gpg -c > archive.tar.gpg
|
||||
```
|
||||
----
|
||||
|
||||
Для расшифровки нужно выполнить команду:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
gpg -d archive.tar.gpg --output archive.tar
|
||||
```
|
||||
|
||||
----
|
28
wiki/Linux/Hardware/GPE.adoc
Normal file
28
wiki/Linux/Hardware/GPE.adoc
Normal file
@ -0,0 +1,28 @@
|
||||
= Прерывания GPE
|
||||
:category: Linux
|
||||
:tags: Linux, hardware, железо,
|
||||
|
||||
Неисправная аппаратура может генерировать большое количество прерываний,
|
||||
что приводит к заметному ухудшению отзывчивости системы. Проверить
|
||||
наличие подобной ситуации можно командой
|
||||
|
||||
[source,sh]
|
||||
----
|
||||
find /sys/firmware/acpi/interrupts | sort | while read i; do echo "$i:"; cat $i; done
|
||||
----
|
||||
|
||||
Если в выводе будет присутствовать очень большое число, то значит
|
||||
проявляется именно данная проблема. Для временного исправления можно
|
||||
заблокировать прерывание, выполнив команду
|
||||
|
||||
[source,sh]
|
||||
----
|
||||
echo 0 > /sys/firmware/acpi/interrupts/gpeXX 2>/dev/null
|
||||
----
|
||||
|
||||
где XX номер прерывания, для которого зафиксировано большое число
|
||||
срабатываний. Для полного исправления проблемы нужно разбираться с
|
||||
аппаратурой.
|
||||
|
||||
https://unix.stackexchange.com/questions/242013/disable-gpe-acpi-interrupts-on-boot[См.
|
||||
также]
|
@ -1,28 +0,0 @@
|
||||
---
|
||||
title: "Прерывания GPE"
|
||||
category: Linux
|
||||
tags: Linux, hardware, железо,
|
||||
summary:
|
||||
...
|
||||
|
||||
Неисправная аппаратура может генерировать большое количество прерываний,
|
||||
что приводит к заметному ухудшению отзывчивости системы. Проверить
|
||||
наличие подобной ситуации можно командой
|
||||
|
||||
```sh
|
||||
find /sys/firmware/acpi/interrupts | sort | while read i; do echo "$i:"; cat $i; done
|
||||
```
|
||||
|
||||
Если в выводе будет присутствовать очень большое число, то значит проявляется
|
||||
именно данная проблема. Для временного исправления можно заблокировать прерывание,
|
||||
выполнив команду
|
||||
|
||||
```sh
|
||||
echo 0 > /sys/firmware/acpi/interrupts/gpeXX 2>/dev/null
|
||||
```
|
||||
|
||||
где XX номер прерывания, для которого зафиксировано большое число срабатываний.
|
||||
Для полного исправления проблемы нужно разбираться с аппаратурой.
|
||||
|
||||
[См. также](https://unix.stackexchange.com/questions/242013/disable-gpe-acpi-interrupts-on-boot)
|
||||
|
15
wiki/Linux/LXC/DNS в контейнере LXC.adoc
Normal file
15
wiki/Linux/LXC/DNS в контейнере LXC.adoc
Normal file
@ -0,0 +1,15 @@
|
||||
= DNS в контейнере LXC
|
||||
:category: Linux
|
||||
:tags: lxc, контейнеры, ubuntu, linux, dns,
|
||||
|
||||
В системе Ubuntu 18.04 работающей внутри контейнера LXC по умолчанию не
|
||||
работает разрешение имён. Чтобы использовать DNS-сервер `8.8.8.8`, нужно
|
||||
внутри контейнера выполнить команды:
|
||||
|
||||
[source,sh]
|
||||
----
|
||||
sed -i 's/#DNS=/DNS=8.8.8.8/' /etc/systemd/resolved.conf
|
||||
systemctl restart systemd-resolved
|
||||
rm /etc/resolv.conf
|
||||
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
|
||||
----
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
title: "DNS в контейнере LXC"
|
||||
category: Linux
|
||||
tags: lxc, контейнеры, ubuntu, linux, dns,
|
||||
summary:
|
||||
...
|
||||
|
||||
В системе Ubuntu 18.04 работающей внутри контейнера LXC по умолчанию
|
||||
не работает разрешение имён. Чтобы использовать DNS-сервер `8.8.8.8`,
|
||||
нужно внутри контейнера выполнить команды:
|
||||
|
||||
```sh
|
||||
sed -i 's/#DNS=/DNS=8.8.8.8/' /etc/systemd/resolved.conf
|
||||
systemctl restart systemd-resolved
|
||||
rm /etc/resolv.conf
|
||||
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
|
||||
```
|
@ -1,28 +1,27 @@
|
||||
---
|
||||
title: "runit: система инициализации"
|
||||
category: Linux
|
||||
tags: Debian, Ubuntu, Linux, инициализация, runit,
|
||||
summary:
|
||||
...
|
||||
= runit: система инициализации
|
||||
:category: Linux
|
||||
:tags: Debian, Ubuntu, Linux, инициализация, runit,
|
||||
|
||||
### Установка
|
||||
== Установка
|
||||
|
||||
[runit](http://smarden.org/runit/) — это система инициализации со
|
||||
http://smarden.org/runit/[runit] — это система инициализации со
|
||||
встроенными средствами контроля за процессами.
|
||||
|
||||
Установка в Ubuntu:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
sudo apt-get install runit runit-systemd
|
||||
```
|
||||
----
|
||||
|
||||
### Запуск сервисов от непривилегированного пользователя
|
||||
== Запуск сервисов от непривилегированного пользователя
|
||||
|
||||
Чтобы разрешить непривилегированному пользователю `user` управлять
|
||||
собственной конфигурацией для runit, нужно с правами суперпользователя
|
||||
выполнить:
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
mkdir -p /etc/service/run-user/supervise
|
||||
cat > /etc/service/run-user/run << EOF
|
||||
#!/bin/sh
|
||||
@ -31,17 +30,18 @@ exec 2>&1
|
||||
exec chpst -u user runsvdir /home/user/sv
|
||||
EOF
|
||||
chmod +x /etc/service/run-user/run
|
||||
```
|
||||
----
|
||||
|
||||
В результате в каталоге `/home/user/sv` пользователь `user` сможет
|
||||
создавать собственные правила управления сервисами.
|
||||
|
||||
### Пример сервиса
|
||||
== Пример сервиса
|
||||
|
||||
Для запуска сервера Redis пользователем `user` нужно создать файл
|
||||
конфигурации `/home/user/redis/etc/redis.conf`:
|
||||
|
||||
```
|
||||
[source,text]
|
||||
----
|
||||
daemonize no
|
||||
port 5079
|
||||
tcp-backlog 128
|
||||
@ -56,33 +56,36 @@ client-output-buffer-limit normal 0 0 0
|
||||
client-output-buffer-limit slave 4mb 1mb 60
|
||||
client-output-buffer-limit pubsub 4mb 1mb 60
|
||||
maxclients 50
|
||||
```
|
||||
----
|
||||
|
||||
Запускаемый сервер должен запускаться не в фоновом режиме, чтобы
|
||||
runit мог контролировать его состояние.
|
||||
Запускаемый сервер должен запускаться не в фоновом режиме, чтобы `runit`
|
||||
мог контролировать его состояние.
|
||||
|
||||
Скрипт `/home/user/sv/redis/run`, который `runit` использует для
|
||||
запуска процесса:
|
||||
Скрипт `/home/user/sv/redis/run`, который `runit` использует для запуска
|
||||
процесса:
|
||||
|
||||
```sh
|
||||
#!/bin/sh
|
||||
[source,sh]
|
||||
----
|
||||
#!/bin/sh -e
|
||||
|
||||
WORKDIR=/home/user/redis
|
||||
|
||||
cd "${WORKDIR}" || exit 1
|
||||
exec 2>&1
|
||||
exec redis-server etc/redis.conf
|
||||
```
|
||||
----
|
||||
|
||||
Журналирование выполняется с помощью входящей в состав пакета
|
||||
runit программы `svlogd`. Скрипт для его запуска должен находиться
|
||||
в подкаталоге `log` (`/home/user/sv/redis/log/run`):
|
||||
Журналирование выполняется с помощью входящей в состав пакета runit
|
||||
программы `svlogd`. Скрипт для его запуска должен находиться в
|
||||
подкаталоге `log` (`/home/user/sv/redis/log/run`):
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
#!/bin/sh -e
|
||||
|
||||
LOGDIR=/home/user/redis/log
|
||||
|
||||
mkdir -p "${LOGDIR}"
|
||||
exec svlogd -tt "${LOGDIR}""
|
||||
```
|
||||
----
|
||||
|
@ -1,16 +1,14 @@
|
||||
---
|
||||
title: "Сервер времени NTP в локальной сети"
|
||||
category: Linux
|
||||
tags: Linux, NTP, время,
|
||||
summary:
|
||||
...
|
||||
= Сервер времени NTP в локальной сети
|
||||
:category: Linux
|
||||
:tags: Linux, NTP, время,
|
||||
|
||||
Если в локальной сети необходимо синхронизировать время, не имея
|
||||
авторитетного источника времени, то можно использовать локальные
|
||||
часы сервера в качестве базовых. В этом случае файл настройки
|
||||
`/etc/ntp.conf` на сервере `192.168.0.1` будет выглядеть так:
|
||||
авторитетного источника времени, то можно использовать локальные часы
|
||||
сервера в качестве базовых. В этом случае файл настройки `/etc/ntp.conf`
|
||||
на сервере `192.168.0.1` будет выглядеть так:
|
||||
|
||||
```
|
||||
[source,text]
|
||||
----
|
||||
driftfile /var/lib/ntp/ntp.drift
|
||||
logfile /var/log/ntp.log
|
||||
tinker panic 0
|
||||
@ -19,11 +17,12 @@ server 127.127.1.0 minpoll 4 maxpoll 7
|
||||
fudge 127.127.1.0 stratum 8
|
||||
restrict 192.168.0.0 mask 255.255.255.0
|
||||
restrict default nomodify notrap
|
||||
```
|
||||
----
|
||||
|
||||
Файл `/etc/ntp.conf` на клиенте из подсети `192.168.0.0/24` имеет вид:
|
||||
|
||||
```
|
||||
[source,text]
|
||||
----
|
||||
driftfile /var/lib/ntp/ntp.drift
|
||||
logfile /var/log/ntp.log
|
||||
tinker panic 0
|
||||
@ -32,5 +31,4 @@ server 127.127.1.0 minpoll 4 maxpoll 7
|
||||
fudge 127.127.1.0 stratum 12
|
||||
server 192.168.0.1 minpoll 4 maxpoll 7 iburst
|
||||
restrict default nomodify nopeer
|
||||
```
|
||||
|
||||
----
|
@ -1,20 +1,19 @@
|
||||
---
|
||||
title: "Терминал rxvt-unicode"
|
||||
category: Linux
|
||||
tags: Linux, Xorg, rxvt, терминал,
|
||||
summary:
|
||||
...
|
||||
= Терминал rxvt-unicode
|
||||
:category: Linux
|
||||
:tags: Linux, Xorg, rxvt, терминал,
|
||||
|
||||
Скачать скрипт для динамического изменения размера шрифта
|
||||
|
||||
```sh
|
||||
[source,sh]
|
||||
----
|
||||
curl -fLo $HOME/.urxvt/ext/font-size --create-dirs \
|
||||
https://raw.githubusercontent.com/majutsushi/urxvt-font-size/master/font-size
|
||||
```
|
||||
----
|
||||
|
||||
Добавить в файл `$HOME/.Xresources`:
|
||||
|
||||
```
|
||||
[source,text]
|
||||
----
|
||||
URxvt.background: White
|
||||
URxvt.foreground: Black
|
||||
URxvt.saveLines: 8192
|
||||
@ -40,5 +39,5 @@ URxvt.keysym.C-S-KP_Subtract: perl:font-size:decglobal
|
||||
|
||||
! Запрет печати
|
||||
URxvt.print-pipe: "cat > /dev/null"
|
||||
```
|
||||
----
|
||||
|
8
wiki/Linux/Ссылки.adoc
Normal file
8
wiki/Linux/Ссылки.adoc
Normal file
@ -0,0 +1,8 @@
|
||||
= Linux: полезные ссылки
|
||||
:category: Linux
|
||||
:tags: Linux, ссылки,
|
||||
|
||||
* https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html[Параметры
|
||||
загрузки ядра]
|
||||
* http://cheat.sh/[Примеры команд]
|
||||
* https://m.opennet.ru/[Новости]
|
@ -1,10 +0,0 @@
|
||||
---
|
||||
title: "Linux: полезные ссылки"
|
||||
category: Linux
|
||||
tags: Linux, ссылки,
|
||||
...
|
||||
|
||||
* [Параметры загрузки ядра](https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html)
|
||||
* [Примеры команд](http://cheat.sh/)
|
||||
* [Новости](https://m.opennet.ru/)
|
||||
|
Reference in New Issue
Block a user