Февраль 5

MSSQL microsoft from debian

Итак пришло время выносить их систему в наш мир — 🙁

sqlcmd -S localhost -U [LOGIN] -P [PASWORD] -Q «BACKUP DATABASE [REALNAME_BD] TO DISK = N’/var/opt/mssql/data/[REALNAME_BD]_$(date +»»).bak’ WITH NOFORMAT, NOINIT, NAME = ‘[REALNAME_BD]’, SKIP, NOREWIND, NOUNLOAD, STATS = 10″

копии создаются и даже загружаются на винде

с Debian все сложнее иногда он хочет удалит старые файлы потому что винда есть винда и она очень сильно матерится на реальное имя файлов и базы а не на то ка мы ее назвали или переименовали

кроме всего прочего есть еще вот такой интересный случай

копию из венды нельзя залить восстановить в линуксе да вайлы и каталоги 🙂

нужно прописать полный путь

sqlcmd -S localhost -U [LOGIN] -P [PASWORD] -Q «RESTORE DATABASE [REALNAME_BD] FROM DISK = ‘/var/opt/mssql/data/[REALNAME_BD].bak’ WITH MOVE ‘[REALNAME_BD]’ TO ‘/var/opt/mssql/data/[REALNAME_BD].mdf’, MOVE ‘[REALNAME_BD]_log’ TO ‘/var/opt/mssql/data/[REALNAME_BD]_Log.ldf’

Июнь 12

восстановление доступа к панели ispmanager если сменился ip и остался только доступ по ssh

тут

Поставил вход в ISPmanager только с одного IP, теперь не могу зайти
Такое обычно происходит, когда интернет-провайдер предоставляет динамический IP-адрес. После разрыва интернет-сессии и создания новой, в большинстве случаев IP-адрес меняется, и войти в панель управления уже не удаётся.

Решение проблемы
1подключитесь к серверу по SSH или по протоколу SFTP под пользователем «root». Ниже для примера приведены скриншоты, когда подключение происходит под протоколом SFTP при помощи клиента «WinSCP»;
2
откройте файл на редактирования:

/usr/local/ispmgr/var/userconf/ispmgr.root если у вас ISPmanager 4 версии;
/usr/local/mgr5/var/userconf/ispmgr.root если у вас ISPmanager 5 версии.

«Access 127.0.0.1» (IP-адрес может отличаться):

меняем доступ на свой ip посмотреть можно здесь

Июнь 12

antivirus debian

тут описано как проверить дерикторию на вирусы (поставлю туда вирус проверю) а пока краткая инструкция

# apt-get install clamav clamav-daemon

Просканировать файл:

$ clamscan file
Просканировать директорию (В данном случае домашняя директория):

$ clamscan --recursive=yes --infected /home
Примечание: Если вы хотите, чтобы ClamAV удалил зараженный файл, то добавьте опцию —remove.

По умолчанию ClamAV не сканирует файлы больше 20Mb. Чтобы изменить эту настройку, нужно добавить следующие опции —max-filesize=2000M —max-scansize=2000M. Где размер 2000M может быть изменен на необходимый пользователю. Пример приведен ниже.

$ clamscan --max-filesize=2000M --max-scansize=2000M --recursive=yes --infected /home
Примечание: Эта команда выполнит полное сканирование в вашей домашней директории, что может занять много времени (возможно более 2-х часов) в зависимости от кол-ва файлов.

Февраль 13

(ReSpeaker 6-Mic Circular Array kit for Raspberry Pi + pulseaudio + mdmTerminal2 + snowboy) (Majordomo + mdmPiTerminal )

