Bo's Oracle Station

查看: 875|回复: 0

优化virtio windows虚拟机的脚本和回环设备的luks脚本

[复制链接]

1005

主题

1469

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12012
发表于 2020-8-1 20:37:12 | 显示全部楼层 |阅读模式
  1. renice -n -20 `ps  aux | grep qemu | grep windows | cut -c 5-14`

复制代码

挂载:
  1. #!/bin/sh
  2. sub_confirm() {
  3.         #
  4.         # Sub_answer begin:
  5.         #
  6.         # Written by a RHCE, Tang Bo. Report Bugs to "tangbo@fjirsm.ac.cn".
  7.         # Version 1.1.1. Last modified on Jan 13rd 2007:
  8.         # 1.0   Original
  9.         # 1.1   Introduce "sub_sub_answer()"
  10.         # 1.1.1 "BFS1(Bash Format Standard V1)" applied
  11.         sub_answer() {
  12.                 unset SUBANS
  13.                 #
  14.                 # Sub_sub_answer begin:
  15.                 #
  16.                 # Written by a RHCE, Tang Bo. Report Bugs to "tangbo@fjirsm.ac.cn".
  17.                 # Version 1.0. Last modified on Jan 13rd 2007:
  18.                 # 1.0   Original
  19.                 sub_sub_answer(){
  20.                         SUBANS=`echo $SUBANS |tr -d "[:blank:]"`
  21.                         if [ -z $SUBANS ]
  22.                         then
  23.                         SUBANS="NULL"
  24.                         fi
  25.                 }
  26.                 #
  27.                 # Sub_sub_answer end.
  28.                 #
  29.                 read -p "$1" SUBANS
  30.                 sub_sub_answer # Line15
  31.                 # Line15 begin: Deal with $SUNANS:
  32.                 until [ $SUBANS ==  "y"  -o  $SUBANS ==  "n" ]
  33.                 do
  34.                         echo "This question should be answered either with "y" or "n"."
  35.                         read -p "$1" SUBANS
  36.                         sub_sub_answer
  37.                 done
  38.                 # Line15 end.
  39.         }
  40.         #
  41.         # Sub_answer end.
  42.         #
  43.         unset SUBCON1
  44.         unset SUBCON2
  45.         SUBCON1=0
  46.         SUBCON2=1
  47.         until [ $SUBCON1 == $SUBCON2 ]
  48.         do
  49.                 read -p "$1" SUBCON1
  50.                 sub_answer "Your input is: "$SUBCON1". Are you sure ?(y/n) "
  51.                 if [ -z $SUBCON1 ]
  52.                 then
  53.                  SUBCON1="NULL"
  54.                 fi
  55.                 if [ $SUBANS == "y" ]
  56.                 then
  57.                 SUBCON2=$SUBCON1
  58.                 fi
  59.         done
  60. }
  61. #
  62. # sub_confirm end
  63. #

  64. sub_confirm "Please input the mount point full path: ?"


  65. ls -l  $SUBCON1* || exit

  66. for i in {0..9}
  67. do
  68. mknod /dev/loop$i b 7 $i  2>/dev/null
  69. done

  70. sub_answer() {
  71.         unset SUBANS
  72.         #
  73.         # Sub_sub_answer begin:
  74.         #
  75.         # Written by a RHCE, Tang Bo. Report Bugs to "tangbo@fjirsm.ac.cn".
  76.         # Version 1.0. Last modified on Jan 13rd 2007:
  77.         # 1.0   Original
  78.         sub_sub_answer(){
  79.                 SUBANS=`echo $SUBANS |tr -d "[:blank:]"`
  80.                 if [ -z $SUBANS ]
  81.                 then
  82.                 SUBANS="NULL"
  83.                 fi
  84.         }
  85.         #
  86.         # Sub_sub_answer end.
  87.         #
  88.         read -p "$1" SUBANS
  89.         sub_sub_answer # Line15
  90.         # Line15 begin: Deal with $SUNANS:
  91.         until [ $SUBANS ==  "y"  -o  $SUBANS ==  "n" ]
  92.         do
  93.                 echo "This question should be answered either with "y" or "n"."
  94.                 read -p "$1" SUBANS
  95.                 sub_sub_answer
  96.         done
  97.         # Line15 end.
  98. }



  99. mkdir /file 2>/dev/null
  100. mkdir /file/loop0 2>/dev/null
  101. mkdir /file/loop1  2>/dev/null
  102. mkdir /file/loop2  2>/dev/null
  103. mkdir /file/loop3  2>/dev/null
  104. mkdir /file/loop4  2>/dev/null
  105. mkdir /file/loop5  2>/dev/null
  106. mkdir /file/loop6 2>/dev/null
  107. mkdir /file/loop7 2>/dev/null
  108. mkdir /file/loop8  2>/dev/null
  109. mkdir /file/loop9  2>/dev/null

  110. echo "AuthName some" > /file/.htaccess
  111. echo "AuthType Basic" >> /file/.htaccess
  112. echo "AuthUserfile /etc/httpd/passwd/passwd" >> /file/.htaccess
  113. echo "require valid-user" >> /file/.htaccess

  114. for i in {0..9}
  115. do
  116. VBO=`find  $SUBCON1 -name "*.loop$i"`
  117. if [ ! -z $VBO ]
  118. then
  119.   sub_answer "Decrypt $VBO:(y/n)? "
  120.   if [ $SUBANS == 'y' ]
  121.   then
  122.    losetup  /dev/loop$i $VBO 2>/dev/null
  123.    losetup -f  /dev/loop$i $VBO 2>/dev/null
  124.    losetup  /dev/loop$i 2>/dev/null
  125.    cryptsetup luksOpen /dev/loop$i loop$i
  126.    mount -o ro /dev/mapper/loop$i /file/loop$i
  127.    # mount --bind /file/loop$i /container/loop$i
  128.   fi
  129. fi
  130. done

  131. df -h

  132. sleep 2

  133. ls -l /dev/mapper/
复制代码

脱挂:
  1. #!/bin/sh

  2. . /usr/lib/botang-func

  3. sub_confirm "Please input the mount point full path: ?"
  4. ls -l  $SUBCON1* || exit


  5. for i in {0..9}
  6. do
  7. VBO=`find  $SUBCON1 -name "*.loop$i"`
  8. if [ ! -z $VBO ]
  9. then
  10.   sub_answer "Decrypt $VBO:(y/n)? "
  11.   if [ $SUBANS == 'y' ]
  12.   then
  13.    # umount  /container/loop$i
  14.    umount  /file/loop$i
  15.    cryptsetup luksClose loop$i
  16.    losetup -d /dev/loop$i
  17.    losetup  /dev/loop$i 2>/dev/null
  18.   fi
  19. fi
  20. done



  21. df -h

  22. sleep 2
  23. ls -l /dev/mapper/

复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-11-11 03:47 , Processed in 0.046223 second(s), 25 queries .

快速回复 返回顶部 返回列表