/etc/systemd/system/ras.service 1C for Linux
Платформа 8.3 → Не могу запустить сервер RAS
sudo -u usr1cv8 /opt/1C/v8.3/x86_64/ras --daemon cluster
Внимание скрипт, на один кластер 1С !!!
$ nano terminate.sh
Вставить текст ниже:
#!/bin/bash
if ! pgrep 'ras'; then sudo su usr1cv8 -c "/opt/1C/v8.3/x86_64/ras --daemon cluster"; fi
sleep 5
_cluster=$(/opt/1C/v8.3/x86_64/rac cluster list | grep 'cluster'| awk -F' ' '{print $3}')
_base=$(/opt/1C/v8.3/x86_64/rac infobase --cluster=$_cluster summary list | grep 'infobase '| awk '{print$3}')
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3}')
echo 'кластер: ' $_cluster
echo 'базы: ' $_base
echo 'сессии: ' $_session
for session in $_session
do
/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster terminate --session=$session
done
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3}')
echo 'сессии: ' $_session
Сохранить.
$ sh terminate.sh
$ sudo nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sh /home/user/terminate.sh
exit 0
Для windows :
Сервер администрирования кластера серверов 1C:Предприятия и deployka
Вариант с установленной службой Сервера администрирования кластера
Файл register-ras.bat:
Сохранить.
Внимание скрипт, на все кластеры 1С !!!
Файл terminate.bat:
Платформа 8.3 → Не могу запустить сервер RAS
sudo -u usr1cv8 /opt/1C/v8.3/x86_64/ras --daemon cluster
Внимание скрипт, на один кластер 1С !!!
$ nano terminate.sh
Вставить текст ниже:
#!/bin/bash
if ! pgrep 'ras'; then sudo su usr1cv8 -c "/opt/1C/v8.3/x86_64/ras --daemon cluster"; fi
sleep 5
_cluster=$(/opt/1C/v8.3/x86_64/rac cluster list | grep 'cluster'| awk -F' ' '{print $3}')
_base=$(/opt/1C/v8.3/x86_64/rac infobase --cluster=$_cluster summary list | grep 'infobase '| awk '{print$3}')
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3}')
echo 'кластер: ' $_cluster
echo 'базы: ' $_base
echo 'сессии: ' $_session
for session in $_session
do
/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster terminate --session=$session
done
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3}')
echo 'сессии: ' $_session
Сохранить.
$ sh terminate.sh
$ sudo nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sh /home/user/terminate.sh
exit 0
Для windows :
Сервер администрирования кластера серверов 1C:Предприятия и deployka
Вариант с установленной службой Сервера администрирования кластера
Файл register-ras.bat:
@echo off
rem %1 - полный номер версии 1С:Предприятия
set ver=8.3.13.1690
set SrvUserName=.\USR1CV8
set SrvUserPwd="pass"
set CtrlPort=1540
set AgentName=localhost
set RASPort=1545
set SrvcName="1C:Enterprise 8.3 Remote Server"
set BinPath="\"C:\Program Files\1cv8\%ver%\bin\ras.exe\" cluster --service --port=%RASPort% %AgentName%:%CtrlPort%"
set Desctiption="1C:Enterprise 8.3 Remote Server"
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%
sc start %SrvcName%
Сохранить.
Внимание скрипт, на все кластеры 1С !!!
Файл terminate.bat:
@echo off
SET ver=8.3.13.1690
"c:\Program Files\1cv8\%ver%\bin\rac.exe" cluster list > %temp%\tmp.txt
REM type %temp%\tmp.txt
findstr "cluster" %temp%\tmp.txt > %temp%\tmp1.txt
REM type %temp%\tmp1.txt
FOR /F "tokens=2,* delims=: " %%i IN (%temp%\tmp1.txt) DO (
REM echo %%i
"c:\Program Files\1cv8\%ver%\bin\rac" session --cluster=%%i list > %temp%\tmp2.txt
REM type %temp%\tmp2.txt
findstr /C:"session " %temp%\tmp2.txt > %temp%\tmp3.txt
FOR /F "tokens=2,* delims=: " %%j IN (%temp%\tmp3.txt) DO (
REM echo %%j
rac session --cluster=%%i terminate --session=%%j)
)
REM PAUSE
Сохранить.
Добрый день, заинтересовал скрипт завершения работы пользователей на Убунту-сервере, то что путь rac/ras поменялся это я понял. А где мне вводить значение для кластера и базы, и какое значение писать в сессиях? Помогите разобраться, плиз :) Нужно выгонять пользователей, чтобы делать бэкап) Спасибо!)
ОтветитьУдалить#!/bin/bash
ОтветитьУдалитьif ! pgrep 'ras'; then sudo su usr1cv8 -c "/opt/1C/v8.3/x86_64/ras --daemon cluster"; fi
sleep 5
_cluster=$(/opt/1C/v8.3/x86_64/rac cluster list | grep 'cluster'| awk -F' ' 'NR==1{print$3}')
_base=$(/opt/1C/v8.3/x86_64/rac infobase --cluster=$_cluster summary list | grep 'infobase '| awk '{print$3}')
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3}')
echo 'кластер: ' $_cluster
echo 'базы: ' $_base
echo 'сессии: ' $_session
for session in $_session
do
/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster terminate --session=$session
done
_session=$(/opt/1C/v8.3/x86_64/rac session --cluster=$_cluster list | grep 'session '| awk '{print$3, $4}')
echo 'сессии: ' $_session
Немного поправил, теперь тока под 1-й кластер