Pobieramy ze strony https://github.com/pypa/get-pip Instalujemy pip poleceniem python get-pip.py skrypt instalujący potrzebne pakiety pythona #!/bin/sh # for i in $(cat packages.txt); do pip install $i; done zawartość pliku packages.txt cffi configobj cryptography enum34 idna ipaddress letsencrypt mock ndg_httpsclient psutil pyasn1 pycparser pyOpenSSL pyparsing pyrfc3339 python2-pythondialog python-augeas python-configargparse python-parsedatetime python-requests pytz six werkzeug zope.component zope.event zope.interface […]
Pobieramy ze strony https://github.com/pypa/get-pip
Instalujemy pip poleceniem python get-pip.py
skrypt instalujący potrzebne pakiety pythona
#!/bin/sh
#
for i in $(cat packages.txt); do pip install $i; done
zawartość pliku packages.txt
cffi
configobj
cryptography
enum34
idna
ipaddress
letsencrypt
mock
ndg_httpsclient
psutil
pyasn1
pycparser
pyOpenSSL
pyparsing
pyrfc3339
python2-pythondialog
python-augeas
python-configargparse
python-parsedatetime
python-requests
pytz
six
werkzeug
zope.component
zope.event
zope.interface
virtualenv
Instalacja certbot ./certbot-auto –no-bootstrap
utworzenie tymczasowej subdomeny dla apache poczta.domena.com
/opt/eff.org/certbot/venv/bin/certbot certonly –webroot -w /glowny/katalog/subdomeny/poczta.domena.com -d poczta.domena.com
Podczas instalacji kluczy wpisać swój adres e-mail, potrzebny do odzyskania klucza w razie utraty
Zaakceptować warunki
certyfikat zainstalowany w /etc/letsencrypt/live/poczta.domena.com/
fullchain.pem – certyfikat
privkey.pem – klucz
Dla EXIM należy nadac uprawnienia dla usera i grupy exim dla kluczy oraz nadać uprawnienia do odczytu dla katalogów archive i live
w /etc/letsencrypt
Utworzyć symlinki dla kluczy do katalogu /etc/exim/certs/certyfikat.poczta.domena.com.pem , klucz.poczta.domena.com.pem
Konfiguracja EXIM dla wielu domen
tls_certificate = ${if exists{/etc/exim/cert/letsencrypt/certyfikat.${lc:${tls_sni}}.pem}{/etc/exim/cert/letsencrypt/certyfikat.${lc:${tls_sni}}.pem}{/etc/exim/cert/exim.crt}}
tls_privatekey = ${if exists{/etc/exim/cert/letsencrypt/klucz.${lc:${tls_sni}}.pem}{/etc/exim/cert/letsencrypt/klucz.${lc:${tls_sni}}.pem}{/etc/exim/cert/exim.key}}
Dostępna jest wersja pełna MSSQL 2017 dla Platformy Linux ! https://packages.microsoft.com/ubuntu/18.04/ najnowsze wydania Niestety wszystkie wydania jak do tej pory zostały oparte o dystrybucje RedHat, Ubuntu i SUSE z obsługą systemd W załączeniu paczka txz z MSSQL dla Slackware Do poprawnego działania potrzebne są biblioteki libc++ oraz numactl Gotowe paczki przy linkach do slackbuildów https://slackbuilds.org/repository/14.2/system/numactl/?search=libnuma […]
Dostępna jest wersja pełna MSSQL 2017 dla Platformy Linux !
https://packages.microsoft.com/ubuntu/18.04/ najnowsze wydania
Niestety wszystkie wydania jak do tej pory zostały oparte o dystrybucje RedHat, Ubuntu i SUSE z obsługą systemd
W załączeniu paczka txz z MSSQL dla Slackware
Do poprawnego działania potrzebne są biblioteki libc++ oraz numactl
Gotowe paczki przy linkach do slackbuildów
https://slackbuilds.org/repository/14.2/system/numactl/?search=libnuma –>numactl-2.0.10-x86_64-1_SBo
Do poprawnego zbudowania paczki z libc++ wymagane są biblioteki – w odpowiedniej kolejności:
https://slackbuilds.org/repository/14.2/libraries/libunwind/ –>libunwind-1.1-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/development/docutils/–>docutils-0.12-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/pytz/–>pytz-2016.10-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/babel/–>babel-2.3.4-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/six/–>six-1.10.0-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/MarkupSafe/–>MarkupSafe-0.23-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/libraries/Jinja2/–>Jinja2-2.7.3-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/Pygments/–>Pygments-2.1.3-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/python-requests/–>python-requests-2.13.0-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/alabaster/–>alabaster-0.7.9-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/imagesize/–>imagesize-0.7.1-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/python/snowballstemmer/–>snowballstemmer-1.2.1-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/development/Sphinx/–>Sphinx-1.5.5-x86_64-1_SBo
https://slackbuilds.org/repository/14.2/network/krb5/–>krb5-1.15.2-x86_64-1_SBo.tgz
Na koniec pakiet libc++ https://slackbuilds.org/repository/14.2/libraries/libc++/–>libc++-3.8.0-x86_64-1_SBo
MSSQL 2017 Express Build 4.0.3038.14-2 –>mssql-server_14.0.3038.14-2_amd64.txz
MSSQL 2017 tools–>mssql-tools_14.0.6.0-1_amd64
MSODBCSQL–>msodbcsql_13.1.9.2-1_amd64
Dodatkowe biblioteki dla wersji 14.0.3022-2 libsss_nss_idmap–>libsss_nss_idmap rozpakować do /usr/local/lib64
Pierwsza konfiguracja serwera poprzez /opt/mssql/bin/mssql-conf setup
Lista dostępnych opcji poprzez uruchomienie samego mssql-conf
nazwa serwera mssql vNEXT = nazwa hosta
przykładowy skrypt uruchomieniowy:
#!/bin/bash
#
# /etc/rc.d/rc.mssql
#
# Start/stop MSSQL
# Last modified: 03.01.2018
case „$1” in
'start’ )
echo „Start MSSQL”
nohup /opt/mssql/bin/sqlservr > /dev/null 2>&1 & echo $! > /var/run/sqlservr.pid
echo „MSSQL started.”
;;
'stop’)
echo „Stop MSSQL.”
pid=`cat /var/run/sqlservr.pid`
kill -s SIGINT $pid
rm /var/run/sqlservr.pid
echo „MSSQL Stopped.”
;;
*)
echo „usage $0 start|stop”
;;
esac
Tworzone bazy danych maja compatibility level 140 = mssql -vNext
Testowo baza płatnika o rozmiarze 4GB działa bez zarzutu zarówno w pierwotnym compatibility level 110 jak i w podniesionym do 140
Przydatne zapytania SQL
Podniesienie compatibility level:
ALTER DATABASE nazwa_bazy
SET COMPATIBILITY_LEVEL = 140;
GO
Sprawdzenie poziomu compatibility level:
USE nazwa_bazy;
GO
SELECT compatibility_level
FROM sys.databases WHERE name = 'nazwa_bazy’;
GO
AdHoc włączenie – dla Płatnika
sp_configure 'show advanced options’, 1;
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries’, 1;
RECONFIGURE;
GO
Dodanie nazwy serwera do sys.servers
EXEC sp_addlinkedserver @server=’Twoja_nazwa’
Sprawdzenie nazw linked server
select name from sys.servers
Po instalacji zmiana collation z domyślnego latin1 zanim uruchomimy serwer mssql
mssql-conf set-collation
wpisać: Polish_CI_AS
Jest to bardzo ważne jeżeli przenosimy bazy np pakietu firmy INSERT (Subiekt, Rewizor, Rachmistrz itp) jeżeli nie zmienimy kodowania serwera na kodowanie równe bazie danych przy aktualizacji podmiotów otrzymamy błąd 0x80040E14
Przykładowy skrypt backupu pojedynczej bazy danych
#!/bin/bash
#
KIEDY=`date +%F`
KATALOG=/katalog/przechowywania/kopii
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P haslo_bazy -Q „BACKUP DATABASE [nazwa_bazy] TO DISK = N’$KATALOG/nazwa_bazy-$KIEDY.bak’ WITH NOFORMAT, NOINIT, NAME = 'nazwa_bazy-full’, SKIP, NOREWIND, STATS = 10”
gzip -9 $KATALOG/nazwa_bazy-$KIEDY.bak
Aktualności instrukcje oraz wersje MSSQL vNEXT na platforme LINUX
mssql-server_14.0.3022.28-2_amd64