84 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| set -e
 | |
| 
 | |
| #DEBHELPER#
 | |
| 
 | |
| case "$1" in
 | |
|     configure)
 | |
| 	# need to have user backup in the tape group
 | |
| 	usermod -a -G tape backup
 | |
| 
 | |
| 	# modeled after dh_systemd_start output
 | |
| 	systemctl --system daemon-reload >/dev/null || true
 | |
| 	if [ -n "$2" ]; then
 | |
| 		if dpkg --compare-versions "$2" 'lt' '1.0.7-1'; then
 | |
| 			# there was an issue with reloading and systemd being confused in older daemon versions
 | |
| 			# so restart instead of reload if upgrading from there, see commit 0ec79339f7aebf9
 | |
| 			# FIXME: remove with PBS 2.1
 | |
| 			echo "Upgrading from older proxmox-backup-server: restart (not reload) daemons"
 | |
| 			_dh_action=try-restart
 | |
| 		else
 | |
| 			_dh_action=try-reload-or-restart
 | |
| 		fi
 | |
| 	else
 | |
| 		_dh_action=start
 | |
| 	fi
 | |
| 	deb-systemd-invoke $_dh_action proxmox-backup.service proxmox-backup-proxy.service >/dev/null || true
 | |
| 
 | |
| 	# FIXME: Remove with 1.1
 | |
| 	if test -n "$2"; then
 | |
| 		if dpkg --compare-versions "$2" 'lt' '0.9.4-1'; then
 | |
| 			if grep -s -q  -P -e '^\s+verify-schedule ' /etc/proxmox-backup/datastore.cfg; then
 | |
| 				echo "NOTE: drop all verify schedules from datastore config."
 | |
| 				echo "You can now add more flexible verify jobs"
 | |
| 				flock -w 30 /etc/proxmox-backup/.datastore.lck \
 | |
| 				    sed -i '/^\s\+verify-schedule /d' /etc/proxmox-backup/datastore.cfg || true
 | |
| 			fi
 | |
| 		fi
 | |
| 		if dpkg --compare-versions "$2" 'le' '0.9.5-1'; then
 | |
| 			chown --quiet backup:backup /var/log/proxmox-backup/api/auth.log || true
 | |
| 		fi
 | |
| 		if dpkg --compare-versions "$2" 'le' '0.9.7-1'; then
 | |
| 			if [ -e /etc/proxmox-backup/remote.cfg ]; then
 | |
| 				echo "NOTE: Switching over remote.cfg to new field names.."
 | |
| 				flock -w 30 /etc/proxmox-backup/.remote.lck \
 | |
| 				    sed -i \
 | |
| 				        -e 's/^\s\+userid /\tauth-id /g' \
 | |
| 				        /etc/proxmox-backup/remote.cfg || true
 | |
| 			fi
 | |
| 		fi
 | |
| 		if dpkg --compare-versions "$2" 'le' '1.0.14-1'; then
 | |
| 			# FIXME: Remove with 2.0
 | |
| 			if grep -s -q  -P -e '^linux:' /etc/proxmox-backup/tape.cfg; then
 | |
| 				echo "========="
 | |
| 				echo "= NOTE: You have now unsupported 'linux' tape drives configured."
 | |
| 				echo "= * Execute 'udevadm control --reload-rules && udevadm trigger' to update /dev"
 | |
| 				echo "= * Edit '/etc/proxmox-backup/tape.cfg', remove 'linux' entries and re-add over CLI/GUI"
 | |
| 				echo "========="
 | |
| 			fi
 | |
| 		fi
 | |
| 		# FIXME: remove with 2.0
 | |
| 		if [ -d "/var/lib/proxmox-backup/tape" ] &&
 | |
| 		   [ "$(stat --printf '%a' '/var/lib/proxmox-backup/tape')" != "750" ]; then
 | |
| 			chmod 0750 /var/lib/proxmox-backup/tape || true
 | |
| 		fi
 | |
| 		# FIXME: Remove in future version once we're sure no broken entries remain in anyone's files
 | |
| 		if grep -q -e ':termproxy::[^@]\+: ' /var/log/proxmox-backup/tasks/active; then
 | |
| 			echo "Fixing up termproxy user id in task log..."
 | |
| 			flock -w 30 /var/log/proxmox-backup/tasks/active.lock sed -i 's/:termproxy::\([^@]\+\): /:termproxy::\1@pam: /' /var/log/proxmox-backup/tasks/active || true
 | |
| 		fi
 | |
| 	fi
 | |
|     ;;
 | |
| 
 | |
|     abort-upgrade|abort-remove|abort-deconfigure)
 | |
|     ;;
 | |
| 
 | |
|     *)
 | |
|         echo "postinst called with unknown argument \`$1'" >&2
 | |
|         exit 1
 | |
|     ;;
 | |
| esac
 | |
| 
 | |
| exit 0
 |