Linux 移动设备管理

  • Linux 移动设备管理已关闭评论
  • 146 次浏览
  • A+
所属分类:linux技术
摘要

U盘的使用和硬盘的使用很相似挂载意味着外来的文件系统看起来就是主目录树的一部分。所以移动介质也需要挂载,通常挂载到/media或/mnt下面。
访问前,介质必须被挂载
摘除时,介质必须被卸载

U盘的使用和硬盘的使用很相似

移动介质:

挂载意味着外来的文件系统看起来就是主目录树的一部分。所以移动介质也需要挂载,通常挂载到/media或/mnt下面。
访问前,介质必须被挂载
摘除时,介质必须被卸载

创建ISO文件:

方法一:cp /dev/cdrom /root/centos.iso  方法二:mkisofs  -r  -o /root/etc.iso /etc  #来自于genisoimage包 

刻录光盘:

wodim -v -eject centos.iso 

将ISO制作为U盘工具Rufus:

官网: http://rufus.ie/ 作用:制作U盘系统启动盘和格式化 USB。可以快速把 ISO 格式的系统镜像文件快速制作成可引导的USB启动安装盘,支持 Windows或Linux启动 

USB介质

查看USB设备是否识别

lsusb  #来自于usbuntils包 ## usb设备会被内核探测为SCSI设备,例如/dev/sdaX、/dev/sdbX或类似的设备文件 使用lsblk可以看到 ## 在图形环境中自动挂载在/run/media// 

范例:插入U盘后可以看到日志信息

tail /var/log/messages -f  #插上u盘以后就会看到日志信息 

范例:格式化U盘为 FAT32 文件系统

#使用dosfstools这个工具 mkfs.vfat /dev/sdd1(u盘) #vfat就是windows的fat32 vfat这种文件系统不支持权限,也不对大小写敏感(对大小写是否敏感看文件系统是否支持)。 

范例:查看USB设备

#usbutils这个工具包 lsusb命令 

磁盘管理常见的工具

df: disk free。查看文件系统的情况(挂载状态的,没挂载它看不见)

df看到的文件系统中真实占用的空间大小,而非表面上的空间大小。

文件系统本身就有元数据,所以即使是刚创建的干净文件系统,也会占用一定的空间

选项:

-h:自动使用合适的单位进行数据的显示
-T:显示文件系统的类型
也可以使用lsblk -f 查看块设备的文件系统类型。

du:disk usage。查看文件夹的情况

会把目录文件下面的每一个子文件大小都列出来。默认以k为单位。

选项:

-h:自动使用合适的单位进行显示
-s:求和,查看目录的总大小

df 和 du 区别

du看到的是这个目录下文件的大小。 df看到的是文件系统空间的使用情况(处于挂载状态下的) 
#什么时候df >du 什么时候df < du 默认df >du,当某个目录文件挂载到其他设备了的时候(多个设备空间的组合),df < du 删除文件,不是释放空间的时候(有进程再使用这个文件,删除了这个文件不会马上释放空间)df>du 

dd 命令:convert and copy a file

格式: dd if=/PATH/FROM/SRC of=/PATH/TO/DEST  bs=# count=# 

选项:

- if=file #从所命名文件读取而不是从标准输入  - of=file #写到所命名的文件而不是到标准输出  - bs=size block size, #指定块大小(既是是ibs也是obs)  - skip=blocks   #从开头忽略blocks个ibs大小的块(跳过的是源文件 if=xx,单位由bs的单位决定)  - seek=blocks   #从开头忽略blocks个obs大小的块(跳过的是目标文件of=xx,单位由bs的单位决定)  - count=n       # 复制n个bs  - conv=conversion[,conversion...] 用指定的参数转换文件   notrunc 表示不截短输出文件 

范例:

[root@centos8 ~]#cat f1.txt; abcdef [root@centos8 ~]#cat f2.txt  123456789 [root@centos8 ~]#dd if=f1.txt of=f2.txt bs=1 count=2 skip=3 seek=4 [root@centos8 ~]#cat f2.txt 1234de #后面的被截断了  #不截断 [root@centos8 ~]#dd if=f1.txt of=f2.txt bs=1 count=2 skip=3 seek=4 conv=notrunc [root@centos8 ~]#cat f2.txt  1234de789 

dd命令使用范例:

#备份MBR dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1 #破坏MBR中的bootloader dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446 #bs默认是byte,所以seek跳过446字节  #有一个大与2K的二进制文件fileA。现在想从第64个字节位置开始读取,需要读取的大小是128Byts。又有 fileB, 想把上面读取到的128Bytes写到第32个字节开始的位置,替换128Bytes,实现如下 dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc  #将本地的/dev/sdx整盘备份到/dev/sdy  dd if=/dev/sdx of=/dev/sdy  #将/dev/sdx全盘数据备份到指定路径的image文件 dd if=/dev/sdx of=/path/to/image  #备份/dev/sdx全盘数据,并利用gzip压缩,保存到指定路径 dd if=/dev/sdx | gzip >/path/to/image.gz  #将备份文件恢复到指定盘 dd if=/path/to/image of=/dev/sdx  #将压缩的备份文件恢复到指定盘 gzip -dc /path/to/image.gz | dd of=/dev/sdx  #将内存里的数据拷贝到root目录下的mem.bin文件 dd if=/dev/mem of=/root/mem.bin bs=1024  #拷贝光盘数据到root文件夹下,并保存为cdrom.iso文件 dd if=/dev/cdrom of=/root/cdrom.iso   #销毁磁盘数据 dd if=/dev/urandom of=/dev/sda1  #通过比较dd指令输出中命令的执行时间,即可确定系统最佳的block size大小 dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000 dd if=/dev/zero of=/root/1Gb.file bs=2048 count=500000   dd if=/dev/zero of=/root/1Gb.file bs=4096 count=250000  #测试硬盘写速度 dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000  #测试硬盘读速度 dd if=/root/1Gb.file bs=64k | dd of=/dev/null