{"id":2401,"date":"2020-10-23T23:30:42","date_gmt":"2020-10-23T15:30:42","guid":{"rendered":"http:\/\/blog.ywdevops.cn\/?p=2401"},"modified":"2020-10-23T23:35:55","modified_gmt":"2020-10-23T15:35:55","slug":"linux-2","status":"publish","type":"post","link":"https:\/\/blog.ywdevops.cn\/index.php\/2020\/10\/23\/linux-2\/","title":{"rendered":"linux\u7cfb\u7edf\u81ea\u52a8\u6269\u5bb9\u811a\u672c"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u4e0b\u9762\u7684\u4f8b\u5b50\u4e3a\u901a\u8fc7linux\u7684expect\u547d\u4ee4\u5b9e\u73b0\u81ea\u52a8\u6269\u5bb9\u6587\u4ef6\u7cfb\u7edf\uff0c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\n#set -e\u8868\u793a\u5f53\u9047\u5230\u9519\u8bef\u7684\u65f6\u5019\uff0c\u7acb\u5373\u505c\u6b62\uff0cset-x\u8868\u793a\u52a0\u8f7d\u811a\u672c\u6267\u884c\u8fc7\u7a0b\nset -e\n#set -x\n#\u6dfb\u52a0\u5b8c\u78c1\u76d8\u540e\uff0c\u9996\u5148\u901a\u8fc7fdisk -l\u8fdb\u884c\u5206\u533a,\u9996\u5148\u5224\u65ad\u65b0\u6dfb\u52a0\u7684\u78c1\u76d8\n#\u5b9a\u4e49\u6269\u5bb9\u51fd\u6570\nextend() {\n    \/usr\/bin\/expect &lt;&lt;EOF\n    set timeout 10\nspawn fdisk $i\n    expect \"Command\"\n    send \"n\\r\"\n    expect \"Select\"\n    send \"p\\r\"\n    expect \"number\"\n    send \"1\\r\"\n    expect \"First\"\n    send \"\\r\"\n    expect \"Last\"\n    send \"\\r\" \n    expect \"Command\"\n    send \"t\\r\"\n    expect \"Hex code:\"\n    send \"8e\\r\"\n    expect \"Command:\"\n    send \"w\\r\"\nexpect eof\nEOF\n#\u83b7\u53d6\u521b\u5efa\u540e\u7684\u7269\u7406\u5377\u540d\u79f0\nj=$(fdisk -l |grep $i |sed -n \"2p\" |awk '{print $1}')\n#\u521b\u5efa\u7269\u7406\u5377\uff0c\u4f7f\u7528pvcreate\n  pvcreate  $j\n  if [ $? -eq 0 ];then\n    echo \">>>>>>\u7269\u7406\u5377\u521b\u5efa\u6210\u529f\uff0c\u63a5\u4e0b\u6765\u5c06\u7269\u7406\u5377\u52a0\u5165\u5377\u7ec4&lt;&lt;&lt;&lt;&lt;&lt;&lt;\"\n  fi\n#\u67e5\u8be2\u5f53\u524d\u5377\u7ec4\u60c5\u51b5\uff0c\u6267\u884c\u547d\u4ee4vgs\u5373\u53ef\necho \">>>>\u67e5\u8be2\u5f53\u524d\u5377\u7ec4\u4fe1\u606f\uff0c\u5982\u4e0b\u6240\u793a&lt;&lt;&lt;&lt;\"\n  vgs\n read -p \"\u8bf7\u8f93\u5165\u8981\u6269\u5c55\u7684\u5377\u7ec4\u540d\u79f0(sys\/vg_data)\uff1a\" vg\n  case $vg in\n    sys)\n    vgextend sys $j\n    ;;\n    vg_data)\n    vgextend vg_data $j\n    ;;\n    centos)\n    vgextend centos $j\n    ;;\n    *)\n    echo \"\u4f60\u8f93\u5165\u7684\u4fe1\u606f\u6709\u8bef\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165...........\"\n    exit 1\n    ;;\n  esac\n   if [ $? -eq 0 ];then\n    echo \">>>>\u5377\u7ec4\u5df2\u7ecf\u6210\u529f\uff0c\u63a5\u4e0b\u6765\u8fdb\u884c\u903b\u8f91\u5377\u6269\u5bb9&lt;&lt;&lt;&lt;\"\n   fi\n echo \">>>>>>\u67e5\u8be2\u5f53\u524d\u903b\u8f91\u5377\u4fe1\u606f&lt;&lt;&lt;&lt;&lt;&lt;\"\n   lvs\n   echo \" \"\n   read -p \"\u8bf7\u8f93\u5165\u8981\u6269\u5c55\u7684\u903b\u8f91\u5377\u540d\u79f0(root\/swap\/tmp\/var\/lv_apps\/lv_logs):\" lv\n   case $lv in\n     root)\n     lvextend -l +100%FREE \/dev\/mapper\/sys-root\n     if [ $? -eq 0 ];then\n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/sys-root\"\n     xfs_growfs  $lv  \n     ;;\n     swap)\n     lvextend -l +100%FREE \/dev\/mapper\/sys-swap\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/sys-swap\"\n     xfs_growfs  $lv\n     ;;\n     tmp)\n     lvextend -l +100%FREE \/dev\/mapper\/sys-tmp\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/sys-tmp\"\n     xfs_growfs  $lv\n     ;;\n     var)\n     lvextend -l +100%FREE \/dev\/mapper\/sys-var\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/sys-var\"\n     xfs_growfs  $lv\n     ;;\n     lv_apps)\n     lvextend -l +100%FREE \/dev\/mapper\/vg_data-lv_apps\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/vg_data-lv_apps\"\n     xfs_growfs  $lv\n     ;;\n     lv_logs)\n     lvextend -l +100%FREE \/dev\/mapper\/vg_data-lv_logs\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/vg_data-lv_logs\"\n     xfs_growfs  $lv\n     ;;\n     roott)\n     lvextend -l +100%FREE \/dev\/mapper\/centos-root\n     if [ $? -eq 0 ];then  \n       echo \"\u903b\u8f91\u5377\u521b\u5efa\u6210\u529f\"\n     fi\n    echo \">>>>>>\u63a5\u4e0b\u6765\u5bf9\u903b\u8f91\u5377\u8fdb\u884c\u683c\u5f0f\u5316&lt;&lt;&lt;&lt;&lt;&lt;\"\n     lv=\"\/dev\/mapper\/centos-root\"\n     xfs_growfs  $lv\n     df -h\n     ;;\n     esac\n}\n#\u5b9a\u4e49\u5012\u8ba1\u65f6\u51fd\u6570\ndao() {\n  for j in {5..1}\n  do\n    echo \"\u5012\u8ba1\u65f6\uff1a$j s\"\n    sleep 1\n  done\n }\necho \">>>>>>\u9996\u5148\u67e5\u770b\u6dfb\u52a0\u540e\u7684\u78c1\u76d8\u4fe1\u606f&lt;&lt;&lt;&lt;&lt;&lt;\"\nlsblk\necho \" \"\nread -p \" \u8bf7\u8f93\u5165\u8981\u5206\u533a\u7684\u78c1\u76d8\u540d\u79f0(\/dev\/sda,\/dev\/sdb......) : \" i\n  case $i in\n   help)\n    echo \"1.\u8bf7\u8f93\u5165\u8981\u5206\u533a\u7684\u78c1\u76d8\u4f8b\u5982\/dev\/sda,\/dev\/sdb\uff0c\u8f93\u5165\u540e\u7cfb\u7edf\u4f1a\u81ea\u52a8\u68c0\u6d4b\u6b64\u5206\u533a\u662f\u5426\u6b63\u5728\u4f7f\u7528\u6216\u8005\u95f2\u7f6e\"\n    echo \"\u8f93\u5165\u5b8c\u6210\u540e\u5c06\u5f00\u59cb\u5206\u533a\u4ee5\u53ca\u6269\u5bb9\u64cd\u4f5c\"\n   ;;\n   \/dev\/sda)\n   if [ $(fdisk -l |grep $i |grep -v root |wc -l) -gt 1 ];then\n       echo \"\/dev\/sda\u78c1\u76d8\u5df2\u7ecf\u5728\u4f7f\u7528\u4e2d\"\n   elif [ $(fdisk -l |grep $i |grep -v root |wc -l) -eq 0 ];then\n       echo \"\u4e0d\u5b58\u5728\u6b64\u78c1\u76d8\/dev\/sda\uff0c\u8bf7\u786e\u8ba4\"\n   else\n     echo \"\u5b58\u5728\u6b64\u78c1\u76d8\uff0c\u5373\u5c06\u5f00\u59cb\u5206\u533a\u64cd\u4f5c\" \n     extend\n   fi\n   ;;\n  \/dev\/sdb)\n   if [ $(fdisk -l |grep $i |grep -v root |wc -l) -gt 1 ];then\n       echo \"\/dev\/sdb\u78c1\u76d8\u5df2\u7ecf\u5728\u4f7f\u7528\u4e2d\"\n   elif [ $(fdisk -l |grep $i |grep -v root |wc -l) -eq 0 ];then\n       echo \"\u4e0d\u5b58\u5728\u6b64\u78c1\u76d8\/dev\/sdb\uff0c\u8bf7\u786e\u8ba4\" \n   else\n       echo \"\u5b58\u5728\u6b64\u78c1\u76d8\uff0c5s\u540e\u5f00\u59cb\u5206\u533a\u64cd\u4f5c\"\n       dao\n       extend\n   fi\n   ;;\n   \/dev\/sdc)\n   if [ $(fdisk -l |grep $i |grep -v root |wc -l) -gt 1 ];then\n       echo \"\/dev\/sdc\u78c1\u76d8\u5df2\u7ecf\u5728\u4f7f\u7528\u4e2d\"\n   elif [ $(fdisk -l |grep $i |grep -v root |wc -l) -eq 0 ];then\n       echo \"\u4e0d\u5b58\u5728\u6b64\u78c1\u76d8\/dev\/sdc\uff0c\u8bf7\u786e\u8ba4\"  \n  else\n       echo \"\u5b58\u5728\u6b64\u78c1\u76d8\uff0c5s\u540e\u5f00\u59cb\u5206\u533a\u64cd\u4f5c\"\n       dao\n       extend\n   fi\n   ;;\n   \/dev\/sdd)\n   if [ $(fdisk -l |grep $i |grep -v root |wc -l) -gt 1 ];then\n       echo \"\/dev\/sdd\u78c1\u76d8\u5df2\u7ecf\u5728\u4f7f\u7528\u4e2d\"\n   elif [ $(fdisk -l |grep $i |grep -v root |wc -l) -eq 0 ];then\n       echo \"\u4e0d\u5b58\u5728\u6b64\u78c1\u76d8\/dev\/sdd\uff0c\u8bf7\u786e\u8ba4\" \n   else\n       echo \"\u5b58\u5728\u6b64\u78c1\u76d8\uff0c5s\u540e\u5f00\u59cb\u5206\u533a\u64cd\u4f5c\"\n       dao\n       extend\n   fi\n   ;;\n   \/dev\/sde)\n   if [ $(fdisk -l |grep $i |grep -v root |wc -l) -gt 1 ];then\n       echo \"\/dev\/sde\u78c1\u76d8\u5df2\u7ecf\u5728\u4f7f\u7528\u4e2d\"\n   elif [ $(fdisk -l |grep $i |grep -v root |wc -l) -eq 0 ];then\n       echo \"\u4e0d\u5b58\u5728\u6b64\u78c1\u76d8\/dev\/sde\uff0c\u8bf7\u786e\u8ba4\" \n   else\n       echo \"\u5b58\u5728\u6b64\u78c1\u76d8\uff0c5s\u540e\u5f00\u59cb\u5206\u533a\u64cd\u4f5c\"\n       dao\n       extend\n   fi\n   ;;\n  esac\n\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e0b\u9762\u7684\u4f8b\u5b50\u4e3a\u901a\u8fc7linux\u7684expect\u547d\u4ee4\u5b9e\u73b0\u81ea\u52a8\u6269\u5bb9\u6587\u4ef6\u7cfb\u7edf\uff0c\u5982\u4e0b\uff1a<\/p>\n","protected":false},"author":3,"featured_media":2403,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[107,29],"tags":[],"class_list":["post-2401","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-script","category-yunwei"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":8}},"_links":{"self":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/2401","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/comments?post=2401"}],"version-history":[{"count":2,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/2401\/revisions"}],"predecessor-version":[{"id":2405,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/2401\/revisions\/2405"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/media\/2403"}],"wp:attachment":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/media?parent=2401"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/categories?post=2401"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/tags?post=2401"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}