v-change-sys-hostname 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #!/bin/bash
  2. # info: change hostname
  3. # options: HOSTNAME
  4. #
  5. # The function for changing system hostname.
  6. #----------------------------------------------------------#
  7. # Variable&Function #
  8. #----------------------------------------------------------#
  9. # Argument definition
  10. domain=$1
  11. # Includes
  12. source $VESTA/func/main.sh
  13. source $VESTA/conf/vesta.conf
  14. #----------------------------------------------------------#
  15. # Verifications #
  16. #----------------------------------------------------------#
  17. check_args '1' "$#" 'HOSTNAME'
  18. is_format_valid 'domain'
  19. #----------------------------------------------------------#
  20. # Action #
  21. #----------------------------------------------------------#
  22. hostname $domain
  23. # RHEL/CentOS
  24. if [ -e "/etc/redhat-release" ]; then
  25. touch /etc/sysconfig/network
  26. if [ -z "$(grep HOSTNAME /etc/sysconfig/network)" ]; then
  27. echo "HOSTNAME='$domain'" >> /etc/sysconfig/network
  28. else
  29. sed -i "s/HOSTNAME=.*/HOSTNAME='$domain'/" /etc/sysconfig/network
  30. fi
  31. fi
  32. # Debian/Ubuntu
  33. if [ ! -e "/etc/redhat-release" ]; then
  34. echo "$domain" > /etc/hostname
  35. fi
  36. #----------------------------------------------------------#
  37. # Vesta #
  38. #----------------------------------------------------------#
  39. # Logging
  40. log_event "$OK" "$ARGUMENTS"
  41. exit