Пишу для себя, чтобы не забыть как делал. 95 % рабочее. На комментарии отвечаю, когда увижу.
суббота, 29 апреля 2017 г.
среда, 26 апреля 2017 г.
Использование journalctl для управления журналированием в systemd
Управление логгированием в systemd
How To Use Journalctl to View and Manipulate Systemd Logs
Включить журналирование (предыдущих загрузок)
$ sudo nano /etc/systemd/journald.conf ... [Journal] Storage=persistent
Сохранить.
Просмотреть список предыдущих загрузок можно с помощью команды:
# journalctl --list-boots
-4 7e4b4a292e224c4b91f75dd3d5e27f90 Wed 2017-04-26 11:41:00 MSK—Wed 2017-04-26 13:14:40 MSK -3 67b91d39230143d38896bff6cfa275b5 Wed 2017-04-26 13:25:21 MSK—Wed 2017-04-26 14:17:01 MSK -2 83a94b9974f543089777590f34880167 Wed 2017-04-26 14:51:49 MSK—Wed 2017-04-26 15:36:54 MSK -1 9f98d47a66b84952ba5ef9d9c7ed0ccd Wed 2017-04-26 15:37:14 MSK—Wed 2017-04-26 15:37:56 MSK 0 dab2faae33b8461aba00f0a7dac9f2c2 Wed 2017-04-26 15:41:34 MSK—Wed 2017-04-26 15:42:58 MSK
Просмотр предыдущей загрузки
# journalctl -b -1
Просмотр последней загрузки
# journalctl -b
# journalctl --since 10:00 --until "3 hours ago"
Вывести ошибки последней загрузки
$ journalctl -b -p err
понедельник, 24 апреля 2017 г.
Установка ubuntu 17.04 server i7
ubuntu 17.04 server - i7
Предустановлены ssh samba
Програмный RAID 0 без раздела подкачки.
$ sudo -i
# apt update -y
# apt upgrade -y
# apt install mc htop -y
# cat /proc/sys/vm/swappiness
60
# nano /etc/sysctl.conf
В конец:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить
# sysctl -p
Отключим службу ondemand
(для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
Отключим службу apparmor
(для проброса hasp в kvm)
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
# reboot
$ sudo -i
# cat /proc/cpuinfo | grep MHz
cpu MHz : 3400.664
# hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 31570 MB in 2.00 seconds = 15808.17 MB/sec
Timing buffered disk reads: 3180 MB in 3.00 seconds = 1059.85 MB/sec
# cat /proc/sys/vm/swappiness
0
# free
всего занято свободно общая буф./врем. доступно
Память: 32797356 199864 32341028 9800 256464 32202848
Подкачка: 2097148 0 2097148
Смотрим ip
# ifconfig
В нашем случае 192.168.0.98 nic enp1s0
Красным для dhcp, но без dhcp в сети
сервер не гузится 5 мин
auto lo
iface lo inet loopback
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
# ls /usr/share/lxc/templates/
lxc-alpine lxc-busybox lxc-debian lxc-gentoo lxc-oracle lxc-sparclinux lxc-ubuntu-cloud
lxc-altlinux lxc-centos lxc-download lxc-openmandriva lxc-plamo lxc-sshd
lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-slackware lxc-ubuntu
Созадать контейнер:
# lxc-create -t ubuntu -n zesty_lxc -- -r zesty -a amd64
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Сохранение контейнера zesty_lxc :
# cd /var/lib/lxc/
# tar -cvzf zesty_lxc.tar.gz ./zesty_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
Восстановление контейнера precise_lxc :
# cd /var/lib/lxc/
# tar xvzf precise_lxc.tar.gz
____________________________________________________
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
# apt-get install apcupsd -y
# Для проверки можно 30 (потом убрать )
TIMEOUT 0
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
Удаляем мост по умолчанию virbr0
# ip link set dev virbr0 down
# brctl delbr virbr0
# virsh net-destroy default
# reboot
---------------------------------------------------------------------------
Заточено, дальше настройка.
# fdisk -l
Диск /dev/sdc: 2,7 TiB, 3000592982016 байтов, 5860533168 секторов
Диск /dev/sdd: 931,5 GiB, 1000170586112 байтов, 1953458176 секторов
A-DATA:
# mkdir /mnt/a-data
# mount /dev/sdd1 /mnt/a-data -t auto
# umount /dev/sdd1
TS:
# mkdir /mnt/sdc
# mount /dev/sdc1 /mnt/sdc -t auto
# umount /dev/sdc1
# mount /dev/sdc1 /mnt/sdc -t auto
mount: /dev/sdc1: can't read superblock
# dumpe2fs /dev/sdc1 | grep superblock
dumpe2fs 1.43.4 (31-Jan-2017)
Primary superblock at 0, Group descriptors at 1-350
Backup superblock at 32768, Group descriptors at 32769-33118
.......
.......
# fsck /dev/sdc1
fsck из util-linux 2.29
e2fsck 1.43.4 (31-Jan-2017)
/dev/sdc1: восстановление журнала
JBD2: Invalid checksum recovering block 1 in log
JBD2: Invalid checksum recovering block 2 in log
.......
.......
# mount /dev/sdc1 /mnt/sdc -t auto
Автомонтирование по
Добавить:
Сохранить.
WD:
# mkdir /mnt/wd
# mount /dev/sdd1 /mnt/wd -t auto
# umount /dev/sdd1
Восстанавливаем:
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
Домен w_2012-clone определён на основе /etc/libvirt/qemu/w_2012-clone.xml
Для доступа vnc с любого адреса
# virsh edit w_2012-clone
Запуск машины (все iso должны быть на своих местах)
# virsh start w_2012-clone
Запущенные машины: # virsh list
Посмотреть номер порта vnc 5900:
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Выключение машины
# virsh shutdown w_2012-clone
______________________________________________________
Развернем desktop:
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf virt.tar.gz
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# ssh ubuntu@virt
Войдем по xrdp
root@virt:~# ssh-keygen -f "/root/.ssh/known_hosts" -R 192.168.0.98
root@virt:~# ssh user@192.168.0.98
(virt-manager от root по ip)
!!!# apt-get install virt-manager
# virsh edit w_2012-clone
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
# nano /etc/apparmor.d/abstractions/libvirt-qemu
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Ubuntu Server 16.04 добавление KVM виртуальной машина
# mkdir /lib/security/
# ln -s /lib/x86_64-linux-gnu/security/pam_winbind.so /lib/security/pam_winbind.so
май 12 12:08:46 u17 sshd[18087]: PAM unable to dlopen(pam_winbind.so): /lib/security/pam_winbind.so: undefined symbol: wbcCtxFr
май 12 12:08:46 u17 sshd[18087]: PAM adding faulty module: pam_winbind.so
Предустановлены ssh samba
Програмный RAID 0 без раздела подкачки.
$ sudo -i
# apt update -y
# apt upgrade -y
# apt install mc htop -y
# cat /proc/sys/vm/swappiness
60
# nano /etc/sysctl.conf
В конец:
vm.swappiness = 0net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить
# sysctl -p
Отключим службу ondemand
(для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
Отключим службу apparmor
(для проброса hasp в kvm)
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
# reboot
$ sudo -i
# cat /proc/cpuinfo | grep MHz
cpu MHz : 3400.664
# hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 31570 MB in 2.00 seconds = 15808.17 MB/sec
Timing buffered disk reads: 3180 MB in 3.00 seconds = 1059.85 MB/sec
# cat /proc/sys/vm/swappiness
0
# free
всего занято свободно общая буф./врем. доступно
Память: 32797356 199864 32341028 9800 256464 32202848
Подкачка: 2097148 0 2097148
Смотрим ip
# ifconfig
В нашем случае 192.168.0.98 nic enp1s0
Красным для dhcp, но без dhcp в сети
сервер не гузится 5 мин
auto lo
iface lo inet loopback
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
# nano /etc/network/interfaces
# The loopback network interface
auto lo iface lo inet loopback # The primary network interface #auto enp1s0 #iface enp1s0 inet dhcp ##Bridge Name ### auto br0 ### Bridge Information iface br0 inet static bridge_ports enp1s0 bridge_stp off bridge_fd 9
### Bridge IP ### address 192.168.0.98 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 dns-nameservers 192.168.0.1 8.8.8.8
Сохранить.
Setup Linux Container with LXC on Ubuntu 16.04
# apt-get install lxc lxc-templates wget bridge-utils -y
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
# ls /usr/share/lxc/templates/
lxc-alpine lxc-busybox lxc-debian lxc-gentoo lxc-oracle lxc-sparclinux lxc-ubuntu-cloud
lxc-altlinux lxc-centos lxc-download lxc-openmandriva lxc-plamo lxc-sshd
lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-slackware lxc-ubuntu
Созадать контейнер:
# lxc-create -t ubuntu -n zesty_lxc -- -r zesty -a amd64
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Сохранение контейнера zesty_lxc :
# cd /var/lib/lxc/
# tar -cvzf zesty_lxc.tar.gz ./zesty_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
Восстановление контейнера precise_lxc :
# cd /var/lib/lxc/
# tar xvzf precise_lxc.tar.gz
____________________________________________________
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
# apt-get install apcupsd -y
(по сути закоментировать одну строчку #DEVICE /dev/ttyS0)
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
......
#UPSTYPE apcsmart
UPSTYPE usb
#DEVICE /dev/ttyS0
#DEVICE /dev/ttyS0
# Для проверки можно 30 (потом убрать )
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
Установка kvm
Настроим сетевой мост br0 до инсталляции kvm (настроен lxc)
# apt-get update -y
# apt-get install qemu-kvm libvirt-bin virtinst -y
!!!# apt-get install virt-manager
!!!# usermod -a -G libvirt user
!!!!usermod: group 'libvirtd' does not exist
Удаляем мост по умолчанию virbr0
# ip link set dev virbr0 down
# brctl delbr virbr0
# virsh net-destroy default
# virsh net-undefine default
# service libvirtd restart# reboot
---------------------------------------------------------------------------
Заточено, дальше настройка.
Монтирование дисков usb
# fdisk -l
Диск /dev/sdc: 2,7 TiB, 3000592982016 байтов, 5860533168 секторов
Диск /dev/sdd: 931,5 GiB, 1000170586112 байтов, 1953458176 секторов
A-DATA:
# mkdir /mnt/a-data
# mount /dev/sdd1 /mnt/a-data -t auto
# umount /dev/sdd1
TS:
# mkdir /mnt/sdc
# mount /dev/sdc1 /mnt/sdc -t auto
# umount /dev/sdc1
# mount /dev/sdc1 /mnt/sdc -t auto
mount: /dev/sdc1: can't read superblock
# dumpe2fs /dev/sdc1 | grep superblock
dumpe2fs 1.43.4 (31-Jan-2017)
Primary superblock at 0, Group descriptors at 1-350
Backup superblock at 32768, Group descriptors at 32769-33118
.......
.......
# fsck /dev/sdc1
fsck из util-linux 2.29
e2fsck 1.43.4 (31-Jan-2017)
/dev/sdc1: восстановление журнала
JBD2: Invalid checksum recovering block 1 in log
JBD2: Invalid checksum recovering block 2 in log
.......
.......
# mount /dev/sdc1 /mnt/sdc -t auto
Автомонтирование по
uuid
ls -l /dev/disk/by-uuid
итого 0
lrwxrwxrwx 1 root root 11 май 6 13:50 6fda0ea4-4faa-43f6-8e63-d2170036b4cc -> ../../md0p1
lrwxrwxrwx 1 root root 10 май 6 13:50 6fdbec45-51c5-426b-a11c-e9309367c0e2 -> ../../sdc1
# nano /etc/fstab
Добавить:
UUID=
6fdbec45-51c5-426b-a11c-e9309367c0e2
/mnt/sdc ext4 defaults 0 0
Сохранить.
WD:
# mkdir /mnt/wd
# mount /dev/sdd1 /mnt/wd -t auto
# umount /dev/sdd1
____________________________________________________
Настройка kvm
Копируем машины в /var/lib/libvirt/images
Копируем описания xml в /etc/libvirt/qemu
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
Домен w_2012-clone определён на основе /etc/libvirt/qemu/w_2012-clone.xml
Для доступа vnc с любого адреса
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
Запуск машины (все iso должны быть на своих местах)
# virsh start w_2012-clone
Запущенные машины: # virsh list
Посмотреть номер порта vnc 5900:
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Выключение машины
# virsh shutdown w_2012-clone
______________________________________________________
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf virt.tar.gz
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# ssh ubuntu@virt
Войдем по xrdp
root@virt:~# ssh-keygen -f "/root/.ssh/known_hosts" -R 192.168.0.98
root@virt:~# ssh user@192.168.0.98
(virt-manager от root по ip)
!!!# apt-get install virt-manager
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Ограничения для USB устройств в KVM
- USB протокол 1.1
- Устройство должно быть подключено до запуска KVM
- Нужны изменения Apparmor
# nano /etc/apparmor.d/abstractions/libvirt-qemu
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
Восстановить так:
# virsh define /tmp/w_2012-clone.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Ubuntu Server 16.04 добавление KVM виртуальной машина
Управление логгированием в systemd
How To Use Journalctl to View and Manipulate Systemd Logs
Включить журналирование (предыдущих загрузок)
$ sudo nano /etc/systemd/journald.conf ... [Journal] Storage=persistent
Сохранить.
Просмотреть список предыдущих загрузок можно с помощью команды:
# journalctl --list-boots
-4 7e4b4a292e224c4b91f75dd3d5e27f90 Wed 2017-04-26 11:41:00 MSK—Wed 2017-04-26 13:14:40 MSK -3 67b91d39230143d38896bff6cfa275b5 Wed 2017-04-26 13:25:21 MSK—Wed 2017-04-26 14:17:01 MSK -2 83a94b9974f543089777590f34880167 Wed 2017-04-26 14:51:49 MSK—Wed 2017-04-26 15:36:54 MSK -1 9f98d47a66b84952ba5ef9d9c7ed0ccd Wed 2017-04-26 15:37:14 MSK—Wed 2017-04-26 15:37:56 MSK 0 dab2faae33b8461aba00f0a7dac9f2c2 Wed 2017-04-26 15:41:34 MSK—Wed 2017-04-26 15:42:58 MSK
Просмотр предыдущей загрузки
# journalctl -b -1
Просмотр последней загрузки
# journalctl -b
# journalctl --since 10:00 --until "3 hours ago"
Глюк:
май 12 11:31:52 u17 systemd-logind[1115]: New session 357 of user user.
май 12 11:31:52 u17 systemd[1]: Started Session 357 of user user.
май 12 11:31:52 u17 systemd[17456]: PAM unable to dlopen(pam_winbind.so): /lib/security/pam_winbind.so: cannot open shared obje
май 12 11:31:52 u17 systemd[17456]: PAM adding faulty module: pam_winbind.so
# mkdir /lib/security/
# ln -s /lib/x86_64-linux-gnu/security/pam_winbind.so /lib/security/pam_winbind.so
май 12 12:08:46 u17 sshd[18087]: PAM unable to dlopen(pam_winbind.so): /lib/security/pam_winbind.so: undefined symbol: wbcCtxFr
май 12 12:08:46 u17 sshd[18087]: PAM adding faulty module: pam_winbind.so
ubuntu 17.04 xrdp
Mate-Desktop
# apt-get update -y
# apt-get install mate-core mate-desktop-environment mate-notification-daemon -y
# apt-get install xrdp -y
# nano /etc/xrdp/startwm.sh
после fi
# test -x /etc/X11/Xsession && exec /etc/X11/Xsession
# exec /bin/sh /etc/X11/Xsession
mate-session
Сохранить.
# service xrdp restart
или
# reboot
# apt-get update -y
# apt-get install mate-core mate-desktop-environment mate-notification-daemon -y
# apt-get install xrdp -y
# nano /etc/xrdp/startwm.sh
после fi
# test -x /etc/X11/Xsession && exec /etc/X11/Xsession
# exec /bin/sh /etc/X11/Xsession
mate-session
Сохранить.
# service xrdp restart
или
# reboot
воскресенье, 23 апреля 2017 г.
Сервер терминалов для 1С по протоколу RDP на linux: рекомендации по настройке с учетом опыта реальной эксплуатации
Building on Debian 8
Терминальный сервер на базе Ubuntu Server 16.04
Building on Debian 8
Терминальный сервер на базе Ubuntu Server 16.04
# apt-get install git autoconf libtool pkg-config gcc g++ make libssl-dev libpam0g-dev libjpeg-dev libx11-dev libxfixes-dev libxrandr-dev flex bison libxml2-dev intltool xsltproc xutils-dev python-libxml2 g++ xutils libfuse-dev libmp3lame-dev nasm libpixman-1-dev xserver-xorg-dev
#
BD=`pwd`
#
mkdir -p "${BD}"/git/neutrinolabs
#
cd "${BD}"/git/neutrinolabs
#
wget https://github.com/neutrinolabs/xrdp/releases/download/v0.9.1/xrdp-0.9.1.tar.gz
#
wget https://github.com/neutrinolabs/xorgxrdp/releases/download/v0.2.0/xorgxrdp-0.2.0.tar.gz
#
cd "${BD}"/git/neutrinolabs
#
tar xvfz xrdp-0.9.1.tar.gz
#
cd "${BD}"/git/neutrinolabs/xrdp-0.9.1
#
./bootstrap
#
./configure --enable-fuse --disable-rfxcodec --enable-mp3lame --enable-pixman --disable-painter --disable-ipv6
#
make
#
make install
#
ln -s /usr/local/sbin/xrdp{,-sesman} /usr/sbin
#
cd "${BD}"/git/neutrinolabs
#
tar xvfz xorgxrdp-0.2.0.tar.gz
#
cd "${BD}"/git/neutrinolabs/xorgxrdp-0.2.0
#
./bootstrap
#
./configure
#
make
#
make install
/ubuntu/pool/universe/x/xrdp
ubuntu 17.04
apt-get install ubuntu-gnome-desktop
!!!# apt-get install imagemagick -y
Строка ниже срабатывает далеко не всегда
# apt-get install ttf-mscorefonts-installer -y
# fc-cache -f -v
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
Дистрибутивы в папке soft
!!!# ln -s /usr/lib/x86_64-linux-gnu/libMagickWand.so.5 /usr/lib/x86_64-linux-gnu/libMagickWand.so
# cd /home/user/8.3.10.2168/
# tar xvzf deb64.tar.gz
# tar xvzf
client.deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd ..
# rm -R /home/ubuntu/8.3.10.2168
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
~# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 0529:0001 Aladdin Knowledge Systems HASP v0.06 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub # dpkg --add-architecture i386 # apt-get update # apt-get install libc6:i386
!!!# wget ftp://ftp.cis-app.com/pub/hasp/Sentinel_HASP/Runtime_(Drivers)/7.54/Sentinel_LDK_Ubuntu_DEB_Run-time_Installer.tar.gz
!!!# tar xvzf
Sentinel_LDK_Ubuntu_DEB_Run-time_Installer.tar.gz
!!!# cd Sentinel_LDK_Ubuntu_DEB_Run-time_Installer
# cd /home/user/hasp
# dpkg -i --force-architecture aksusbd_7.54-1_i386.deb # apt-get -f install # service aksusbd restart # /etc/init.d/aksusbd status
# reboot
-------------------------------------------------------------------------
16.04.2
# apt-get install ubuntu-gnome-desktop
# mkdir 0
# cd 0
# wget http://ge.archive.ubuntu.com/ubuntu/pool/universe/x/xrdp/xrdp_0.9.0~20160601+git703fedd-3_amd64.deb
# wget http://ge.archive.ubuntu.com/ubuntu/pool/universe/x/xrdp/xorgxrdp_0.9.0~20160601+git703fedd-3_amd64.deb
sudo dpkg -i *.deb
Standard XRDP installation on Ubuntu 16.04
# sudo add-apt-repository ppa:jonathonf/mate-1.16
# apt-get update
# apt-get install mate-core mate-desktop-environment mate-notification-daemon
# apt-get install mate-desktop-environment-core mate-desktop-environment-extras
суббота, 22 апреля 2017 г.
Установка ubuntu 16.04.2 server i7
ubuntu 16.04.2 server - i7
Предустановлены ssh samba
Програмный RAID 0 без раздела подкачки.
How To Add Swap Space on Ubuntu 16.04
$ sudo -i
Создадим в корне пустой файл с именем swap размером в 8 ГБ:
# dd if=/dev/zero of=/swapfile bs=1M count=8192
Отформатируем его как файл подкачки:
# mkswap /swapfile
# chmod 600 /swap
# ls -lh /swap
-rw------- 1 root root 8,0G апр 22 13:27 /swap
# mkswap /swap
mkswap: /swap: warning: wiping old swap signature.
Setting up swapspace version 1, size = 8 GiB (8589930496 bytes)
без метки, UUID=a976d033-db35-4ec7-9d3c-ef6375195fa8
# swapon /swap
# swapon --show
NAME TYPE SIZE USED PRIO
/swap file 8G 0B -1
# free
total used free shared buff/cache available
Память: 32799228 144300 23740332 9976 8914596 32212720
Подкачка: 8388604 0 8388604
# cp /etc/fstab /etc/fstab.bak
# echo '/swap none swap sw 0 0' | sudo tee -a /etc/fstab
Можно проверить:
# nano /etc/fstab
/swap none swap sw 0 0
# cat /proc/sys/vm/swappiness
60
# nano /etc/sysctl.conf
В конец:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить
# sysctl -p
Отключим службу ondemand
(для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
Отключим службу apparmor
(для проброса hasp в kvm)
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
# reboot
$ sudo -i
# cat /proc/cpuinfo | grep MHz
cpu MHz : 3400.664
....
# hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 30766 MB in 2.00 seconds = 15404.43 MB/sec
Timing buffered disk reads: 3092 MB in 3.00 seconds = 1030.48 MB/sec
# cat /proc/sys/vm/swappiness
0
# free
total used free shared buff/cache available
Память: 32799228 126672 32419972 9972 252584 32304892
Подкачка: 8388604 0 8388604
# apt-get update -y
# apt-get upgrade -y
!!!# apt-get install mc atop htop ssh samba
# apt-get install mc htop -y
Смотрим ip
# ifconfig
В нашем случае 192.168.0.98 nic enp1s0
!!!# apt-get remove network-manager (для desktop)
Красным для dhcp, но без dhcp в сети
сервер не гузится
auto lo
iface lo inet loopback
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
# ls /usr/share/lxc/templates/
lxc-alpine lxc-busybox lxc-debian lxc-gentoo lxc-oracle lxc-sparclinux lxc-ubuntu-cloud
lxc-altlinux lxc-centos lxc-download lxc-openmandriva lxc-plamo lxc-sshd
lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-slackware lxc-ubuntu
Созадать контейнер:
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf precise_lxc.tar.gz ./precise_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
____________________________________________________
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
# apt-get install apcupsd -y
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
# Для проверки можно 30 (потом убрать )
TIMEOUT 0
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
Удаляем мост по умолчанию virbr0
# ip link set dev virbr0 down
# brctl delbr virbr0
# virsh net-destroy default
# fdisk -l
Диск /dev/sdc: 931,5 GiB, 1000170586112 байтов, 1953458176 секторов
Диск /dev/sdd: 223,6 GiB, 240057409536 байтов, 468862128 секторов
A-DATA:
# mkdir /mnt/a-data
# mount /dev/sdd1 /mnt/a-data -t auto
# umount /dev/sdd1
WD:
# mkdir /mnt/wd
# mount /dev/sdc1 /mnt/wd -t auto
# umount /dev/sdc1
Восстанавливаем:
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
Домен w_2012-clone определён на основе /etc/libvirt/qemu/w_2012-clone.xml
Для доступа vnc с любого адреса
# virsh edit w_2012-clone
Запуск машины (все iso должны быть на своих местах)
# virsh start w_2012-clone
Запущенные машины: # virsh list
Посмотреть номер порта vnc 5900:
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Выключение машины
# virsh shutdown w_2012-clone
______________________________________________________
Развернем desktop:
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf virt.tar.gz
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# ssh ubuntu@virt
Войдем по xrdp
!!!# apt-get install virt-manager
# virsh edit w_2012-clone
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
# nano /etc/apparmor.d/abstractions/libvirt-qemu
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Ubuntu Server 16.04 добавление KVM виртуальной машина
Предустановлены ssh samba
Програмный RAID 0 без раздела подкачки.
How To Add Swap Space on Ubuntu 16.04
$ sudo -i
Создадим в корне пустой файл с именем swap размером в 8 ГБ:
# dd if=/dev/zero of=/swapfile bs=1M count=8192
Отформатируем его как файл подкачки:
# mkswap /swapfile
# chmod 600 /swap
# ls -lh /swap
-rw------- 1 root root 8,0G апр 22 13:27 /swap
# mkswap /swap
mkswap: /swap: warning: wiping old swap signature.
Setting up swapspace version 1, size = 8 GiB (8589930496 bytes)
без метки, UUID=a976d033-db35-4ec7-9d3c-ef6375195fa8
# swapon /swap
# swapon --show
NAME TYPE SIZE USED PRIO
/swap file 8G 0B -1
# free
total used free shared buff/cache available
Память: 32799228 144300 23740332 9976 8914596 32212720
Подкачка: 8388604 0 8388604
# cp /etc/fstab /etc/fstab.bak
# echo '/swap none swap sw 0 0' | sudo tee -a /etc/fstab
Можно проверить:
# nano /etc/fstab
/swap none swap sw 0 0
# cat /proc/sys/vm/swappiness
60
# nano /etc/sysctl.conf
В конец:
vm.swappiness = 0net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить
# sysctl -p
Отключим службу ondemand
(для разгона cpu)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
Отключим службу apparmor
(для проброса hasp в kvm)
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
# reboot
$ sudo -i
# cat /proc/cpuinfo | grep MHz
cpu MHz : 3400.664
....
# hdparm -Tt /dev/md0
/dev/md0:
Timing cached reads: 30766 MB in 2.00 seconds = 15404.43 MB/sec
Timing buffered disk reads: 3092 MB in 3.00 seconds = 1030.48 MB/sec
# cat /proc/sys/vm/swappiness
0
# free
total used free shared buff/cache available
Память: 32799228 126672 32419972 9972 252584 32304892
Подкачка: 8388604 0 8388604
# apt-get update -y
# apt-get upgrade -y
!!!# apt-get install mc atop htop ssh samba
# apt-get install mc htop -y
Смотрим ip
# ifconfig
В нашем случае 192.168.0.98 nic enp1s0
!!!# apt-get remove network-manager (для desktop)
!!!# nano /etc/network/interfaces
Красным для dhcp, но без dhcp в сети
сервер не гузится
auto lo
iface lo inet loopback
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
# nano /etc/network/interfaces
# The loopback network interface
auto lo iface lo inet loopback # The primary network interface #auto enp1s0 #iface enp1s0 inet dhcp ##Bridge Name ### auto br0 ### Bridge Information iface br0 inet static bridge_ports enp1s0 bridge_stp off bridge_fd 9
### Bridge IP ### address 192.168.0.98 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 dns-nameservers 8.8.8.8
Сохранить.
Setup Linux Container with LXC on Ubuntu 16.04
# apt-get install lxc lxc-templates wget bridge-utils -y
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
# ls /usr/share/lxc/templates/
lxc-alpine lxc-busybox lxc-debian lxc-gentoo lxc-oracle lxc-sparclinux lxc-ubuntu-cloud
lxc-altlinux lxc-centos lxc-download lxc-openmandriva lxc-plamo lxc-sshd
lxc-archlinux lxc-cirros lxc-fedora lxc-opensuse lxc-slackware lxc-ubuntu
Созадать контейнер:
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf precise_lxc.tar.gz ./precise_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
____________________________________________________
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
# apt-get install apcupsd -y
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
......
#UPSTYPE apcsmart
UPSTYPE usb
#DEVICE /dev/ttyS0
#DEVICE /dev/ttyS0
# Для проверки можно 30 (потом убрать )
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
Установка kvm
Настроим сетевой мост br0 до инсталляции kvm
# apt-get update -y
# apt-get install qemu-kvm libvirt-bin virtinst -y
!!!# apt-get install virt-manager
# usermod -a -G libvirtd user
Удаляем мост по умолчанию virbr0
# ip link set dev virbr0 down
# brctl delbr virbr0
# virsh net-destroy default
# virsh net-undefine default
# service libvirtd restart
____________________________________________________
Монтирование дисков usb
# fdisk -l
Диск /dev/sdc: 931,5 GiB, 1000170586112 байтов, 1953458176 секторов
Диск /dev/sdd: 223,6 GiB, 240057409536 байтов, 468862128 секторов
A-DATA:
# mkdir /mnt/a-data
# mount /dev/sdd1 /mnt/a-data -t auto
# umount /dev/sdd1
WD:
# mkdir /mnt/wd
# mount /dev/sdc1 /mnt/wd -t auto
# umount /dev/sdc1
____________________________________________________
Настройка kvm
Копируем машины в /var/lib/libvirt/images
Копируем описания xml в /etc/libvirt/qemu
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
Домен w_2012-clone определён на основе /etc/libvirt/qemu/w_2012-clone.xml
Для доступа vnc с любого адреса
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
Запуск машины (все iso должны быть на своих местах)
# virsh start w_2012-clone
Запущенные машины: # virsh list
Посмотреть номер порта vnc 5900:
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Выключение машины
# virsh shutdown w_2012-clone
______________________________________________________
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf virt.tar.gz
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# ssh ubuntu@virt
Войдем по xrdp
!!!# apt-get install virt-manager
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Ограничения для USB устройств в KVM
- USB протокол 1.1
- Устройство должно быть подключено до запуска KVM
- Нужны изменения Apparmor
# nano /etc/apparmor.d/abstractions/libvirt-qemu
# /etc/init.d/apparmor stop
# update-rc.d -f apparmor remove
!!!# systemctl status apparmor
!!!# systemctl stop apparmor
!!!# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
Восстановить так:
# virsh define /tmp/w_2012-clone.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Ubuntu Server 16.04 добавление KVM виртуальной машина
Определение скорости диска
# fdisk -l
root@i7:/var/lib/lxc# hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 30840 MB in 2.00 seconds = 15441.73 MB/sec
Timing buffered disk reads: 1546 MB in 3.00 seconds = 515.17 MB/sec
root@i7:/var/lib/lxc# hdparm -Tt /dev/sdb
/dev/sdb:
Timing cached reads: 30218 MB in 2.00 seconds = 15130.42 MB/sec
Timing buffered disk reads: 660 MB in 3.00 seconds = 219.64 MB/sec
root@i7:/var/lib/lxc# hdparm -Tt /dev/sdc
/dev/sdc:
Timing cached reads: 29756 MB in 2.00 seconds = 14898.85 MB/sec
Timing buffered disk reads: 358 MB in 3.02 seconds = 118.71 MB/sec
root@i7:/var/lib/lxc#
hdparm -Tt /dev/md0
# /dev/md0:
Timing cached reads: 31102 MB in 2.00 seconds = 15572.57 MB/sec
Timing buffered disk reads: 3184 MB in 3.00 seconds = 1061.11 MB/sec
root@i7:~#
root@i7:/var/lib/lxc# hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 30840 MB in 2.00 seconds = 15441.73 MB/sec
Timing buffered disk reads: 1546 MB in 3.00 seconds = 515.17 MB/sec
root@i7:/var/lib/lxc# hdparm -Tt /dev/sdb
/dev/sdb:
Timing cached reads: 30218 MB in 2.00 seconds = 15130.42 MB/sec
Timing buffered disk reads: 660 MB in 3.00 seconds = 219.64 MB/sec
root@i7:/var/lib/lxc# hdparm -Tt /dev/sdc
/dev/sdc:
Timing cached reads: 29756 MB in 2.00 seconds = 14898.85 MB/sec
Timing buffered disk reads: 358 MB in 3.02 seconds = 118.71 MB/sec
root@i7:/var/lib/lxc#
hdparm -Tt /dev/md0
# /dev/md0:
Timing cached reads: 31102 MB in 2.00 seconds = 15572.57 MB/sec
Timing buffered disk reads: 3184 MB in 3.00 seconds = 1061.11 MB/sec
root@i7:~#
пятница, 21 апреля 2017 г.
Консоль virt-manager
Развернем desktop:
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf d_lxc.tar.gz
# passwd root
Разрешим вход root по ssh
Закоментировать PermitRootLogin prohibit-password
Добавить PermitRootLogin yes
# nano /etc/ssh/sshd_config
# lxc-clone -o d_lxc -n virt
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# apt-get install virt-manager
# virsh edit w_2012-clone
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
# nano /etc/apparmor.d/abstractions/libvirt-qemu
!!!# sudo /etc/init.d/apparmor stop
# systemctl status apparmor
# systemctl stop apparmor
# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Сохранение контейнера virt :
# cd /var/lib/lxc/
# tar -cvzf virt.tar.gz ./virt
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf d_lxc.tar.gz
# passwd root
Разрешим вход root по ssh
Закоментировать PermitRootLogin prohibit-password
Добавить PermitRootLogin yes
# nano /etc/ssh/sshd_config
# Authentication: LoginGraceTime 120 #PermitRootLogin prohibit-password PermitRootLogin yes StrictModes yes
# systemctl restart sshd
# lxc-clone -o d_lxc -n virt
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# apt-get install virt-manager
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Ограничения для USB устройств в KVM
- USB протокол 1.1
- Устройство должно быть подключено до запуска KVM
- Нужны изменения Apparmor
# nano /etc/apparmor.d/abstractions/libvirt-qemu
!!!# sudo /etc/init.d/apparmor stop
# systemctl status apparmor
# systemctl stop apparmor
# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
Восстановить так:
# virsh define /tmp/w_2012-clone.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Сохранение контейнера virt :
# cd /var/lib/lxc/
# tar -cvzf virt.tar.gz ./virt
четверг, 20 апреля 2017 г.
Install ONLYOFFICE – Open-Source Web Based Office Suite
Install ONLYOFFICE – Open-Source Web Based Office Suite
Установка версии Сервера документов для Linux на Debian, Ubuntu и производные
Клонировать контейнер
# lxc-clone -o xenial_lxc -n only
Старт контейнера
# lxc-start -n only -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.226
$ sudo -i
!!!# apt-get install mc samba nano -y
# apt-get install mc nano wget -y
# echo "deb http://archive.ubuntu.com/ubuntu precise main universe multiverse" | sudo tee -a /etc/apt/sources.list
# apt-get install curl
# curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
# apt-get install postgresql
$ sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"
$ sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
$ sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
$ sudo apt-get install redis-server
$ sudo apt-get install rabbitmq-server
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
$ sudo echo "deb http://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list
$ sudo apt-get update
$ sudo apt-get install onlyoffice-documentserver
___________________________________
# wget http://download.onlyoffice.com/repo/onlyoffice.key
# apt-key add onlyoffice.key
# nano /etc/apt/sources.list
deb http://download.onlyoffice.com/repo/debian squeeze main
Сохранить.
# apt-get install software-properties-common
# add-apt-repository ppa:ubuntu-toolchain-r/test
# apt-get update
Пакеты, имеющие неудовлетворённые зависимости:
onlyoffice-documentserver : Зависит: nginx-extras (>= 1.3.13) но он не будет установлен
Зависит: nodejs (>= 6.9.1) но он не будет установлен
Зависит: libboost-regex-dev но он не будет установлен
Зависит: ttf-mscorefonts-installer но он не будет установлен
Зависит: libgtkglext1 но он не будет установлен
Зависит: xvfb но он не будет установлен
Зависит: libgconf2-4 но он не будет установлен
# apt-get install nginx-extras -y
# apt-get install nodejs -y
# apt-get install libboost-regex-dev -y
# apt-get install ttf-mscorefonts-installer -y
# apt-get install xvfb -y
# apt-get install libgconf2-4 -y
# apt-get install onlyoffice-documentserver -y
Установка версии Сервера документов для Linux на Debian, Ubuntu и производные
Клонировать контейнер
# lxc-clone -o xenial_lxc -n only
Старт контейнера
# lxc-start -n only -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.226
$ sudo -i
!!!# apt-get install mc samba nano -y
# apt-get install mc nano wget -y
# echo "deb http://archive.ubuntu.com/ubuntu precise main universe multiverse" | sudo tee -a /etc/apt/sources.list
# apt-get install curl
# curl -sL https://deb.nodesource.com/setup_6.x | sudo bash -
# apt-get install postgresql
$ sudo -u postgres psql -c "CREATE DATABASE onlyoffice;"
$ sudo -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
$ sudo -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
$ sudo apt-get install redis-server
$ sudo apt-get install rabbitmq-server
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
$ sudo echo "deb http://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list
$ sudo apt-get update
$ sudo apt-get install onlyoffice-documentserver
___________________________________
# wget http://download.onlyoffice.com/repo/onlyoffice.key
# apt-key add onlyoffice.key
# nano /etc/apt/sources.list
deb http://download.onlyoffice.com/repo/debian squeeze main
Сохранить.
# apt-get install software-properties-common
# add-apt-repository ppa:ubuntu-toolchain-r/test
# apt-get update
# apt-get install onlyoffice-documentserver
Пакеты, имеющие неудовлетворённые зависимости:
onlyoffice-documentserver : Зависит: nginx-extras (>= 1.3.13) но он не будет установлен
Зависит: nodejs (>= 6.9.1) но он не будет установлен
Зависит: libboost-regex-dev но он не будет установлен
Зависит: ttf-mscorefonts-installer но он не будет установлен
Зависит: libgtkglext1 но он не будет установлен
Зависит: xvfb но он не будет установлен
Зависит: libgconf2-4 но он не будет установлен
# apt-get install nginx-extras -y
# apt-get install nodejs -y
# apt-get install libboost-regex-dev -y
# apt-get install ttf-mscorefonts-installer -y
# apt-get install xvfb -y
# apt-get install libgconf2-4 -y
# apt-get install onlyoffice-documentserver -y
Setup NextCloud on Ubuntu 16.04 / Ubuntu 16.10 / Debian 8
Setup NextCloud on Ubuntu 16.04 / Ubuntu 16.10 / Debian 8
Install OwnCloud 9 on Ubuntu 16.04 / Debian 8
Клонировать контейнер
# lxc-clone -o xenial_lxc -n next
Старт контейнера
# lxc-start -n next -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.203
$ sudo -i
# apt-get install mc samba nano -y
# dpkg-reconfigure tzdata
# apt-get install -y apache2 mariadb-server libapache2-mod-php7.0 php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip php7.0-sqlite3
# a2enmod rewrite
# a2enmod headers
# a2enmod dir
# a2enmod env
# a2enmod mime
# service apache2 restart
# cd /tmp/
# wget https://download.nextcloud.com/server/releases/nextcloud-11.0.2.tar.bz2 # tar -jxvf nextcloud-*.bz2 # mv nextcloud /var/www/html/ # mkdir /var/www/html/nextcloud/data
# chown -R www-data:www-data /var/www/html/nextcloud/
# mysql -u root -p
> create database nextclouddb;
> grant all on nextclouddb.* to 'nextclouduser'@'localhost' identified by 'password';
> quit
http://your-ip-addr-ess/nextcloud
# a2enmod ssl
# a2ensite default-ssl
Перезагрузка Apache:
# systemctl restart apache2
https://your-ip-addr-ess/nextcloud
https://192.168.0.203/nextcloud/index.php
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf next.tar.gz ./next
Install OwnCloud 9 on Ubuntu 16.04 / Debian 8
Клонировать контейнер
# lxc-clone -o xenial_lxc -n next
Старт контейнера
# lxc-start -n next -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.203
$ sudo -i
# apt-get install mc samba nano -y
# dpkg-reconfigure tzdata
# apt-get install -y apache2 mariadb-server libapache2-mod-php7.0 php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip php7.0-sqlite3
# a2enmod rewrite
# a2enmod headers
# a2enmod dir
# a2enmod env
# a2enmod mime
# service apache2 restart
# cd /tmp/
# wget https://download.nextcloud.com/server/releases/nextcloud-11.0.2.tar.bz2 # tar -jxvf nextcloud-*.bz2 # mv nextcloud /var/www/html/ # mkdir /var/www/html/nextcloud/data
# chown -R www-data:www-data /var/www/html/nextcloud/
# mysql -u root -p
> create database nextclouddb;
> grant all on nextclouddb.* to 'nextclouduser'@'localhost' identified by 'password';
> quit
http://your-ip-addr-ess/nextcloud
# a2enmod ssl
# a2ensite default-ssl
Перезагрузка Apache:
# systemctl restart apache2
https://your-ip-addr-ess/nextcloud
https://192.168.0.203/nextcloud/index.php
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf next.tar.gz ./next
Еще kvm
Развернем desktop:
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf d_lxc.tar.gz
# lxc-clone -o d_lxc -n kvm
# nano /var/lib/lxc/kvm/rootfs/etc/rc.local
!!!mkdir -p /dev/net || true
!!!mknod /dev/kvm c 10 232
!!!mknod /dev/net/tun c 10 200
!!!exit 0
mkdir -p /dev/net || true
mknod /dev/net/tun c 10 200
chmod 666 /dev/net/tun
mkdir -p /dev/kvm || true
mknod /dev/kvm c 10 232
exit 0
Сохранить.
Проверка:
# grep -v ^# /var/lib/lxc/kvm/rootfs/etc/rc.local
root@i7:~# grep -v ^# /var/lib/lxc/kvm/rootfs/etc/rc.local
mkdir -p /dev/net || true
mknod /dev/kvm c 10 232
mknod /dev/net/tun c 10 200
exit 0
.
# nano /var/lib/lxc/kvm/config
Сохранить.
!!!# grep -v ^# /var/lib/lxc/kvm/config
# lxc-start -n kvm -d
# lxc-ls -f
# ssh ubuntu@192.168.0.63
$ sudo -i
# apt-get update -y
# apt-get upgrade -y
# apt-get install mc samba wget nano -y
# apt-get install qemu-kvm libvirt-bin virtinst -y
qemu-kvm start/running
rmmod: ERROR: ../libkmod/libkmod-module.c:769 kmod_module_remove_module() could not remove 'kvm_intel': Operation not permitted
rmmod: ERROR: could not remove module kvm_intel: Operation not permitted
# kvm-ok
root@kvm:~# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
# cd /home/ubuntu
# wget http://mirror.yandex.ru/ubuntu-releases/14.04.5/ubuntu-14.04.5-server-amd64.iso
# virt-install --connect qemu:///system -n ubuntu1404-vm1 -s 10 -r 512 -f /var/lib/libvirt/images/ubuntu1404-vm1.img --vcpus=1 --os-variant ubuntutrusty --nographics --location ./ubuntu-14.04.5-server-amd64.iso --extra-args='console=tty0 console=ttyS0,115200n8' --keymap ru
# virt-install --connect qemu:///system -n ubuntu1404-vm1 -s 10 -r 512 -f /var/lib/libvirt/images/ubuntu1404-vm1.img --vcpus=1 --os-variant ubuntutrusty --nographics --location ./ubuntu-14.04.5-server-amd64.iso --extra-args='console=tty0 console=ttyS0,115200n8' --keymap ru
Работа с KVM в Debian или Ubuntu из командной строки
Старт контейнера
# lxc-start -n kvm -d
# lxc-ls -f
# ssh ubuntu@kvm
# apt-get update
# apt-get install bridge-utils -y
# apt-get remove network-manager -y
# reboot
# apt-get install qemu-kvm libvirt-bin virtinst -y
# mkdir -p /dev/kvm || true
# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
# apt-get install virt-manager -y
Восстановление контейнера
# cd /var/lib/lxc
# tar xvzf d_lxc.tar.gz
# lxc-clone -o d_lxc -n kvm
# nano /var/lib/lxc/kvm/rootfs/etc/rc.local
!!!mkdir -p /dev/net || true
!!!mknod /dev/kvm c 10 232
!!!mknod /dev/net/tun c 10 200
!!!exit 0
mkdir -p /dev/net || true
mknod /dev/net/tun c 10 200
chmod 666 /dev/net/tun
mkdir -p /dev/kvm || true
mknod /dev/kvm c 10 232
exit 0
Сохранить.
Проверка:
# grep -v ^# /var/lib/lxc/kvm/rootfs/etc/rc.local
root@i7:~# grep -v ^# /var/lib/lxc/kvm/rootfs/etc/rc.local
mkdir -p /dev/net || true
mknod /dev/kvm c 10 232
mknod /dev/net/tun c 10 200
exit 0
.
# nano /var/lib/lxc/kvm/config
lxc.cgroup.devices.allow = b 7:* rwm
lxc.cgroup.devices.allow = c 10:230 rwm
lxc.cgroup.devices.allow = c 10:232 rwm
Сохранить.
!!!# grep -v ^# /var/lib/lxc/kvm/config
# lxc-start -n kvm -d
# lxc-ls -f
# ssh ubuntu@192.168.0.63
$ sudo -i
# apt-get update -y
# apt-get upgrade -y
# apt-get install mc samba wget nano -y
qemu-kvm start/running
rmmod: ERROR: ../libkmod/libkmod-module.c:769 kmod_module_remove_module() could not remove 'kvm_intel': Operation not permitted
rmmod: ERROR: could not remove module kvm_intel: Operation not permitted
# kvm-ok
root@kvm:~# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
# cd /home/ubuntu
# wget http://mirror.yandex.ru/ubuntu-releases/14.04.5/ubuntu-14.04.5-server-amd64.iso
# virt-install --connect qemu:///system -n ubuntu1404-vm1 -s 10 -r 512 -f /var/lib/libvirt/images/ubuntu1404-vm1.img --vcpus=1 --os-variant ubuntutrusty --nographics --location ./ubuntu-14.04.5-server-amd64.iso --extra-args='console=tty0 console=ttyS0,115200n8' --keymap ru
# virt-install --connect qemu:///system -n ubuntu1404-vm1 -s 10 -r 512 -f /var/lib/libvirt/images/ubuntu1404-vm1.img --vcpus=1 --os-variant ubuntutrusty --nographics --location ./ubuntu-14.04.5-server-amd64.iso --extra-args='console=tty0 console=ttyS0,115200n8' --keymap ru
wget wget https://cloud-images.ubuntu.com/releases/16.04/release/ubuntu-16.04-server-cloudimg-amd64-disk1.img
Работа с KVM в Debian или Ubuntu из командной строки
Старт контейнера
# lxc-start -n kvm -d
# lxc-ls -f
# ssh ubuntu@kvm
# apt-get update
# apt-get install bridge-utils -y
# apt-get remove network-manager -y
# reboot
# apt-get install qemu-kvm libvirt-bin virtinst -y
# mkdir -p /dev/kvm || true
# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
# apt-get install virt-manager -y
среда, 19 апреля 2017 г.
Установка ubuntu 16.04.1 server i7
$ sudo -i
Для Ubuntu 16.04 (systemd)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
# reboot
$ sudo -i
# systemctl status ondemand
# apt-get update -y
# apt-get upgrade -y
!!!# apt-get install mc atop htop ssh samba
# apt-get install mc htop -y
Настроим ipv6
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
# apt-get install lxc bridge-utils debootstrap libcap-dev cgroup-bin libpam-systemd -y
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
!!!# apt-get remove network-manager
# reboot
$ sudo -i
# ifconfig
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
Созадать контейнер:
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
!##
!# The default user is 'ubuntu' with password 'ubuntu'!
!# Use the 'sudo' command to run tasks as root in the container.
!##
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf precise_lxc.tar.gz ./precise_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# apt-get install apcupsd -y
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
# Для проверки 30 (потом убрать)
TIMEOUT 0
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
____________________________________________________
Монтирование внешнего диска A-DATA
# lsusb
Bus 002 Device 002: ID 125f:a65a A-DATA Technology Co., Ltd.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# blkid
/dev/sda1: UUID="8d4ffa59-f7f6-40d9-b12f-effc1c1e194f" TYPE="ext4" PARTUUID="ab9f70c7-01"
/dev/sda5: UUID="4d0d3ff5-e71d-4ed2-a22f-b68afc485cc9" TYPE="swap" PARTUUID="ab9f70c7-05"
/dev/sdb1: UUID="f35c3886-36f0-4e81-9686-b4685232a858" TYPE="ext4" PARTUUID="9e7322ed-b450-46af-bfa5-2783d1cd8023"
# fdisk -l
# mkdir /mnt/A-DATA
# mount /dev/sdb1 /mnt/A-DATA -t auto
# umount /dev/sdb1
# mkdir /mnt/WD
# mount /dev/sdc1 /mnt/WD -t auto
# umount /dev/sdc1
_______________________________________________________
Развернем desktop:
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf d_lxc.tar.gz
# passwd root
Разрешим вход root по ssh
Закоментировать PermitRootLogin prohibit-password
Добавить PermitRootLogin yes
# nano /etc/ssh/sshd_config
# Authentication: LoginGraceTime 120
#PermitRootLogin prohibit-password
PermitRootLogin yes StrictModes yes
# systemctl restart sshd
# lxc-clone -o d_lxc -n virt
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# apt-get install virt-manager
# virsh edit w_2012-clone
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
# nano /etc/apparmor.d/abstractions/libvirt-qemu
!!!# sudo /etc/init.d/apparmor stop
# systemctl status apparmor
# systemctl stop apparmor
# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Для Ubuntu 16.04 (systemd)
# cat /proc/cpuinfo | grep MHz
# systemctl status ondemand
# systemctl stop ondemand
# systemctl disable ondemand
# reboot
$ sudo -i
# systemctl status ondemand
# apt-get update -y
# apt-get upgrade -y
!!!# apt-get install mc atop htop ssh samba
# apt-get install mc htop -y
Настроим ipv6
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
# apt-get install lxc bridge-utils debootstrap libcap-dev cgroup-bin libpam-systemd -y
# nano /etc/network/interfaces
# Setup bridge
auto br0
iface br0 inet dhcp
bridge_ports enp1s0
bridge_fd 0
Сохранить.
!!!# apt-get remove network-manager
# reboot
$ sudo -i
# ifconfig
Disable the default bridge “lxcbr0“, got created as part of LXC installation.
# nano /etc/default/lxc-net
USE_LXC_BRIDGE="false"
Сохранить.
# nano /etc/lxc/default.conf
lxc.network.type = veth
lxc.network.link = br0 # Replace with your bridge name
lxc.network.flags = up
lxc.network.hwaddr = 00:16:3e:xx:xx:xx
Сохранить.
# nano /etc/dnsmasq.d/lxc
except-interface=br0
Сохранить.
# reboot
$ sudo -i
# ifconfig
Созадать контейнер:
# lxc-create -t ubuntu -n precise_lxc -- -r precise -a amd64
# lxc-create -t ubuntu -n trusty_lxc -- -r trusty -a amd64
# lxc-create -t ubuntu -n xenial_lxc -- -r xenial -a amd64
!##
!# The default user is 'ubuntu' with password 'ubuntu'!
!# Use the 'sudo' command to run tasks as root in the container.
!##
Сохранение контейнера precise_lxc :
# cd /var/lib/lxc/
# tar -cvzf precise_lxc.tar.gz ./precise_lxc
Сохранение контейнера trusty_lxc :
# cd /var/lib/lxc/
# tar -cvzf trusty_lxc.tar.gz ./trusty_lxc
Сохранение контейнера xenial_lxc :
# cd /var/lib/lxc/
# tar -cvzf xenial_lxc.tar.gz ./xenial_lxc
Настройка Ubuntu для работы с ИБП от APC
# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# apt-get install apcupsd -y
# nano /etc/apcupsd/apcupsd.conf
#UPSCABLE smart
UPSCABLE usb
......
#UPSTYPE apcsmart
UPSTYPE usb
#DEVICE /dev/ttyS0
#DEVICE /dev/ttyS0
# Для проверки 30 (потом убрать)
Сохранить.
Настроим /etc/default/apcupsd
Заменяем ISCONFIGURED=no на ISCONFIGURED=yes , сохраняем, закрываем. Отныне apcupsd будет знать, что мы не забыли его настроить.
# nano /etc/default/apcupsd
#ISCONFIGURED=no
ISCONFIGURED=yes
Сохранить.
Теперь достаточно запустить apcupsd:
# /etc/init.d/apcupsd start
Starting UPS power management: apcupsd.
# /etc/init.d/apcupsd status
____________________________________________________
Установка kvm
Настроим сетевой мост br0 до инсталляции kvm
# apt-get update
!!!# apt-get install qemu-kvm libvirt-bin virtinst bridge-utils
# apt-get install qemu-kvm libvirt-bin virtinst -y
!!!# apt-get install virt-manager
# usermod -a -G libvirtd user
# usermod -a -G libvirtd root
____________________________________________________
Монтирование внешнего диска A-DATA
# lsusb
Bus 002 Device 002: ID 125f:a65a A-DATA Technology Co., Ltd.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0529:0001 Aladdin Knowledge Systems HASP copy protection dongle
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# blkid
/dev/sda1: UUID="8d4ffa59-f7f6-40d9-b12f-effc1c1e194f" TYPE="ext4" PARTUUID="ab9f70c7-01"
/dev/sda5: UUID="4d0d3ff5-e71d-4ed2-a22f-b68afc485cc9" TYPE="swap" PARTUUID="ab9f70c7-05"
/dev/sdb1: UUID="f35c3886-36f0-4e81-9686-b4685232a858" TYPE="ext4" PARTUUID="9e7322ed-b450-46af-bfa5-2783d1cd8023"
# fdisk -l
# mkdir /mnt/A-DATA
# mount /dev/sdb1 /mnt/A-DATA -t auto
# umount /dev/sdb1
# mkdir /mnt/WD
# mount /dev/sdc1 /mnt/WD -t auto
# umount /dev/sdc1
_______________________________________________________
Развернем desktop:
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf d_lxc.tar.gz
# passwd root
Разрешим вход root по ssh
Закоментировать PermitRootLogin prohibit-password
Добавить PermitRootLogin yes
# nano /etc/ssh/sshd_config
# Authentication: LoginGraceTime 120
#PermitRootLogin prohibit-password
PermitRootLogin yes StrictModes yes
# systemctl restart sshd
# lxc-clone -o d_lxc -n virt
# lxc-start -n virt -d
# lxc-ls -f
# ssh ubuntu@virt
Войдем по xrdp
# apt-get install virt-manager
# virsh edit w_2012-clone
<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='12345'>
<listen type='address' address='0.0.0.0'/>
</graphics>
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Virsh — управление виртуальными машинами KVM
Запущенные машины:
# virsh list
Запуск машины
# virsh start w_2012-clone
Выключение машины
# virsh shutdown w_2012-clone
Запущенные машины:
# virsh list
# virsh vncdisplay w_2012-clone
:0
Подключение vnc:
i7:0
Ограничения для USB устройств в KVM
- USB протокол 1.1
- Устройство должно быть подключено до запуска KVM
- Нужны изменения Apparmor
# nano /etc/apparmor.d/abstractions/libvirt-qemu
!!!# sudo /etc/init.d/apparmor stop
# systemctl status apparmor
# systemctl stop apparmor
# systemctl disable apparmor
# reboot
Запуск машины
# virsh start w_2012-clone
Резервное копирование машин
По умолчанию xml в /etc/libvirt/qemu
Сохранить можно так:
# virsh dumpxml w_2012-clone > /tmp/w_2012-clone.xml
# virsh dumpxml w_2012 > /tmp/w_2012.xml
Восстановить так:
# virsh define /tmp/w_2012-clone.xml
# virsh define /tmp/w_2012.xml
или
# virsh define /etc/libvirt/qemu/w_2012-clone.xml
# virsh define /etc/libvirt/qemu/w_2012.xml
Далее, запуск машины
# virsh start w_2012-clone
Работа с KVM в Debian или Ubuntu из командной строки
Публикация ИБ на веб-сервере Apache 2.4.
Клонирование контейнера с заменой кластера 1с
Клонировать контейнер
# lxc-clone -o p962 -n p962_2
Почистить кластер 1с
# rm -R /var/lib/lxc/p962_2/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Старт контейнера
# lxc-start -n p962_2 -d
Посмотреть ip
# lxc-ls -f
Создадим базу (база подхватится из клонируемого контейнера):
# ssh ubuntu@p962_2
# apt-get install apache2 -y
# systemctl status apache2
● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Ср 2017-04-19 08:49:03 UTC; 55s ago
Docs: man:systemd-sysv-generator(8)
CGroup: /system.slice/apache2.service
├─985 /usr/sbin/apache2 -k start
├─988 /usr/sbin/apache2 -k start
└─989 /usr/sbin/apache2 -k start
# systemctl enable apache2
Проверим http://p962_2/
________________________________________________
Кроме того, мы можем включить поддержку ssl
для нашего веб-сервера.
Для этого выполните:
# a2enmod ssl
# a2ensite default-ssl
Перезагрузка Apache:
# systemctl restart apache2
________________________________________________
Создаем директорию для vrd-файла:
# mkdir -p /var/www/ib/demo
А также файл конфигурации Apache:
# touch /etc/apache2/conf-available/demo.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo -dir '/var/www/ib/demo' -connstr 'Srvr="localhost";Ref="demo";' -confPath /etc/apache2/conf-available/demo.conf
# ./webinst -apache24 -wsdir demo -dir '/var/www/ib/demo' -connstr 'Srvr="localhost";Ref="demo";' -confPath /etc/apache2/conf-available/demo.conf
Подключаем конфигурацию:
# a2enconf demo
Перезагрузка Apache:# systemctl restart apache2
Смотрим:
http://p962_2/demo или https://p962_2/demo ______________________________________________________
Если нужно подключить вторую базу:
Создаем директорию для vrd-файла:
# mkdir -p /var/www/ib/demo1
А также файл конфигурации Apache:
# touch /etc/apache2/conf-available/demo1.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="localhost";Ref="demo1";' -confPath /etc/apache2/conf-available/demo1.conf
# ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="localhost";Ref="demo1";' -confPath /etc/apache2/conf-available/demo1.conf
Подключаем конфигурацию:
# a2enconf demo1
Перезагрузка Apache:
# systemctl restart apache2
Смотрим:
http://p962_2/demo1 или https://p962_2/demo1
______________________________________________________
Если нужно подключить базу на другом сервере:
(сервер db2 база demo)
Исправим demo1 ('Srvr="db2";Ref="demo";')
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="db2";Ref="demo";' -confPath /etc/apache2/conf-available/demo1.conf
Подключаем конфигурацию:
# a2enconf demo1
Перезагрузка Apache:
# systemctl restart apache2
Смотрим:
http://p962_2/demo1 или https://p962_2/demo1
Клонировать контейнер
# lxc-clone -o p962 -n p962_2
Почистить кластер 1с
# rm -R /var/lib/lxc/p962_2/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Старт контейнера
# lxc-start -n p962_2 -d
Посмотреть ip
# lxc-ls -f
Создадим базу (база подхватится из клонируемого контейнера):
# ssh ubuntu@p962_2
# apt-get install apache2 -y
# systemctl status apache2
● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Ср 2017-04-19 08:49:03 UTC; 55s ago
Docs: man:systemd-sysv-generator(8)
CGroup: /system.slice/apache2.service
├─985 /usr/sbin/apache2 -k start
├─988 /usr/sbin/apache2 -k start
└─989 /usr/sbin/apache2 -k start
# systemctl enable apache2
Проверим http://p962_2/
________________________________________________
Кроме того, мы можем включить поддержку ssl
для нашего веб-сервера.
Для этого выполните:
# a2enmod ssl
# a2ensite default-ssl
Перезагрузка Apache:
# systemctl restart apache2
________________________________________________
Создаем директорию для vrd-файла:
# mkdir -p /var/www/ib/demo
А также файл конфигурации Apache:
# touch /etc/apache2/conf-available/demo.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo -dir '/var/www/ib/demo' -connstr 'Srvr="localhost";Ref="demo";' -confPath /etc/apache2/conf-available/demo.conf
Backup: # ./webinst -apache24 -wsdir demo -dir '/var/www/ib/demo' -connstr 'Srvr="localhost";Ref="demo";' -confPath /etc/apache2/conf-available/demo.conf
Где /var/www/ib/demo
- директория где будет создан vrd-файл, demo
- имя ИБ, localhost - адрес сервера 1С:Предпрятие, а /etc/apache2/conf-available/demo.conf
- путь до конфигурационного файла Apache.Подключаем конфигурацию:
# a2enconf demo
Перезагрузка Apache:# systemctl restart apache2
Смотрим:
http://p962_2/demo или https://p962_2/demo ______________________________________________________
Если нужно подключить вторую базу:
Создаем директорию для vrd-файла:
# mkdir -p /var/www/ib/demo1
А также файл конфигурации Apache:
# touch /etc/apache2/conf-available/demo1.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="localhost";Ref="demo1";' -confPath /etc/apache2/conf-available/demo1.conf
Backup: # ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="localhost";Ref="demo1";' -confPath /etc/apache2/conf-available/demo1.conf
Где /var/www/ib/demo1
- директория где будет создан vrd-файл, demo1
- имя ИБ, localhost - адрес сервера 1С:Предпрятие, а /etc/apache2/conf-available/demo1.conf
- путь до конфигурационного файла Apache.Подключаем конфигурацию:
# a2enconf demo1
Перезагрузка Apache:
# systemctl restart apache2
Смотрим:
http://p962_2/demo1 или https://p962_2/demo1
______________________________________________________
Если нужно подключить базу на другом сервере:
(сервер db2 база demo)
Исправим demo1 ('Srvr="db2";Ref="demo";')
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo1 -dir '/var/www/ib/demo1' -connstr 'Srvr="db2";Ref="demo";' -confPath /etc/apache2/conf-available/demo1.conf
Подключаем конфигурацию:
# a2enconf demo1
Перезагрузка Apache:
# systemctl restart apache2
Смотрим:
http://p962_2/demo1 или https://p962_2/demo1
вторник, 18 апреля 2017 г.
Установка postgresql 9.6.2 на ubuntu 16.04.2 lxc
Клонировать контейнер
# lxc-clone -o xenial_lxc -n xp962_lxc
Проверить:
# nano /var/lib/lxc/xp962_lxc/rootfs/etc/hosts
127.0.0.1 localhost
127.0.1.1 xp962_lxc
Сохранить.
Старт контейнера
# lxc-start -n xp962_lxc -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.222
$ sudo -i
Настроим часовой пояс Москва.
# dpkg-reconfigure tzdata
# apt-get update -y
# apt-get upgrade -y
# apt-get install mc htop samba nano wget -y
Настроим ipv6
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
Проверка:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
# reboot
Зайти по ssh
# ssh ubuntu@xp962_lxc
Подключение под debian 7/8, ubuntu 12.04/14.04/16.04:
# sudo sh -c 'echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list'
# wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | sudo apt-key add - && sudo apt-get update
# sudo apt-get install postgresql-pro-1c-9.6 -y
# systemctl start postgresql
# systemctl enable postgresql
# systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Вт 2017-04-18 08:51:27 UTC; 1min 18s ago
Main PID: 1455 (code=exited, status=0/SUCCESS)
апр 18 08:51:27 p962_lxc systemd[1]: Starting PostgreSQL RDBMS...
апр 18 08:51:27 p962_lxc systemd[1]: Started PostgreSQL RDBMS.
# su - postgres
$ psql -l
$ psql
q
Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы Ubuntu.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
# netstat -atn|grep 0.0.0.0:54
Мы должны получить строку с номером порта (обычно 5432)/
# ps ax | grep postgres
# netstat -nlt
# poweroff
Сохранение контейнера xp962_lxc
# cd /var/lib/lxc/
# tar -cvzf xp962_lxc.tar.gz ./xp962_lxc
_______________________________________________
Установка 1С
Клонировать контейнер
# lxc-clone -o xp962_lxc -n xp962
# mkdir /var/lib/lxc/xp962/rootfs/home/ubuntu/8.3.10.2252
# cp /home/user/_soft/8.3.10.2252/deb64.tar.gz /var/lib/lxc/xp962/rootfs/home/ubuntu/8.3.10.2252/
Старт контейнера
# lxc-start -n xp962 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@xp962
# systemctl status postgresql
# netstat -atn|grep 0.0.0.0:54
# apt-get install imagemagick -y
Строка ниже срабатывает далеко не всегда
# apt-get install ttf-mscorefonts-installer -y
# fc-cache -f -v
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
# cd /home/ubuntu/8.3.10.2252/# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd ..
# rm -R /home/ubuntu/8.3.10.2252
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
netstat -atn|grep 0.0.0.0:15
netstat -atn|grep 0.0.0.0:54
Сохраним без базы.
# poweroff
Поскольку сервер 1с запускался нужно
почистить
# rm -R /var/lib/lxc/xp962/rootfs/home/usr1cv8/.1cv8
Сохранение контейнера xp962
# cd /var/lib/lxc/
# tar -cvzf xp962.tar.gz ./xp962
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf xp962.tar.gz
!!!Старт контейнера
!!!# lxc-start -n xp962 -d
!!!Посмотреть ip
!!!# lxc-ls -f
Клонирование контейнера с заменой кластера 1с
Клонировать контейнер
# lxc-clone -o xp962 -n xp962_1
Почистить кластер 1с
!!!# rm -R /var/lib/lxc/xp962_1/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Старт контейнера
# lxc-start -n xp962_1 -d
Посмотреть ip
# lxc-ls -f
Создадим базу (база подхватится из клонируемого контейнера):
# poweroff
Сохранение контейнера xp962_1
# cd /var/lib/lxc/
# tar -cvzf xp962_1.tar.gz ./xp962_1
Старт контейнера
# lxc-start -n xp962_1 -d
Посмотреть ip
# lxc-ls -f
PostgreSQL - реальная альтернатива для высоконагруженных систем на базе 1С
# nano /etc/postgresql/9.6/main/postgresql.conf
ssl = false
autovacuum = on
autovacuum_max_workers =3
Autovacuum_naptime = 20s
autovacuum_vacuum_scale_factor = 0.01
autovacuum_analyze_scale_factor = 0.05
online_analyze.enable = on
fsync = on
synchronous_commit = off
# reboot
Тест показал 38 попугаев.
Настройки ниже ускорения не дали.
Configuration calculator for PostgreSQL
PostgreSQL в 1С:Предприятии и в облачной системе 1С:Fresh
•fsync По умолчанию включен – при COMMIT данные пишутся из кэша ОС на диск При использовании RAID-массивов можно отключить
•effective_cache_size
•Рекомендуемое значение – не менее 50% объема RAM
•Сервер
•4 - 512 Gb RAM
•2 - 256 CPU cores
•RAID 0-1 или SSD
•Отключить HyperThreading
•Отключить Energy Saving
•Запретить своппинг разделяемой памяти SYSV/posix
•shared_buffers = RAM / 4
•temp_buffers = 256MB
•work_mem = RAM / 32..64 или 32MB..128MB
•maintenance_work_mem = RAM /1 6..32
или work_mem * 4
или 256MB..4GB
•effective_cache_size = RAM - shared_buffers
•effective_io_concurrency = 2
•Для одиночного диска = 1, для RAID - 2 или больше
•autovacuum = on
•autovacuum_max_workers = NCores / 4..2 но не меньше 4
--------------------------------------------------------------------------------------------------------------
Если развернуть контейнер на другом hoste PostgreSQL не запускается.
# systemctl restart postgresql.service
# journalctl
май 15 08:00:09 xp962_1 postgresql@9.6-main[733]: Error: The cluster is owned by group id 115 which does not exist
# id -u postgres
108
# getent group postgres
postgres:x:114:
# getent group postgres
postgres:x:115:
Вообщем не помогает.
Поробуем так:
# service postgresql stop
# su - postgres
$ cd /var/lib/postgresql/9.6/
$ tar -cvzf main_backup-`date +%Y-%m-%d_%H-%M-%S`.tgz main
!!!$ tar -cvzf main_backup-`date +%s`.tgz main
$ rm -rf main
!!!$ mkdir main
!!!$ chmod go-rwx main
# apt-get purge postgresql-pro-1c-9.6 -y
# apt-get install postgresql-pro-1c-9.6 -y
# su - postgres
$ psql -l
$ psql
q
Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы Ubuntu.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
# netstat -atn|grep 0.0.0.0:54
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
Мы должны получить строку с номером порта (обычно 5432)/
# ps ax | grep postgres
$ ps ax | grep postgres
2142 ? S 0:00 /usr/lib/postgresql/9.6/bin/postgres -D /var/lib/postgresql/9.6/main -c config_file=/etc/postgresql/9.6/main/postgresql.conf
2144 ? Ss 0:00 postgres: 9.6/main: checkpointer process
2145 ? Ss 0:00 postgres: 9.6/main: writer process
2146 ? Ss 0:00 postgres: 9.6/main: wal writer process
2147 ? Ss 0:00 postgres: 9.6/main: autovacuum launcher process
2148 ? Ss 0:00 postgres: 9.6/main: stats collector process
2191 pts/4 S 0:00 su - postgres
2222 pts/4 S+ 0:00 grep postgres
# netstat -nlt
Все работает, теперь осталось восстановить кластер из архива:
# service postgresql stop
# su - postgres
$ cd /var/lib/postgresql/9.6/
$ tar -cvzf main_backup-`date +%s`.tgz main
$ rm -rf main
!!!$ mkdir main
$ tar xvzf main_backup-1494840424.tgz
!!!$ chmod go-rwx main
$ psql -l
# rm -R /home/usr1cv8/.1cv8
# service srv1cv83 restart
# netstat -atn|grep 0.0.0.0:15
# netstat -atn|grep 0.0.0.0:54
При подключении из 1с нужно заново создать
базу demo c теми же параметрами.
https://serveradmin.ru/bekap-i-vosstanovlenie-bazyi-1s-v-bd-postgresql/
# lxc-clone -o xenial_lxc -n xp962_lxc
Проверить:
# nano /var/lib/lxc/xp962_lxc/rootfs/etc/hosts
127.0.0.1 localhost
127.0.1.1 xp962_lxc
Сохранить.
Старт контейнера
# lxc-start -n xp962_lxc -d
Посмотреть ip
# lxc-ls -f
Зайти по ssh
# ssh ubuntu@192.168.0.222
$ sudo -i
Настроим часовой пояс Москва.
# dpkg-reconfigure tzdata
# apt-get update -y
# apt-get upgrade -y
# apt-get install mc htop samba nano wget -y
Настроим ipv6
# nano /etc/sysctl.conf
В конец файла:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
Сохранить.
# sysctl -p
Проверка:
# cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
# reboot
Зайти по ssh
# ssh ubuntu@xp962_lxc
Подключение под debian 7/8, ubuntu 12.04/14.04/16.04:
# sudo sh -c 'echo "deb http://1c.postgrespro.ru/deb/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/postgrespro-1c.list'
# wget --quiet -O - http://1c.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO-1C | sudo apt-key add - && sudo apt-get update
# sudo apt-get install postgresql-pro-1c-9.6 -y
# systemctl start postgresql
# systemctl enable postgresql
# systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) since Вт 2017-04-18 08:51:27 UTC; 1min 18s ago
Main PID: 1455 (code=exited, status=0/SUCCESS)
апр 18 08:51:27 p962_lxc systemd[1]: Starting PostgreSQL RDBMS...
апр 18 08:51:27 p962_lxc systemd[1]: Started PostgreSQL RDBMS.
# su - postgres
$ psql -l
$ psql
q
Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы Ubuntu.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
# netstat -atn|grep 0.0.0.0:54
Мы должны получить строку с номером порта (обычно 5432)/
# ps ax | grep postgres
# netstat -nlt
Активные соединения с интернетом (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN
tcp6 0 0 :::139 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::5432 :::* LISTEN
tcp6 0 0 :::445 :::* LISTEN
# poweroff
Сохранение контейнера xp962_lxc
# cd /var/lib/lxc/
# tar -cvzf xp962_lxc.tar.gz ./xp962_lxc
_______________________________________________
Установка 1С
Клонировать контейнер
# lxc-clone -o xp962_lxc -n xp962
# mkdir /var/lib/lxc/xp962/rootfs/home/ubuntu/8.3.10.2252
# cp /home/user/_soft/8.3.10.2252/deb64.tar.gz /var/lib/lxc/xp962/rootfs/home/ubuntu/8.3.10.2252/
Старт контейнера
# lxc-start -n xp962 -d
Посмотреть ip
# lxc-ls -f
# ssh ubuntu@xp962
# systemctl status postgresql
# netstat -atn|grep 0.0.0.0:54
# apt-get install imagemagick -y
Строка ниже срабатывает далеко не всегда
# apt-get install ttf-mscorefonts-installer -y
# fc-cache -f -v
------------------------------------------------------------
Альтернативно:
# apt-get install wget -y
# mkdir /home/ubuntu/Downloads
# wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.6_all.deb -P /home/ubuntu/Downloads
# apt install /home/ubuntu/Downloads/ttf-mscorefonts-installer_3.6_all.deb
# fc-cache -f -v
------------------------------------------------------------
# cd /home/ubuntu/8.3.10.2252/# tar xvzf deb64.tar.gz
# dpkg -i 1c*.deb
# apt-get -f install
# apt autoremove -y
# cd ..
# rm -R /home/ubuntu/8.3.10.2252
# chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
# passwd usr1cv8
# service srv1cv83 start
# service srv1cv83 status
!!!# service srv1cv83 restart
netstat -atn|grep 0.0.0.0:15
netstat -atn|grep 0.0.0.0:54
Сохраним без базы.
# poweroff
Поскольку сервер 1с запускался нужно
почистить
# rm -R /var/lib/lxc/xp962/rootfs/home/usr1cv8/.1cv8
Сохранение контейнера xp962
# cd /var/lib/lxc/
# tar -cvzf xp962.tar.gz ./xp962
Восстановление контейнера
!!!# cd /var/lib/lxc
!!!# tar xvzf xp962.tar.gz
!!!Старт контейнера
!!!# lxc-start -n xp962 -d
!!!Посмотреть ip
!!!# lxc-ls -f
Клонирование контейнера с заменой кластера 1с
Клонировать контейнер
# lxc-clone -o xp962 -n xp962_1
Почистить кластер 1с
!!!# rm -R /var/lib/lxc/xp962_1/rootfs/home/usr1cv8/.1cv8
Создадим базу (база подхватится из клонируемого контейнера):
Старт контейнера
# lxc-start -n xp962_1 -d
Посмотреть ip
# lxc-ls -f
Создадим базу (база подхватится из клонируемого контейнера):
# poweroff
Сохранение контейнера xp962_1
# cd /var/lib/lxc/
# tar -cvzf xp962_1.tar.gz ./xp962_1
Старт контейнера
# lxc-start -n xp962_1 -d
Посмотреть ip
# lxc-ls -f
PostgreSQL - реальная альтернатива для высоконагруженных систем на базе 1С
# nano /etc/postgresql/9.6/main/postgresql.conf
ssl = false
autovacuum = on
autovacuum_max_workers =3
Autovacuum_naptime = 20s
autovacuum_vacuum_scale_factor = 0.01
autovacuum_analyze_scale_factor = 0.05
online_analyze.enable = on
fsync = on
synchronous_commit = off
# reboot
Тест показал 38 попугаев.
Configuration calculator for PostgreSQL
# nano /etc/postgresql/9.6/main/postgresql.conf
max_connections = 20
shared_buffers = 4GB
effective_cache_size = 12GB
work_mem = 209715kB
maintenance_work_mem = 1GB
min_wal_size = 2GB
max_wal_size = 4GB
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100
PostgreSQL в 1С:Предприятии и в облачной системе 1С:Fresh
•fsync По умолчанию включен – при COMMIT данные пишутся из кэша ОС на диск При использовании RAID-массивов можно отключить
•effective_cache_size
•Рекомендуемое значение – не менее 50% объема RAM
•Сервер
•4 - 512 Gb RAM
•2 - 256 CPU cores
•RAID 0-1 или SSD
•Отключить HyperThreading
•Отключить Energy Saving
•Запретить своппинг разделяемой памяти SYSV/posix
•shared_buffers = RAM / 4
•temp_buffers = 256MB
•work_mem = RAM / 32..64 или 32MB..128MB
•maintenance_work_mem = RAM /1 6..32
или work_mem * 4
или 256MB..4GB
•effective_cache_size = RAM - shared_buffers
•effective_io_concurrency = 2
•Для одиночного диска = 1, для RAID - 2 или больше
•autovacuum = on
•autovacuum_max_workers = NCores / 4..2 но не меньше 4
--------------------------------------------------------------------------------------------------------------
Если развернуть контейнер на другом hoste PostgreSQL не запускается.
# systemctl restart postgresql.service
# journalctl
май 15 08:00:09 xp962_1 postgresql@9.6-main[733]: Error: The cluster is owned by group id 115 which does not exist
# id -u postgres
108
# userdel postgres
# getent group postgres
postgres:x:114:
# groupmod -g 115 postgres
# getent group postgres
postgres:x:115:
adduser -UID 110 postgres
# chown -R postgres:postgres /var/lib/postgresql
Вообщем не помогает.
Поробуем так:
# service postgresql stop
# su - postgres
$ cd /var/lib/postgresql/9.6/
echo "`date +"%Y-%m-%d_%H-%M-%S"`
$ tar -cvzf main_backup-`date +%Y-%m-%d_%H-%M-%S`.tgz main
!!!$ tar -cvzf main_backup-`date +%s`.tgz main
$ rm -rf main
!!!$ mkdir main
!!!$ chmod go-rwx main
# apt-get purge postgresql-pro-1c-9.6 -y
# apt-get install postgresql-pro-1c-9.6 -y
# su - postgres
$ psql -l
$ psql
q
Далее наберем
\password
введем два раза новый пароль pass
и наберем команду
\q
для выхода.
$ exit
Обратите внимание, что данный пароль устанавливается для внутреннего пользователя базы данных, а не для одноименного пользователя операционной системы Ubuntu.
Проверим, корректно ли запущен и работает наш сервер PostgreSQL который нам нужен для дальнейшего развертывания базы данных. Выполним
# netstat -atn|grep 0.0.0.0:54
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
Мы должны получить строку с номером порта (обычно 5432)/
# ps ax | grep postgres
$ ps ax | grep postgres
2142 ? S 0:00 /usr/lib/postgresql/9.6/bin/postgres -D /var/lib/postgresql/9.6/main -c config_file=/etc/postgresql/9.6/main/postgresql.conf
2144 ? Ss 0:00 postgres: 9.6/main: checkpointer process
2145 ? Ss 0:00 postgres: 9.6/main: writer process
2146 ? Ss 0:00 postgres: 9.6/main: wal writer process
2147 ? Ss 0:00 postgres: 9.6/main: autovacuum launcher process
2148 ? Ss 0:00 postgres: 9.6/main: stats collector process
2191 pts/4 S 0:00 su - postgres
2222 pts/4 S+ 0:00 grep postgres
# netstat -nlt
Все работает, теперь осталось восстановить кластер из архива:
# service postgresql stop
# su - postgres
$ cd /var/lib/postgresql/9.6/
$ tar -cvzf main_backup-`date +%s`.tgz main
$ rm -rf main
!!!$ mkdir main
$ tar xvzf main_backup-1494840424.tgz
!!!$ chmod go-rwx main
$ psql -l
# rm -R /home/usr1cv8/.1cv8
# service srv1cv83 restart
# netstat -atn|grep 0.0.0.0:15
# netstat -atn|grep 0.0.0.0:54
При подключении из 1с нужно заново создать
базу demo c теми же параметрами.
https://serveradmin.ru/bekap-i-vosstanovlenie-bazyi-1s-v-bd-postgresql/
.