Advertisement
Guest User

Untitled

a guest
Oct 21st, 2016
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. #!/bin/bash
  2. # For AWS EC2 CentOS boxes that use LVM and have storage volumes presented as /dev/xvd_ (where _ is a letter).
  3.  
  4. main() {
  5. local devPrefix=xvd ;
  6. local dev=$1 ;
  7. local gb=$2 ;
  8. local fs_dir=$3 ;
  9. local vg=$4 ;
  10. local lv_name=$5 ;
  11. [[ $dev ]] || { echo "ERROR: Must have first argument, the device letter (like 'b' for /dev/xvdb)'." ; exit 1 ; } ;
  12. [[ $gb ]] || { echo "ERROR: Must have second argument, the size in GB." ; exit 1 ; } ;
  13. [[ $fs_dir ]] || { echo "ERROR: Must have third argument, the filesystem directory (like /var or /var/log)." ; exit 1 ; } ;
  14. [[ $vg ]] || { echo "ERROR: Must have fourth argument, the volume group." ; exit 1 ; } ;
  15. [[ $lv_name ]] || { echo "ERROR: Must have fifth argument, the logical volume name." ; exit 1 ; } ;
  16. df -h | grep $fs_dir
  17. pvs | grep $devPrefix$dev || pvcreate /dev/$devPrefix$dev
  18. vgextend $vg /dev/$devPrefix$dev
  19. lvextend -L+${gb}G /dev/mapper/${vg}-$lv_name && xfs_growfs $fs_dir
  20. df -h | grep $fs_dir
  21. }
  22.  
  23. cd $(dirname $0) || { echo "ERROR: $? from 'cd dirname($0)'." ; exit 1 ; } ;
  24. main "$@" || { echo "ERROR: $? from 'main($@)'." ; exit 1 ; } ;
  25.  
  26. #
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement