教程目标:dd wipe 命令磁盘清空shell脚本,笔记本台机MAC通用

日    期:2015年08月20日

联系邮箱:linux_lcl@163.com

Q Q  群:1851 15701

51CTO博客首页:http://990487026.blog.51cto.com

生产需求:

公司人数达到一定数目,就会存在人员流动,然后附属的PC或者Server,MAC当然要彻底清空里面的数据,装好新的windows,linux,MAC系统库存起来,留给下一个准备入职的人员使用。

使用这个脚本能大大减少劳动力,离职的电脑拿过来,插入准备的U盘,只要有电脑常识的人,只需要输入yes 或者no,就可以完成电脑磁盘清空的任务,大大提高工作效率。

一,开始动手:

1,你需要一个8G的U盘

2,一张linux发行版的光盘,或者一个具备启动linux发行版的U盘,用来安装linux到上面的8G U盘

Ready!

二,找一个redhat,CentOS,Frdora的发行版,安装到U盘,在安装的时候请注意,一定要使用手动去分区,不要使用默认的磁盘卷分区。

1, /boot分区

2, /根分区

3,/home 分区

指定这三个分区,足矣

三, 系统时建议把桌面也安装,安装完成后,修改inittab运行级别为3,默认不开桌面,想开就开。

插入U盘,从U盘开机

vim /root/.bashrc

在最下面添加一行:bash disk.sh

保存退出!

vim /root/disk.sh

把下面的脚本内容复制进去,保存。

这样使用root开机就可已直接显示使用磁盘清空命令了。

注意:脚本运行的时候,会出现卡死的假象,其实并不是卡死,而是dd命名在执行的时候不输出任何信息,执行完毕之后,会显示用了多少时间,擦写的速度是多少。

磁盘灯会一直亮,直到清空完成

============脚本开始===============================

#!/bin/bash
clear
setterm -blank 0
date
echo ""
rm -rf diskready
rm -rf temp1
rm -rf disklist
touch diskready
touch disklist
fdisk -l &>> temp1for i in {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u,v,w,x,y,z}do# umount disk device for j in {1..10}do         umount /dev/sd$i$j &>/dev/nulldone # check once devicemount |grep "^/dev/sd$i" &>/dev/nullstat1=`echo $?`     #check this device exitsgrep "sd$i" temp1stat2=`echo $?`#stat1 localhost disk deviceif [ $stat1 -eq 0 ];thenecho -e  "\033[40;33mskip localhost disk device sd$i\033[0m\n\n"else #stat2 check this device physcis diskif [ $stat2 -eq 0 ];thenecho -en "\033[47;30mAre You sure destory data for sd$i [y/n] ?\033[0m   "read  key   echo ""             case $key iny)#add duty into lisstecho "sd$i" &>> diskreadycat temp1 | grep "Disk /dev/sd$i" &>> disklist;;n)echo -e "\033[44;31mgive up destory data of sd$i \033[0m\n\n";;*)echo -e "\n\ninput error ,program exiting\n\n"exit 99;;esacfifi
done# operation disk cat disklist | grep "s" &>/dev/nullif [ $? -eq 0 ] ;then   echo -e "\033[47;31;7m========Make Sure Your Operate Disk List==========\033[0m"cat disklistecho -en "\nAre You Sure Destory This Disk data [y/n] ?   "read listcase $list iny)for o in `cat diskready`doecho "Destorying data $o, Please wating........."dd bs=4096 if=/dev/zero of=/dev/$o# wipe -kq /dev/$odone;;n)echo "Quiting "exit;;*)echo "input error ,Quiting";;esacfi
rm -rf diskready
rm -rf temp1
rm -rf disklist
echo ""
date
read -p "finished ,Do you want to reboot this Computer [y/n] ? " stat3
case $stat3 in
y)
echo "reboot your Computer ,please waiting ....."
reboot
;;
n)
echo "exit"
sleep 1
clear
exit
;;
*)
echo "input error ,quit"
sleep 1
clear
exit
;;
esac

============脚本结束===============================

细心的同学会发现,这个脚本不仅可以使用dd命令来清空磁盘,也可已使用wipe命令来清空磁盘,

wipe命令被我注释了,你想使用的话,你得手动安装一个wipe工具。

至于dd命令与wipe命令,在安全系数与清空速度上的对比,看你怎么妥协速度与安全了。

参考:使用脚本默认的dd 命令,160G 硬盘,每秒70M,

使用wipe命令,需要等待大约两天吧

dd命令相比wipe来说,算快多了。

至于速度上为什么会有这么大差别,大家自己去个google一下。

转载于:https://blog.51cto.com/990487026/1686323

