Симптоми
В SQL Server 2019 на Linux скриптовете на външните сателитни процеси като R, Python не могат да получат достъп до директории извън работната си директория.
Решение
Този проблем е решен в следната кумулативна актуализация за SQL Server:
За кумулативните актуализации за SQL Server:
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
Още информация
Можете да персонализирате директориите, до които външните процеси имат достъп, с помощта на инструмента mssql-conf за задаване или дезактивиране на настройката "datadirectories" в секцията за разширение на конфигурационния файл /var/opt/mssql/mssql.conf .
Стойността на настройката е разделен с двоеточие списък с директории, който ще бъде изложен на сателитни скриптове. Демон на Microsoft SQL Server Launchpad трябва да бъде рестартиран, когато зададете или деинсталирате тази настройка.
Сателитните процеси се изпълняват като mssql_satellite специален потребител, така че те ще наследят същите разрешения за четене/запис/изпълнение в директориите, указани в тази настройка, както са дадени на този специален потребител.
Пример:
#/bin/bash: /opt/mssql/bin/mssql-conf set extensibility.datadirectories "/opt/mssql/bin:/home/user/rscripts"
SQL Server Extensibility Launchpad Daemon трябва да бъде рестартиран, за да се приложи тази настройка. Изпълнете "systemctl рестартиране mssql-launchpadd.service".
Съдържание на /var/opt/mssql/mssql.conf
[разширяемост]
DataDirectories = /opt/mssql/bin:/var
#/bin/bash: /opt/mssql/bin/mssql-conf unset extensibility.datadirectories
SQL Server Extensibility Launchpad Daemon трябва да бъде рестартиран, за да се приложи тази настройка. Моля, изпълнете
'systemctl рестартиране mssql-launchpadd.service'.
Съдържание на /var/opt/mssql/mssql.conf
[разширяемост]
Състояние
По подразбиране тя е проектирана така, че външните процеси да не могат да осъществяват произволен достъп до системни указатели.
Справки
Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.