Итак можно сказать что это свершилось, значить это возможно и это того стоит
Raspberry Pi 3 Model B+ не имеет микрофона но имеет хороший корпус с вентилятором 🙂 который пришлось выкинуть потому что ReSpeaker 6-Mic занял его место, предистория я купил usb микрофон, но на маке он шипел, что в малинку я его даже не ставил. попробовал usb звуковую карту, звук был велеколепен, но микрофона на руках не оказалось.
зная чем череват выбор покупка и как работает нормальный микрофон — цена уходила в облака, тогда я услышал о конструкторах гугла которые делают советника на основе малинки и некой шапки, с массивами микрофонов. цена его была сопоставима с малинкой + микрофоном. и я начал искать нашел несколько вариантов шапок для малинок, но так как использовать образ я не хотел и уверености что это обычная звуковая карта у меня небыло, я полез искать производителя.
как оказалось он уже выпустил ReSpeaker 6-Mic — где то в описаниях писалось, что они опять понизили количество микрофонов потому что благадоря новым технологиям отпала в них нужда, но так как моя плата позиционировала захват от 5 метров в отличии от 3х при 4 микрофонах, и я решил брать «ReSpeaker 6-Mic»
Хождения по муках
запустить примеры получилось где-то на третий день,
но в конечном этоге загорелись диодики указали на микрофон который услышал волшебное слово и даже алекса рассказала что я не купил ничего потому слушать ничего не буду.
последние шаги по инструкции говорили, что нужно использовать pulseaudio (я нарисовал себе картинку, что сервер возмет на себя выбор микрофона и отсеивиание звуков но по логике должно быть как-то так) кроме того, что алса конфликтовала между приложениями Majordomo и MDterminal наглухо подвешивая малинку которую пришлось перезагружать кощунственным способом.

с пульсе все намного сложнее …..
продолжение следует

Ноябрь 27

прожиточный минимум с кириллицей в терминале линукс

тут можна почитать более подробно тут ,
а для нас хватит и

Вывести список всех доступных в вашей системе локалей можно с помощью команды locale.

locale -a

сгенерировать любимую
locale-gen ru_RU.UTF-8

sudo nano /etc/default/locale
вставить

LANG="ru_RU.UTF-8"
LC_ALL="ru_RU.UTF-8"

удалить не нужные (оставляем только)

sudo locale-gen --purge ru_RU.UTF-8 en_US.UTF-8

и отправляемся за нормальной работай

sudo reboot

Август 13

Настройка сети wi-fi network через ssh console ubuntu 18 и не только

Помнится раньше прописывал как-то ребенку в настройках сети ИД сети и пароль,
но что-то изменилось (догадываюсь что) но это не важно
итак как настроить сеть удаленно за много километров от клиента (да ясно что связь есть) но после каждой перезагрузки машина клиента пытается подключится к принтеру или wi-fi резетке и уходит в off-line

sudo nano /etc/network/interfaces
дописываем

iface wlan0 inet dhcp
wpa-driver wext
wpa-ssid <имя_точки_доступа>
wpa-ap-scan 1
wpa-proto RSN
wpa-pairwise CCMP
wpa-group CCMP
wpa-key-mgmt WPA-PSK
wpa-psk <hex_ключ> [ВАЖНО - см. Генерация ключей]
auto wlan0

 

iface wlan0 inet dhcp конфигурация для DHCP (для статического IP см. пример ниже)
«iface wlan0» — Имя нашего интерфейса (wlan0, eth1, rausb0, ra0, итд.)
wpa-driver Это wpa-driver для нашей карты
(‘wext’ — общий драйвер для linux, работающий с «ndiswrapper»). Рекомендуется оставить как есть.
Другие варианты:
hostap = Host AP driver (Intersil Prism2/2.5/3)
atmel = ATMEL AT76C5XXx (USB, PCMCIA)
wext = Linux wireless extensions (generic)
madwifi = Atheros
wired = wpa_supplicant wired Ethernet driver
wpa-ssid Имя нашей точки доступа (ESSID). Без кавычек.
wpa-ap-scan Параметр вещания точкой доступа ее имени.
«1» = ESSID вещается всем.
«2» = ESSID скрыт.
wpa-proto Протокол
«RSN» = WPA(2)
«WPA» = WPA(1)
wpa-pairwise & wpa-group «CCMP» = AES-шифрователь (как часть стандарта WPA(2))
«TKIP» = TKIP-шифрователь (как часть стандарта WPA(1))
wpa-key-mgmt «WPA-PSK» = Аутентификация через ключевую фразу (см. ‘Cоздание ключей’)
«WPA-EAP» = Аутентификация при помощи сервера аутентификаций.
auto wlan0 Автоматическое включение wlan0 при загрузке/перезагрузке сети.

 

 

