设备定位的方法有:

  设备名称, 如:/dev/sda1, 随着linux内核加载模块顺序在每次启动的时候可能会不同, 在插拔U盘/移动硬盘的时候, 设备分配到的名称可能不同,这样fs映射就会失败

  因此使用uuid是比较好的方法:

  uuid:

  -- 使用命令: ls -a --color=never /dev/disk/by-uuid :

    /dev/disk/下面有多种方式查看设备:by-id, by-label, by-path, by-uuid. 它们其实都是些软链接文件, 所以要用ll, ls -a.

  -- lsblk : lsblock: 查看块设备的树形图

  -- blkid :这个就是真的查看block设备的id了

  -- 对于U盘, 既可以用uuid来标识定位设备, 也可以用label..

fuser? 命令

fuser=file/filesystem/sockets  is used by which user?

fuser的使用场景: 一般是在umount某个挂载点时,出现:resource busy的情况的时候

  fuser -k -m -u :  -k 杀死所有使用这个file/filesystem的进程, -m指明这个路径是一个mount挂载点, -u给出正在使用的用户名称信息

改变文件系统的大小 != 改变分区的大小

改变文件系统的大小: resize2fs -f -p /dev/sda5  6G , 而改变分区的大小要用 fdisk ... (fdisk可以删除一个分区, 新建一个分区,  改变分区的大小)

但是有些比较老的内核可能不支持on-line在线shrink/expand分区的大小, 需要把分区先卸载.

这时就要用fusr -k... 命令.

在改变分区之前, 可能要求先对文件系统做一个check:   e2fsck -f /dev/sda2

e2fsck:  对文件系统进行检查, -f: 强制检查, -p: 自动修复..

注意: 即使对/sda 做了VolGroup的分区, 也可以对卷组中的分区进行操作, 如:

  resize2fs -p /dev/mapper/VolGroup_lv-root , lv-swap  , lv-home.

通常, 如果采用默认的linux安装分区时, 它划分成两个分区, 一个是/dev/sda1 ->boot 引导分区,  一个是/dev/sda2: 是一个扩展分区. 这个分区被VolGroup分成三个"disk" 块设备.

  /dev/mapper/VolGroup-lv_root  --> dm0

  /dev/mapper/VolGroup-lv_swap --> dm1

  /dev/mapper/VolGroup-lv_home --> dm2

--------------- 一般: 一个磁柱的大小是: 8228258 bytes,  所以150~160GB的硬盘的磁柱总数大约是: 2w万个, 所以 500GB的硬盘大约是6万个

字符设备: 只能一个字符一个字符(一个字节)按先后次序的读取的设备, 如键盘/鼠标/串口等

块设备:  可以任意的在设备上读取大块内容的设备, 如硬盘, U盘 .

linux通过设备文件, 加载设备驱动来使用设备...

--------------- --------------------------

要注意区别"文件系统"和设备: 文件系统是抽象的, 如: /etc,... 设备才是具体的介质. 而设备要

挂载到文件系统, 我们才能读写.

linux既可以管理设备(硬件介质),   也可以管理 文件系统...

 "分区" 是属于"设备" 硬件的概念! 创建/删除/调整分区是对硬盘进行管理.

e2label   /dev/sda7  "/new" 注意卷标的格式是: /label...

fstab中:

  label=/new  /new  ext4  defaults  0 0

---------------------------------------------------------

fstab中如何自动挂载iso文件?

1. 如果光盘被自动挂接, 在访问/mnt/cdrom1, cdrom2的时候, 会看到文件夹上面的锁形

  图标, 表示光盘被挂接为ro

2. 指定iso的位置时, 可以使用 设备名 + label +uuid, 一般是用第一种和第三种, 第二种好像不好使, 这里iso指定时,  直接用设备名: 即路径即可:

vi  /etc/fstab....

......

/root/Downloads/CentOS-6.3-i386-bin-DVD1.iso  /mnt/cd1  iso9660  defaults,ro,loop   0  0

/root/Downloads/CentOS-6.3-i386-bin-DVD2.iso  /mnt/cd2  iso9660  defaults,ro,loop   0  0

----------------------------------------------

mount -a : mount all stuff from /etc/fstab :  加载所有的stuff块/内容/项目/东东 从 /etc/fstab

df -t -T -h:  -h: human, -t : type : 只显示指定类型的磁盘使用情况... 如: df -t iso9660就只会显示光盘的使用情况     -T: print filesystem type. === --print-type: 打印

出文件系统的类型

diff:

比较两个文本文件的逐行不同, 也可以比较目录: 列出二进制文件, 和只有一边有的文件, 比较两边都有的文件

diff  选项:  -y = --side-by-side: 并排显示, -W(注意是大写的W) 50指定宽度.  -c: 指定文件信息:

< 表示第一个文件的才有的行, > ... ----- 表示共同的行. c: changed,  | 或! 页表示changed ,

可以用diffstat来统计两个文件的比较结果, 其中: +++ 表示增加, -- 表示删除: deletion.

mkisofs:

