@@ -577,6 +577,104 @@ func_ipv4_addr(){
577
577
echo $ips
578
578
}
579
579
580
+ # Get OS information
581
+ get_os_name () {
582
+
583
+ centos_flavor=" centos"
584
+
585
+ # Use lsb_release if possible
586
+ if command -V lsb_release > /dev/null 2>&1 ; then
587
+ os=` lsb_release -is | tr ' [:upper:]' ' [:lower:]' `
588
+ codename=` lsb_release -cs | tr ' [:upper:]' ' [:lower:]' `
589
+ release=` lsb_release -rs | sed ' s/\..*$//' `
590
+
591
+ if [ " $os " = " redhatenterpriseserver" -o " $os " = " oracleserver" ]; then
592
+ os=" centos"
593
+ centos_flavor=" red hat linux"
594
+ fi
595
+ # Otherwise it's getting a little bit more tricky
596
+ else
597
+ if ! ls /etc/* -release > /dev/null 2>&1 ; then
598
+ os=` uname -s | \
599
+ tr ' [:upper:]' ' [:lower:]' `
600
+ else
601
+ os=` cat /etc/* -release | grep ' ^ID=' | \
602
+ sed ' s/^ID=["]*\([a-zA-Z]*\).*$/\1/' | \
603
+ tr ' [:upper:]' ' [:lower:]' `
604
+
605
+ if [ -z " $os " ]; then
606
+ if grep -i " oracle linux" /etc/* -release > /dev/null 2>&1 || \
607
+ grep -i " red hat" /etc/* -release > /dev/null 2>&1 ; then
608
+ os=" rhel"
609
+ else
610
+ if grep -i " centos" /etc/* -release > /dev/null 2>&1 ; then
611
+ os=" centos"
612
+ else
613
+ os=" linux"
614
+ fi
615
+ fi
616
+ fi
617
+ fi
618
+
619
+ case " $os " in
620
+ ubuntu)
621
+ codename=` cat /etc/* -release | grep ' ^DISTRIB_CODENAME' | \
622
+ sed ' s/^[^=]*=\([^=]*\)/\1/' | \
623
+ tr ' [:upper:]' ' [:lower:]' `
624
+ ;;
625
+ debian)
626
+ codename=` cat /etc/* -release | grep ' ^VERSION=' | \
627
+ sed ' s/.*(\(.*\)).*/\1/' | \
628
+ tr ' [:upper:]' ' [:lower:]' `
629
+ ;;
630
+ centos)
631
+ codename=` cat /etc/* -release | grep -i ' centos.*(' | \
632
+ sed ' s/.*(\(.*\)).*/\1/' | head -1 | \
633
+ tr ' [:upper:]' ' [:lower:]' `
634
+ # For CentOS grab release
635
+ release=` cat /etc/* -release | grep -i ' centos.*[0-9]' | \
636
+ sed ' s/^[^0-9]*\([0-9][0-9]*\).*$/\1/' | head -1`
637
+ ;;
638
+ rhel|ol)
639
+ codename=` cat /etc/* -release | grep -i ' red hat.*(' | \
640
+ sed ' s/.*(\(.*\)).*/\1/' | head -1 | \
641
+ tr ' [:upper:]' ' [:lower:]' `
642
+ # For Red Hat also grab release
643
+ release=` cat /etc/* -release | grep -i ' red hat.*[0-9]' | \
644
+ sed ' s/^[^0-9]*\([0-9][0-9]*\).*$/\1/' | head -1`
645
+
646
+ if [ -z " $release " ]; then
647
+ release=` cat /etc/* -release | grep -i ' ^VERSION_ID=' | \
648
+ sed ' s/^[^0-9]*\([0-9][0-9]*\).*$/\1/' | head -1`
649
+ fi
650
+
651
+ os=" centos"
652
+ centos_flavor=" red hat linux"
653
+ ;;
654
+ amzn)
655
+ codename=" amazon-linux-ami"
656
+ release_amzn=` cat /etc/* -release | grep -i ' amazon.*[0-9]' | \
657
+ sed ' s/^[^0-9]*\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/' | \
658
+ head -1`
659
+
660
+ amzn=` rpm --eval " %{amzn}" `
661
+ if [ ${amzn} == 1 ]; then
662
+ release=" latest"
663
+ else
664
+ release=${amzn}
665
+ fi
666
+
667
+ os=" amzn"
668
+ centos_flavor=" amazon linux"
669
+ ;;
670
+ * )
671
+ codename=" "
672
+ release=" "
673
+ ;;
674
+ esac
675
+ fi
676
+ }
677
+
580
678
581
679
# ##############################################################################
582
680
# #
0 commit comments