Server IP : 127.0.0.2 / Your IP : 18.117.232.234 Web Server : Apache/2.4.18 (Ubuntu) System : User : www-data ( ) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : disk_free_space,disk_total_space,diskfreespace,dl,exec,fpaththru,getmyuid,getmypid,highlight_file,ignore_user_abord,leak,listen,link,opcache_get_configuration,opcache_get_status,passthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,php_uname,phpinfo,posix_ctermid,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix,_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_times,posix_ttyname,posix_uname,pclose,popen,proc_open,proc_close,proc_get_status,proc_nice,proc_terminate,shell_exec,source,show_source,system,virtual MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/lib/dpkg/info/ |
Upload File : |
#!/bin/sh set -e export LC_ALL=C type=$1 preversion=$2 package_name() { if dpkg --assert-multi-arch 2>/dev/null; then echo libc6:${DPKG_MAINTSCRIPT_ARCH} else echo libc6 fi } # element() is a helper function for file-rc: element() { local element list IFS element="$1" [ "$2" = "in" ] && shift list="$2" [ "$list" = "-" ] && return 1 [ "$list" = "*" ] && return 0 IFS="," set -- $list case $element in "$1"|"$2"|"$3"|"$4"|"$5"|"$6"|"$7"|"$8"|"$9") return 0 esac return 1 } # filerc (runlevel, service) returns /etc/init.d/service, if service is # running in $runlevel: filerc() { local runlevel basename runlevel=$1 basename=$2 while read LINE do case $LINE in \#*|"") continue esac set -- $LINE SORT_NO="$1"; STOP="$2"; START="$3"; CMD="$4" [ "$CMD" = "/etc/init.d/$basename" ] || continue if element "$runlevel" in "$START" || element "S" in "$START" then echo "/etc/init.d/$basename" return 0 fi done < /etc/runlevel.conf echo "" } checkpkgver () { local status pkg pkg=$1 status=$(dpkg -s $pkg 2>/dev/null | grep ^Status: | sed -e 's/^Status: \(.*\) \(.*\) \(.*\)/\3/g') if [ -n "$status" ] && [ "$status" != "not-installed" ] && [ "$status" != "config-files" ]; then echo $(dpkg -s $pkg 2>/dev/null | grep ^Version: | sed -e 's/^Version: *//'); fi } if [ "$type" = "configure" ] then # We don't use a registry anymore, remove the old file rm -f /etc/ld.so.hwcappkgs # /etc/ld.so.nohwcap code: # Handle upgrades when libc-opt package has been installed. # When a /etc/ld.so.nohwcap file exists, ld.so only use libraries # from /lib, and ignore all optimised libraries. This file is # inconditionaly created in the preinst script of libc. # Get the list of optimized packages for a given architecture # Before removing a package from this list, make sure it appears # in the Conflicts: line of libc. case $(dpkg --print-architecture) in alpha) hwcappkgs="libc6-alphaev67" ;; i386) hwcappkgs="libc6-i686 libc6-xen" ;; kfreebsd-i386) hwcappkgs="libc0.1-i686" ;; sparc) hwcappkgs="libc6-sparcv9 libc6-sparcv9b" ;; esac # We check the version between the current installed libc and # all optimized packages (on architectures where such packages # exists). all_upgraded=yes if [ -n "$hwcappkgs" ]; then for pkg in $hwcappkgs ; do ver=$(dpkg-query -l $pkg 2>/dev/null | sed -e '/^[a-z][a-z]\s/!d;/^.[nc]/d;' -e "s/^..\s\+$pkg[0-9a-z:]*\s\+//;s/\s.*//g") if [ -n "$ver" ] && [ "$ver" != "2.23-0ubuntu11.3" ]; then all_upgraded=no fi done fi # If the versions of all optimized packages are the same as the libc # one, we could remove /etc/ld.so.nohwcap. Otherwise, it will be removed # when all optimized packages are upgraded or removed. if [ "$all_upgraded" = yes ] ; then rm -f /etc/ld.so.nohwcap fi # Load debconf module if available if [ -f /usr/share/debconf/confmodule ] ; then . /usr/share/debconf/confmodule fi if [ -n "$preversion" ]; then if [ ! -d /var/mail ] && [ ! -L /var/mail ]; then ln -sf spool/mail /var/mail fi if dpkg --compare-versions "$preversion" lt 2.23; then check="" [ -f /var/run/services.need_restart ] && check=$(cat /var/run/services.need_restart 2>/dev/null) # Change service names back into package names, so that we can # double-check package installation. check=$(echo "$check" | \ sed -e's/\bapache2\b/apache2.2-common/g' \ -e's/\batd\b/at/g' \ -e's/\bdovecot\b/dovecot-common/g' \ -e's/\bexim4\b/exim4-base/g' \ -e's/\blpd\b/lpr/g' \ -e's/\blpd-ppd\b/lpr-ppd/g' \ -e's/\bmysql\b/mysql-server/g' \ -e's/\bsaslauthd\b/sasl2-bin/g' \ ) # Check to see which of the services that were running at unpack # time are still around # the following substitution processes the check variable # and returns results in the services variable # NSS services check: echo -n "Checking for services that may need to be restarted..." # Only get the ones that are installed, and configured check=$(dpkg -s $check 2> /dev/null | egrep '^Package:|^Status:' | awk '{if ($1 ~ /^Package:/) { package=$2 } else if ($0 ~ /^Status: .* installed$/) { print package }}') # some init scripts don't match the package names check=$(echo $check | \ sed -e's/\bapache2.2-common\b/apache2/g' \ -e's/\bat\b/atd/g' \ -e's/\bdovecot-common\b/dovecot/g' \ -e's/\bexim4-base\b/exim4/g' \ -e's/\blpr\b/lpd/g' \ -e's/\blpr-ppd\b/lpd-ppd/g' \ -e's/\bmysql-server\b/mysql/g' \ -e's/\bsasl2-bin\b/saslauthd/g' \ ) echo echo "Checking init scripts..." rl=$(runlevel | sed 's/.*\ //') for service in $check; do if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then invoke-rc.d ${service} status >/dev/null 2>/dev/null && status=0 || status=$? if [ "$status" = "0" ] || [ "$status" = "2" ] ; then services="$service $services" elif [ "$status" = "100" ] ; then echo "WARNING: init script for $service not found." fi else if [ -f /usr/share/file-rc/rc ] || [ -f /usr/lib/file-rc/rc ] && [ -f /etc/runlevel.conf ]; then idl=$(filerc $rl $service) else idl=$(ls /etc/rc${rl}.d/S??${service} 2> /dev/null | head -1) fi if [ -n "$idl" ] && [ -x $idl ]; then services="$service $services" fi fi done # If there are services that we *stopped* in the preinst, don't # forget to restart them now if [ -e /var/run/services.need_start ]; then services="$(cat /var/run/services.need_start) $services" fi if [ -n "$services" ]; then echo "Restarting services possibly affected by the upgrade:" failed="" for service in $services; do # We can't just use a generic rewrite here, as it was # samba in wheezy and smbd in jessie, which confuses. if [ "$service" = "samba" ]; then if [ -x /etc/init.d/smbd ] || [ -f /etc/init/smbd ]; then service="smbd" fi fi if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then idl="invoke-rc.d ${service}" idlopt="restart" elif [ -f /usr/share/file-rc/rc ] || [ -f /usr/lib/file-rc/rc ] && [ -f /etc/runlevel.conf ]; then idl=$(filerc $rl $service) idlopt="restart" else idl=$(ls /etc/rc${rl}.d/S??${service} 2> /dev/null | head -1) idlopt="restart" fi echo -n " $service: restarting..." if $idl $idlopt > /dev/null 2>&1; then echo "done." else echo "FAILED! ($?)" failed="$service $failed" fi done echo if [ -n "$failed" ]; then if [ -f /usr/share/debconf/confmodule ] ; then db_fset glibc/restart-failed seen false db_subst glibc/restart-failed services "$failed" if [ "$RELEASE_UPGRADE_MODE" = desktop ]; then db_input medium glibc/restart-failed || true else db_input critical glibc/restart-failed || true fi db_go || true else echo "The following services failed to start: $failed" echo echo "You will need to start these manually by running \`/etc/init.d/<service> start'" echo "If the service still fails to start, you may need to file a bug on" echo "$(package_name) or the service involved." frontend=`echo "$DEBIAN_FRONTEND" | tr '[:upper:]' '[:lower:]'` if [ "$frontend" != noninteractive ]; then echo echo -n "Press ENTER to continue: " read foo fi fi else echo "Services restarted successfully." rm -f /var/run/services.need_start /var/run/services.need_restart fi # Shut down the frontend, to make sure none of the # restarted services keep a connection open to it if [ -f /usr/share/debconf/confmodule ] ; then db_stop fi else echo "Nothing to restart." fi fi # end upgrading and $preversion lt 2.23 # give a reboot notification on al upgrades (LP: #1546457) if [ -x /usr/share/update-notifier/notify-reboot-required ]; then /usr/share/update-notifier/notify-reboot-required fi fi # Upgrading # Restart init. Currently handles chroots, systemd and upstart, and # assumes anything else is going to not fail at behaving like # sysvinit: TELINIT=yes if ischroot 2>/dev/null; then # Don't bother trying to re-exec init from a chroot: TELINIT=no elif [ -d /run/systemd/system ]; then # Skip if systemd is the active PID 1, since systemd doesn't # need a reexec for a clean shutdown TELINIT=no elif [ -x "`which initctl`" ]; then UPSTART=$(initctl version 2>/dev/null | awk '/upstart/ {print $3}' | tr -d ')') if dpkg --compare-versions "$UPSTART" lt-nl 1.6.1; then # This is an old upstart that can't re-exec statefully: TELINIT=no touch /var/run/init.upgraded fi fi if [ "$TELINIT" = "yes" ]; then telinit u 2>/dev/null || true ; sleep 1 fi fi # We now use the multiarch triplet instead of the GNU triplet for the ld.so # configuration file, in order to keep a stable path. Remove the old file. case ${DPKG_MAINTSCRIPT_ARCH:-$(dpkg --print-architecture)} in hurd-i386) dpkg-maintscript-helper rm_conffile /etc/ld.so.conf.d/i486-gnu.conf 2.19-11~ libc0.3:hurd-i386 -- "$@" dpkg-maintscript-helper rm_conffile /etc/ld.so.conf.d/i486-gnu-gnu.conf 2.19-11~ libc0.3:hurd-i386 -- "$@" ;; i386) dpkg-maintscript-helper rm_conffile /etc/ld.so.conf.d/i486-linux-gnu.conf 2.19-4~ libc6:i386 -- "$@" dpkg-maintscript-helper rm_conffile /etc/ld.so.conf.d/i686-linux-gnu.conf 2.19-13~ libc6:i386 -- "$@" ;; kfreebsd-i386) dpkg-maintscript-helper rm_conffile /etc/ld.so.conf.d/i486-kfreebsd-gnu.conf 2.19-11~ libc0.1:kfreebsd-i386 -- "$@" ;; esac exit 0