光盘格式基本的是iso9660, 但是有些规定的限制, 所以,不同操作系统商对它进行了一些扩展:

ms支持的扩展是: Joliet: [主力特] ,  unix/linux的扩展是 unix Rock Ridge.  前者使用选项: -J  , 后者使用选项: -r.如果不用-r || -J 可能会使扩展名全部为大写的CON

要做 Unix/Linux 下的数据盘或者开机启动盘,必须使用 Unix Rock Ridge 格式(mkisofs -r), 这种格式可以保存文件相关的权限
要所DOS/WIN下的光盘,用Joliet格式(-J)

mkisofs ==是 genisoimage 的alternatives命令?

mkisofs  -o: 镜像文件的名字, 必须的, -v显示详细信息, -b: 指定镜像文件, -e: efi-boot指定镜像文件, ...

  

  

fstab中使用设备的uuid的更多相关文章

  1. Linux系统攻略 用UUID在Fstab中挂载分区

    Fstab 文件大家都很熟悉,Linux 在启动的时候通过 fstab 中的信息挂载各个分区,一个典型的分区条目就像这样: /dev/sdb5 /mnt/usb vfat utf8,umask=0 0 ...

  2. Linux 通过 UUID 在 fstab 中自动挂载分区

    Linux 通过 UUID 在 fstab 中自动挂载分区 summerm6关注 2019.10.17 16:29:00字数 1,542阅读 605 https://xiexianbin.cn/lin ...

  3. 【Linux】fstab中 每个字段代表的含义

      默认情况下,fstab中已经有了当前的分区配置,内容可能类似: # <file system> <mount point> <type> <options ...

  4. Linux在fstab中因配置错误导致服务器主机无法重启的问题应该如何解决

    fstab中配置错误导致系统无法启动的恢复方案 1制造错误的案例发生,在/etc/fstab中配置如下内容 结尾的倒数第一个为1表示进行磁盘检查,为0表示不进行磁盘检查,倒数第二个为0表示不备份,为1 ...

  5. 获取设备的UUID

    很多时候需要获取设备的UUID,比如在蓝牙交互时,需要获取服务和特征的UUID,那么如何获取设备的UUID呢?请见如下代码: // // ViewController.m // 获取UUID // / ...

  6. linux中MTDflash设备驱动大概

    一.主要结构体 1.mtd_info,主要是描述MTD原始设备层中的设备或分区, 2.mtd_part,表示一个分区,用里面的主mtd_info和本分区mtd_info描述分区, 3.mtd_part ...

  7. 向安装包中添加设备 UDID. 蒲公英内测

    向安装包中添加设备 UDID 前言 注:本文适用于只有苹果个人开发者账号.公司开发者账号.或教育开发者账号的 iOS 开发者. 对于没有企业开发者账号(299$)的开发者来说,要想使用蒲公英将自己的应 ...

  8. 使用SetupDI* API列举系统中的设备

    原文链接地址:https://blog.csdn.net/clteng/article/details/801012?utm_source=blogxgwz8 在Windows系统中提供一组有用的函数 ...

  9. 《Advanced Bash-scripting Guide》学习(六):从/etc/fstab中读行

    本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 ABS书上的例子: 代码块和I/O重定向 #!/bin/bash #从/etc/ ...

随机推荐

  1. Oracle创建表和创建序列和修改,增加sql字段

    一.创建表 create table y_parts_classify( pt_id number(10) not null, pt_name varchar2(1000), update_time ...

  2. 关于fastJson的几个问题

    1.将对象中为null的属性也给序列化出来 可以使用SerializaerFeature实现 JSON.toJSONString(gas, SerializerFeature.WriteMapNull ...

  3. 关于gitlab+jenkins自动部署代码的实现

    本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...

  4. Linux——Session复制中的失败的可能原因之一

    组播地址问题 route add -net 224.0.0.0 netmask 240.0.0.0 dev eno16777728(自己的网卡名)

  5. 《python解释器源码剖析》第0章--python的架构与编译python

    本系列是以陈儒先生的<python源码剖析>为学习素材,所记录的学习内容.不同的是陈儒先生的<python源码剖析>所剖析的是python2.5,本系列对应的是python3. ...

  6. deep_learning_Function_tensorflow_transpose()

    tf.transpose()的用法 一.tensorflow官方文档内容 transpose(     a,     perm=None,     name='transpose' ) Defined ...

  7. Arch Linux 安装rust

    Arch Linux 安装rust 0. 参考 Rust Toolchain 反向代理使用帮助 1. 安装 安装rustup和toolchain yaourt -S rustup rustup ins ...

  8. django用户投票系统详解

    投票系统之详解 1.创建项目(mysite)与应用(polls) django-admin.py startproject mysite python manage.py startapp polls ...

  9. linux下创建软链--laravel软链

    ln -s /www/wwwroot/project_name/storage/app/public/ /www/wwwroot/project_name/public/storage

  10. java读取word文档,提取标题和内容

    使用的工具为poi,需要导入的依赖如下 <dependency> <groupId>org.apache.poi</groupId> <artifactId& ...