Генерация ключей

Теперь нам нужно сконвертировать нашу ключевую фразу (WPA ASCII) в hex-ключ:
$ wpa_passphrase <имя_точки_доступа> <ascii_ключ>
Результат будет примерно таким:

network={
ssid="test"
#psk="12345678"
psk=fe727aa8b64ac9b3f54c72432da14faed933ea511ecab1 5bbc6c52e7522f709a
}

hex-ключ это все символы после «psk=».

Нужно его скопировать в буфер обмена и вставить в файл /etc/network/interfaces в поле wpa-psk

Август 12

VNC UBUNTU 18.04 Grey

Серый экран — система не поддерживается и много другое, глупости, — установи vino удали, установи 1000 новых vnc server и у всех серый экран или какой-то минимум с терминалом и вечными криками что программы нельзя запускать в 16 битах или 256 цветах
вот рабочая команда запуска сервера с входом в систему unity

/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/{USER_NAME}/.vnc/passwd -rfbport 5900 -shared

можно эту же строку записать
сюда

/lib/systemd/system/x11vnc.service


[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/{USER_NAME}/.vnc/passwd -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

и
sudo service x11vnc restart

Июль 31

ssh отправляем в сеть звук

#!/bin/bash

ffmpeg -f alsa -i hw:Loopback,1,0 -c:a aac -b:a 64k -f ssegment -segment_list /var/www/hls/live1.m3u8 -segment_list_flags +live -segment_time 1 -segment_list_size 1 -segment_wrap 10 -segment_list_entry_prefix http://server.com/hls/ /var/www/hls/64%03d.aac

к сожалению пока сработало на выбор или плохой плейлист но реально хорогие файлы в нем

до этого был хороший лист но записанная тишина

Май 30

итак прожиточный минимум по SVN

так часто случается что нам в руки попадает проект а точнее два или уже три которые по своему хороши
а у нас макдук с мини диском 🙂
нам предстоит сравнить 3 сайта перенести все правки с боевого на тестовый, а потом обновить то что получится и не затереть все, что мы на переносили.
и так копия

1 тест = на нее легло обновление нормально
2 рабочая за год много изменений
3 тест до обнавлений

создаем на сервере svn
sudo mkdir /var/svn/
создаем наш проект
sudo svnadmin create /var/svn/name_project
загружаем в него копию 3
svn import /var/www/otkuda/ file:///var/svn/name_project -m «Comment: »

в файле
/var/svn/name_project/conf/svnserve.conf
раскоментируем строки
auth-access = write
и
password-db = passwd
!!! удаляем как # так и пробел после него

в файле
/var/svn/name_project/conf/passwd
в конце добавляем строку логин=пароль
login=password

запускаем сервер

svnserve -d -r /var/svn/name_project
в случае добавления или если нужно выключить сервер (а так стоит делать для безопастности и для того чтоб не грузить сервер)

killall -9 svnserve
svnserve -d -r /var/svn/name_project

создаем новую рабочую копию созданного проекта прямо на сервере

svn checkout svn://host.example.com/ /var/www/kuda/
или локально
можно без запуска сервера svn
svn checkout file:///var/svn/name_project /var/www/kuda/

после чего в рабочую копию заливаем версию №2
выполняем команду в рабочем каталоге
svn status
и видим разницу
у нас она очень велика
записываем разницу в файл
svn status > test2original.txt
добавляем ново созданые файлы
svn add --force ./*

записываем ревизию
svn commit -m "site original"
обновляем рабочую версию до последней ревизии
svn up

и заливаем по верх новой рабочей версии версию рабочую после обновления
это уже можно делать на компьютере чтоб посмотреть разницу в файлах