Solaris 11 unsorted: Difference between revisions

From Lolly's Wiki
Jump to navigationJump to search
No edit summary
m (Text replacement - "</source" to "</syntaxhighlight")
 
(One intermediate revision by the same user not shown)
Line 14: Line 14:


== Solaris 11 up to date? ==
== Solaris 11 up to date? ==
<source lang=bash>
<syntaxhighlight lang=bash>
#!/bin/bash
#!/bin/bash


Line 79: Line 79:
       check ${package}  
       check ${package}  
     fi
     fi
</source>
</syntaxhighlight>

Latest revision as of 23:51, 25 November 2021


kcfd: unable to load certificate from /etc/crypto/certs/ORCLObjectCA

Problem:

Apr  2 11:05:29 host42 kcfd[77]: [ID 180312 user.error] kcfd: unable to load certificate from /etc/crypto/certs/ORCLObjectCA
Apr  2 11:05:29 host42 openssl[2360]: [ID 238837 user.error] libpkcs11: /usr/lib/security/amd64/pkcs11_softtoken.so unexpected failure in ELF signature verification. See cryptoadm(1M). Skipping this plug-in.

Solution:

# pkg fix pkg:/crypto/ca-certificates


Solaris 11 up to date?

#!/bin/bash

# Written by Lars Timmann <L@rs.Timmann.de> 2018

export LANG=C

function check () {
  package=$1
  # pkg list -af entire@latest
  local=$(pkg info ${package} 2>&1)
  remote=$(pkg info -r ${package} 2>&1)
  printf "%s\n%s\n" "${local}" "${remote}" | nawk -v package="${package}" '
      $1=="Version:" {
        version[nr]=$2;
        next;
      }
      $1=="Branch:" {
        branch[nr++]=$2;
        next;
      }
      /^pkg:/ {
        error=$0;
      }
      END{
        if(error) {
          printf ("Package %s:\t%s\n", package, error);
          status=-1;
        } else {
          if(branch[0]==branch[1]){
            printf ("Package %s:\tUptodate at %s\n", package, branch[0]);
            status=0;
          }else{
            printf ("Package %s:\tUpdate is available: %s -> %s\n", package, branch[0], branch[1]);
            split(version[1], version_part, /\./);
            split(branch[1], branch_part, /\./);
	    if(version[1]=="0.5.11") {
              be_version=sprintf("%d.%d.%d.%d.%d",version_part[3], branch_part[3], branch_part[4], branch_part[5], branch_part[6]);
            }
	    if(version[1]=="11.4") {
              be_version=sprintf("%d.%d.%d.%d.%d",branch_part[1], branch_part[2], branch_part[4], branch_part[5], branch_part[6]);
            }
            printf ("\n\nUse:\tpkg update --accept --require-new-be --be-name solaris_%s\n\n\n", be_version);
            status=2;
          }
        }
        exit status;
      }
    '
}

package="entire"
pkg refresh >/dev/null \
  || echo "Cannot refresh packages" \
  && if [ $# -gt 0 ]
     then 
       while [ $# -gt 0 ]
       do
         package=$1
         shift
         check ${package} 
       done
     else
       check ${package} 
     fi