Какие есть утилиты для создания образа Unux-системы «на живую»?

Здравствуйте.
Стоит следующая задача: нужно создавать образ Unix-систем (Solaris, CentOS...) «на лету», причём по возможности без сильного проседания производительности (во всяком случае, чтобы на такой системе ещё кто-то мог работать). Системы на физическом серваке и виртуалках, «под рукой» и удалённые.
В данный момент продумывал три варианта, но у всех есть своё «но»:
1. При помощи dd. Минуса как минимум два — во время работы отъедает достаточно много ресурсов у диска, особенно если это не SSD, а также размер бэкапа равен размеру диска, т.е. в случае, если на условном диске /dev/sda1 20Гб данных, но сам диск на 120Гб, то размер бэкапа составит 120Гб (уточняю такие мелочи для тех, кто тоже в поиске ответов).
2. При помощи tar. Минус хотя бы один — несоответствие требованиям. Сделать бэкап системы «на лету» не удаётся, т.к. многие файлы из /dev и /proc не архивируются либо из-за того, что они изменяются во время бэкапирования, либо потому что это открытые сокеты, либо ещё по каким-то причинам. С LiveCD не всегда есть возможность загрузиться.
3. Backup/Restore LVM. Несколько заморочено, но бэкап сделать удалось (делаю снапшот -> делаю его бэкап), а развернуть — нет. Минусы — GRUB не поддерживает LVM, поэтому /boot в любом случае нужно бэкапить-ресторить отдельно, и, очевидно, если в системе нет LVM, то способ нерабочий.
Итого единственный рабочий метод, который мне известен, это dd, но объём файлов при этом колоссальный, особенно если диски больших объёмов и если речь идёт об удалённых машинах, то передать ~500Гб по сети из Владивостока в Москву — задача непростая. Поскольку я работаю с Unix-системами не очень много (думаю, это видно из моего поста), то прошу помощи в решении задачи. Также буду благодарен, если укажете на аналогичные утилиты для Windows-систем.
Читать дальше

Как правильно выключать гостевые ОС KVM?

Добрый день! Имеется сервак(centos 7) в офисе + ups must 3000VA с консольным СОМ портом. Все это дело подключил друг к другу и установил nut. На сервере имеется kvm, на котором крутятся машинки windows и linux. Собственно задача: при выключении света упс дает сигнал что она работает от батарей, потом когда разряд доходит до минимума посылает команду nut-monitor который в свою очередь выполняет скрипт выключения машинок и выключения хост машины. Собственно вся проблема в том что именно windows машины получая сигнал выключения зависают и не хотят выключатся. Что было сделанно:
установил груповые политики в windows, чтобы выключался сервер не входя в систему и не выводиk окошко о том как завершить работу сервера. Установил в реестре значение ShutdownWarningDialogTimeout=00000001
не помогло
установил настройки в файле /etc/sysconfig/libvirt-guests
ON_SHUTDOWN=shutdown PARALLEL_SHUTDOWN=1 SHUTDOWN_TIMEOUT=90
не помогло
конфиг /etc/ups/ups.conf
[Must] driver = blazer_ser port = /dev/ttyS0 desc = «server» offdelay = 300 ondelay = 0
конфиг /etc/ups/upsmon.conf
RUN_AS_USER nut MONITOR Must@localhost 1 monuser password master MINSUPPLIES 1 SHUTDOWNCMD «sudo /etc/ups/shutdown.sh --shutdown» POLLFREQ 5 POLLFREQALERT 5 HOSTSYNC 15 DEADTIME 15 POWERDOWNFLAG /etc/ups/killpower RBWARNTIME 43200 NOCOMMWARNTIME 300 FINALDELAY 0
конфиг /etc/ups/upsd.users
[monuser] password = password actions = SET instcmds = ALL upsmon master
ну и сам скрипт выключения
Читать дальше

Ошибка при обращении sl «SQLSERVER:\». Как исправить?

Доброго времени суток.

При исполнение части скрипта:
#Делаем бэкап всех баз в ранее созданую папку sl «SQLSERVER:\sql\1cserver\sqlexpress\databases» foreach($database in (Get-ChildItem)) { $dbName = $database.Name Backup-SqlDatabase -Database $dbName -BackupFile «c:\db\$current\$dbName.bak» }
выдает ошибку
sl: Не удалось найти диск. Диск с именем «SQLSERVER» не существует. C:\script\Backup_MSSQL_day.ps1:11 знак:1 + sl «SQLSERVER:\sql\1cserver\sqlexpress\databases» + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: ObjectNotFound: (SQLSERVER:String) [Set-Location], DriveNotFoundException + FullyQualifiedErrorId: DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand Backup-SqlDatabase: Не удалось разрешить путь «SQLSERVER:\» в объект типа «Microsoft.SqlServer.Management.Smo.Server». Поместите расположение в правильный контекст или воспользуйтесь параме тром Path для указания расположения. C:\script\Backup_MSSQL_day.ps1:14 знак:2 + Backup-SqlDatabase -Database $dbName -BackupFile «c:\db\$current\$dbName.bak» + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: InvalidArgument: (SQLSERVER:\:String) [Backup-SqlDatabase], SqlPowerShellContextException + FullyQualifiedErrorId: ContextError,Microsoft.SqlServer.Management.PowerShell.BackupSqlDatabaseCommand

