linux查看端口占用_linux shell命令之用小文件覆盖整个磁盘

时间:2017-06-07  来源:linux  阅读:

      假设我们现在遇到这样一个问题,公司的关键资料copy到测试服务器上了,在直接将其删除后,仍然担心服务器供应商可以将其恢复,即便是通过fdisk进行重新格式化,也仍然存在被恢复的风险,鉴于此,我们需要编写一个脚本,创建很多小文件(5MB左右),之后不停在关键资料所在的磁盘中复制该文件,以使Linux的inode无法再被重新恢复,为了达到这里效果,我们需要先构造该文件,如:

 代码如下       /> find . -name "*" > testfile
      /> ls -l testfile
      -rwxr-xr-x. 1 root root 5123678 Dec  9 11:46 testfile
      /> cat > test27.sh
      #!/bin/sh

      #1. 初始化计数器变量,其中max的值是根据当前需要填充的磁盘空间和testfile的大小计算出来的。
   

 代码如下    counter=0
      max=2000000
      remainder=0

      #2. 每次迭代counter变量都自增一,以保证每次生成不同的文件。当该值大于最大值时退出。
      #3. 对计数器变量counter按1000取模,这样可以在每生成1000个文件时打印一次输出,以便看到覆盖的进度,输出时间则便于预估还需要多少时间可以完成。
      #4. 创建单独的、用于存放这些覆盖文件的目录。
      #5. 生成临时文件,如果写入失败打印出提示信息。
     

 代码如下 while true
      do
          ((counter=counter+1))
          if [ #counter -ge $max ]; then
              break
          fi
          ((remainder=counter%1000))
          if [ $remainder -eq 0 ]; then
              echo -e "counter = $countert date = " $(date)
          fi
          mkdir -p /home/temp2
          cat < testfile > "/home/temp/myfiles.$counter"
          if [[ $? -ne 0 ]]; then
              echo "Failed to wrtie file."
              exit 1
          fi
      done
      echo "Done"
      CTRL+D
      /> ./test27.sh
      counter = 1000        Fri Dec  9 17:25:04 CST 2011
      counter = 2000        Fri Dec  9 17:25:24 CST 2011
      counter = 3000        Fri Dec  9 17:25:54 CST 2011


      ... ...
      与此同时,可以通过执行下面的命令监控磁盘空间的使用率。

 代码如下       /> watch -n 2 "df -h"
      Every 2.0s: df -h                                       Fri Dec  9 17:31:56 2011
   
      Filesystem            Size   Used Avail Use% Mounted on
      /dev/sda2             3.9G  2.3G  1.4G  63% /
      tmpfs                  504M  100K  504M   1% /dev/shm
      /dev/sda1              49M   36M   11M  77% /boot
      /dev/sda3              15G  172M   14G   2% /home

      我们也可以在执行的过程中通过pidstat命令监控脚本进程的每秒读写块数。

linux查看端口占用_linux shell命令之用小文件覆盖整个磁盘

http://m.bbyears.com/caozuoxitong/33204.html

推荐访问:linux安装mysql linux查看磁盘空间 linux学习
相关阅读 猜你喜欢
本类排行 本类最新