dd wipe 命令磁盘清空shell脚本,笔记本台机MAC通用相关推荐

  1. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter17-ChapterB )

    十七.创建函数 bash shell 提供了用户自定义函数功能,可以将 shell 脚本代码放入函数中封装起来. 函数是一个脚本代码块,你可以为其命名并在脚本中的任何位置重用它.每当需要在脚本中使用该 ...

  2. linux 命令行与shell脚本编程大全

    linux 命令行与shell脚本编程大全 第一章 Linux LiveCD就是从cd读取的系统,由于没法将数据写入到cd,所以一旦重启,之前操作过后的一切数据都会丢失. 第二章 第三章 1.man手 ...

  3. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter1-Chapter16 )

    一.初识 Linux shell Linux 系统可划分为以下 4 部分. Linux 内核 GNU 工具 图形化桌面环境 应用软件 内核主要负责以下 4 种功能. 系统内存管理 内核通过硬盘上称为交 ...

  4. 【2018深信服 醒狮计划】《Linux命令行与Shell脚本编程大全》学习笔记

    2018深信服"醒狮计划"笔记 第3周(5.02-5.13) 课程 必修 选修 基本要求 Shell编程 <Linux命令行与Shell脚本编程大全> <Perl ...

  5. Linux命令行与shell脚本编程大全:第2版

    <Linux命令行与shell脚本编程大全:第2版> 基本信息 作者: (美)布卢姆(Blum,R.) 布雷斯纳汉(Bresnahan.C.) [作译者介绍] 译者: 武海峰 丛书名: 图 ...

  6. Linux_《Linux命令行与shell脚本编程大全》第十章学习总结

    时间:2017年08月24日星期四 说明:本文部分内容均摘取自书籍<Linux命令行与shell脚本编程大全>,版权归原作者所有.<Linux命令行与shell脚本编程大全>( ...

  7. 《Linux命令行与Shell脚本编程大全第2版.布卢姆》pdf

    下载地址:网盘下载 内容简介  · · · · · · 本书是一本关于Linux 命令行与shell 脚本编程的全面教程.全书分为四部分:第一部分介绍Linuxshell 命令行:第二部分介绍shel ...

  8. 《linux命令行与shell脚本编程大全》第三版 - 核心笔记(3/4):函数与图形化脚本

    <linux命令行与shell脚本编程大全> 全书4部分: ☆ [1]linux命令行(1-10章) ☆ [2]shell脚本编程基础(11-16章) ☆ [3]高级shell脚本编程(1 ...

  9. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-Chapter16-脚本控制

    十六.脚本控制 Linux 利用信号与系统中的进程进行通信. 重温 Linux 信号 Linux 系统和应用程序可以产生超过 30 个信号.在 shell 脚本编程时会遇到的最常见的 Linux 系统 ...

最新文章

  1. lua中的魔法字符转义问题
  2. java中间件_Java技术分享:一致性更强的分布式数据库中间件
  3. Reactor设计模式
  4. Redis中7种集合类型应用场景
  5. PDG转PDF的方法
  6. Insql 1.8.2 发布,轻量级 .NET ORM 类库
  7. 谈谈有什么方法可以快捷实现多场景下的线程安全
  8. Mysql学习总结(53)——使用MySql开发的Java开发者规范
  9. 基于LDAP的WebLogic虚拟化统一用户权限管理
  10. 25_android下文件访问的权限
  11. linux信号(二)--unix环境高级编程读书笔记
  12. js如何判断一个数组中是否有重复的值
  13. AWTK-MVVM 在 STM32H743 上的移植笔记
  14. threejs 制作产品3d展示页面
  15. 【GoCN酷Go推荐】ip2location 解析 IP 地址库
  16. 微信小程序--红色星球
  17. 家长必备技能!教您限制孩子手机上的娱乐功能APP!
  18. 最近今日头条上真的是「哀鸿遍野」啊
  19. php怎么定义字符串变量的值,php字符串变量怎么替换
  20. Feature Scaling 的意义

热门文章

  1. JavaScript复习笔记(3)——数据类型(null、undefined、NaN)与深度克隆
  2. IList,ICollection,IEnumerable,IEnumerator,IQueryable
  3. 在线文本按列截取工具
  4. java activity_Activity详解
  5. 美国Vitamix亮相2017上海AWE,绽放百年料理机品牌魅力
  6. JDBC连接错误:通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。。。
  7. QImage对一般图像的处理
  8. IDEA下Maven多模块项目介绍和搭建
  9. ASP.NET底层的初步认识与理解
  10. 剑指 Offer II 110. 所有路径