При этом, если в Windows PowerShell ISE после вывода ошибки нажать «Выполнить сценарий» ещё раз, то скрипт отрабатывает без проблем.

Вопрос: Почему отрабатывает со второго запуска? и как это исправить?

Почему вылетает squid?

ОС — Ubuntu Server 16.04 на VPS
uname -a
Linux andrewg 2.6.32-042stab108.5 #1 SMP Wed Jun 17 20:20:17 MSK 2015 x86_64 x86_64 x86_64 GNU/Linux

Конфиг-файл (grep -v "^$\|^#" /etc/squid/squid.conf)
auth_param basic realm ***? auth_param basic program /etc/webmin/squid/squid-auth.pl /etc/webmin/squid/users acl Auth proxy_auth REQUIRED http_access allow Auth http_access deny all http_port **** tcp_outgoing_address ***.***.***.*** cache_dir ufs /var/spool/squid3 256 16 256 cache_log /var/log/squid/squid.log coredump_dir /var/spool/squid3 pinger_enable off refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern (Release|Packages(.gz)*)$ 0 20% 2880 refresh_pattern. 0 20% 4320 cache_effective_user proxy dns_v4_first on cache_effective_group proxy via off forwarded_for delete

В качестве программы авторизации используется то, что предоставляет webmin.

squid -v
Squid Cache: Version 3.5.12 Service Name: squid Ubuntu linux configure options: '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--
Читать дальше

Как организовать OpenVPN подключениe через eth0 выход в сеть через eth1?

Дано: Ubuntu 14.04 Instance на Amazon EC2 c 2 network interfaces, каждый из которых привязан к Elastic IP. 2 сетевой интерфейс доступ через eth1 и настроен по этому гайду. OpenVPN настроен автоматически этой штукой. OpenVPN доступен по айпишнику eth0, но не доступен по eth1, хотя он всё остальное по нему доступно(ssh, nginx, etc.).
Пытался пробовать OpenVPN bridge, но не помогло.
Подскажите в какую сторону копать. Спасибо.
Конфиг OpenVPN:
port 1194 proto udp dev tun sndbuf 0 rcvbuf 0 ca ca.crt cert server.crt key server.key dh dh.pem tls-auth ta.key 0 topology subnet server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push «redirect-gateway def1 bypass-dhcp» push «dhcp-option DNS 192.168.0.2» keepalive 10 120 cipher AES-128-CBC comp-lzo user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3 crl-verify crl.pem
route -n:
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0 192.168.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0 192.168.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth1
ifocnfig:
eth0 Link encap:Ethernet HWaddr 06:08:94:fb:5e:99 inet addr:192.168.6.101 Bcast:192.168.15.255 Mask:255.255.240.0 inet6 addr: xxxx::408:94ff:fefb:5e99/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:9001 Metric:1 RX packets:63138 errors:0 dropped:0 overruns:0 frame:0 TX packets:49344 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:35175048 (35.1 MB) TX bytes:17629611 (17.6 MB) eth1 Link encap:Ethernet HWaddr 06:94:df:32:9f:dd inet addr:192.168.14.69 Bcast:0.0.0.0 Mask:255.255.240.0 inet6 addr: xxxx::494:dfff:fe32:9fdd/64 Scope:Link UP BROADCAST
Читать дальше

Exim: Как избавиться от исходящего спама?

Добрый день.

Периодически рассылается спам с сервера через клиентов, которых очень много на сервере (свыше 200 сайтов) по причине взлома клиентских сайтов. Используется панель ISPmanager

Используется дыра в php mail и локальная отправка через сокет. Релей отключен.

В логах
H=localhost (static.204.97.63.178.clients.your-server.de) [127.0.0.1] F= rejected RCPT: relay not permitted
H=farcrysless.ru [91.239.215.127] X=TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256 F= rejected RCPT: relay not permitted

Не смотря на то, что пишет, что релей запрещен, все равно отправляется. Какие правила нужно выполнить, чтобы отключить эти рассылки или как-то их блокировать?

Как отредактировать pxeboot.0 или BDC чтобы было все как надо?

tftp шара есть /srv/tftp/
Есть два пути:
ls /srv/tftp/analiz/Boot
BCD BCD.LOG1 bootmgr.exe Fonts winpe2.wim
BCD.LOG BCD.LOG2 boot.sdi pxeboot.0 winpe.wim

