Ваш лучший выбор является соединением двух подходов. Bash будет всегда загружаться ~/.bashrc
. Необходимо поместить стандартный файл в /etc/skel/.bashrc
и ~/.bashrc
это в свою очередь получает что-то как /etc/bash.bashrc
. (Версия в skel
привыкнет для новых учетных записей пользователей.) Помещенный Ваши значения по умолчанию в последний файл.
Пользователь в качестве примера .bashrc
:
# this line activates the system-wide default settings
. /etc/bash.bashrc
# users can add any custom .bashrc settings here
Пример /etc/bash.bashrc
на основе моей подсказки:
G='\e[1;32m'
R='\e[1;31m'
Y='\e[1;33m'
N='\e[0m'
PS1='\A \['$G'\]\u@\h \['$Y'\]\w\['$N'\] \$ '
С этой установкой можно позже изменить подсказку в масштабе всей системы и добавить другие настройки, не имея необходимость редактировать общий .bashrc
файл. Надежда, которая помогает.
Вы можете обойти проблему следующим образом:
Таким образом, разработчикам просто нужно разместить файл резервной копии в общей папке, чтобы восстановить его, даже без прав dbcreator.
Если вам интересно, я могу предоставить пример сценария PowerShell для восстановления базы данных (и, например, изменения пути при необходимости).
Если ваши источники достаточно стандартны, вы можете создать хранимую процедуру, которая может запускаться только этой ролью, которая принимает файл восстановления, новое имя базы данных и идентификатор пользователя в качестве аргументов. Пусть один SP восстановит базу данных, а затем изменит права доступа.
С такой настройкой вы, вероятно, сможете перестать предоставлять пользователям роль dbcreator и просто запустить SP как системный администратор. Просто предоставьте привилегированным пользователям права на SP (или роль / схему, которая включает этот SP) и попросите его проверить работоспособность и заключить аргументы в скобки.
Поскольку вы уже используете PowerShell, у вас есть логика для восстановления. Просто переместите большую часть его в SQL и пусть сценарий PowerShell соберет аргументы, а затем вызовет SP.