ls /srv/tftp/Boot
BCD BCD.LOG1 bootmgr.exe Fonts winpe2.wim
BCD.LOG BCD.LOG2 boot.sdi pxeboot.0 winpe.wim

Вот конфиг загрузчка линуксового
LABEL W2K8_x64_R2 & W2K12_x64_R2 (menu inside)
kernel Boot/pxeboot.0

LABEL analiz (menu inside)
kernel analiz/Boot/pxeboot.0

Загрузчик analiz/Boot/pxeboot.0 грузить analiz/Boot/winpe.wim не хочет.
Мной было замечено что если перенести analiz/Boot/BCD в Boot/BCD то появилась ошибка
0xc000000f.
Тоесть analiz/Boot/pxeboot.0 берет конфиг из Boot/BCD.

Вообщем подскажите как сделать в Boot/BCD выбор образа wim.
НУ там хорошую статью или еще чего чтобы понятно стало как настраивать вот это все.
Делал по статье

Как очистить папку C:\Users от лишних доменных профилей(папок)?

Итак имею:
C:\Usrers\admin
C:\Usrers\user1
C:\Usrers\user2
… и тд.
необходимо удалить все папки профилей кроме admin.
Сделать это надо использую gpo.
Пытался через PS удалить пишет отказано в доступе. Через explorer написало мол ntuser.dat используется system и поэтому фиг тебе а не удаление.
$users = Get-Content c:\users.txt $folder = Get-ChildItem c:\Users | Where-Object {$_.mode -like «D*»} $compare = Compare-Object $users $folder $compare | foreach-object {Remove-Item -path c:\Users\$($_.inputobject) -recurse -force}

Вообщем как удалить все папки пользователя кроме одной (а лучше нескольких) нужных?
PS написать что все компы в домене

Как правильно настроить отправку почты?

Что имею.
Есть выделенный сервер на centos 6, к которому привязан домен(dev.main.by) для разработки второго уровня. Так же в нем предустановлен и настроен postfix.
Конфиг postfix дефолтный, за исключением трех параметров:
myhostname = domaintwo.com relayhost = mydestination =

Домен domaintwo.com не привязан к серверу.
При отправке сообщений через php выдает такой лог:
Jul 27 13:01:11 bitrix postfix/pickup[4721]: 9CD3E82D63: uid=600 from= Jul 27 13:01:11 bitrix postfix/cleanup[5106]: 9CD3E82D63: message-id= Jul 27 13:01:11 bitrix postfix/qmgr[3751]: 9CD3E82D63: from=, size=908, nrcpt=1 (queue active) Jul 27 13:01:11 bitrix postfix/smtp[5108]: 9CD3E82D63: to=, relay=mail.domaintwo.com[93.252.2.4]:25, delay=0.11, delays=0.04/0.01/0.01/0.05, dsn=4.7.1, status=deferred (host mail.domaintwo.com[93.252.2.4] said: 450 4.7.1 Client host rejected: cannot find your hostname, [192.160.2.2] (in reply to RCPT TO command))
В чем может быть проблема?

Как организовать клонирование контейнеров на zfs?

Добрый день.

Задача: есть 20 разработчиков, есть 2 крупных проекта с большими базами, но нет единого рабочего окружения. Необходимо сделать так, чтобы у всех разработчиков была возможность создавать/пересоздавать рабочие среды в мгновение ока + чтобы все среды были одинаково настроены и раскатаны все проекты (их 2) с их полными базами (допустим их тоже 2). Базы достаточно большие (допустим 100 гб каждая) и просто копировать всё окружение не очень круто (т.к это будет занимать много места + время на копирование). Вроде как для этих целей хорошо может подойти zfs. Т.е создаем мастер-окружение при помощи, скажем, docker-compose — с этого окружения мы будем снимать снэпшоты, чтобы потом клонировать это всё дело, чтобы попусту не копировать файлы, которые не будут изменяться. Следовательно, чтобы развернуть новое окружение вместе с базой и проектами, не нужно долго и муторно раскатывать дамп, достаточно просто склонировать снэпшот и у вас рабочая среда.

Вопрос: как это всё организовать? я поставил zfs, создал пул, создал файловую систему, смонтированную на /var/lib/docker и вроде бы всё работает, но ведь это сейчас решает проблему копирования / клонирования / восстановления всех контейнеров, что у нас есть, а не каких-то конкретных. Направьте, пожалуйста на путь истины. Можно ли смонтировать zfs на уровень контейнеров, затем делать снэпшоты, клонировать, а потом как-то магически менять пути и чтобы контейнер вроде как другой, но данные берутся с клона. Или же выделять storage-контейнеры с voluum на zfs, куда складывать все данные (проекты, файлы бд), а потом просто использовать эти контейнеры в качестве voluum'ов для других контейнеров, чтобы они использовали просто эти данные?