1)Linux识别磁盘:Linux通过不同的设备节点区分各个分区,节点名字的由磁盘名加分区号组成。例如,驱动器/dev/hba上的第一个分区叫做/dev/hba1,驱动器/dev/sdc上的第七个分区就叫做/dev/sdc7。

  主引导记录(MBR) 引导程序(Bootloader)分区表(Partition Table)

  主分区

  扩展分区

  逻辑分区

  

  

  2)使用fdisk列出分区:

  fdisk最简单的用处是显示已知分区。使用-l命令行选项,

  fdisk可以列出所有已知磁盘的分区表。在下面的例子中,

  fdisk -l 产生系统上两个硬盘的分区表:/dev/hda和/dev/hdb。

  

  

  

  注:使用fdisk编辑分区表时应注意是使用分区名而不是磁盘名。如fdisk /dev/sdb,不应是fdisk /dev/sdb3

  3)fdisk命令列表

  

  

  4)添加一个分区:

  Command(m for help):n

  Command action

  e extend

  p primary partition(1-4)

  建立新分区的命令是n,下一步取决于驱动器的状态。如果不存在扩展分区(现在就是),fdisk会问新的分区是否是扩展分区。如果扩展分区已经存在,fdisk会问新的分区是逻辑分区还是主分区。如果所有的主分区都已经在使用,fdisk就不会再问。

  Selected partition e

  First cylinder (3927-15505,default 3927):  (按下ENTER键)

  因为三个主分区都已经存在,如果管理员要创建两个新分区,需要先扩展一个分区来装他们。键入e命令。接下来,fdisk提示分区的起始柱面。管理员按回车键,接受建议的默认柱面3927(第一个可用的柱面)。

  然后,fdisk询问结束柱面的号码。

  Using default value 3927

  Last cylinder or + size G or +size M+size K(3927-15505,default15505):

  

  因为扩展分区是主分区,它将是磁盘上的第四个(也是最后一个)主分区,因此所有不包括在这个扩展分区中的空间都不能再使用,所以应该使用建议的柱面(也是磁盘上最后的柱面)。

  

   5)扩展分区:

  

  

  

  6)设置交换分区标签:

  Changed system type of partition 5 to 82(Linux swap)

  Command(m for help):p

  

  分区id,以前是“Linux”,现在改为“Linux swap”。

  

  7)删除分区:

Command(m for help):d

   Partition number(1-6):4

  要注意下列几点:

  如果删除扩展分区,这个空间中包含的所有逻辑分区也将被删除。

  因为分区信息做为一个链表维护,所以必须用连续数字编号。如果第7个分区中的第5号被删除,分区6和7就变成5和6。(对于主分区不适用。)

  

  8)退出fdisk

  Command(m for help):w

  

  

  操作结束后,有两种退出fdisk的方法。

  第一,可用q命令退出fdisk,这将忽略所做的修改。fdisk实用程序会等待明确的指示后才将修改写入,所以用户可随时安全退出。

  如果使用w命令,fdisk会将修改写入然后退出。这是一般退出fdisk的方式,完成指定的编辑。

  9)使修改生效:

  退出时,fdisk会告诉用户这些修改直到下次引导时才会生效。这并不是绝对的。重新引导系统可以让这些修改生效,但运行partprobe命令也可以达到同样的效果。运行partprobe,让内核读取所做的修改,并加以更新。

  [root@VDEDU~]# partprobe

  10)使用/proc/partitions 查看分区

  fdisk -l(只有根用户才能使用)的替代命令是proc文件系统文件/proc/partitions,这个文件也能列出所有的已知分区及其容量(以1024字节的块为单位)

  [root@station root]# cat /proc/partitions

  

  注意:输出中的每个分区(磁盘)突出的主号码和次号码。Linux内核使用和分区的设备驱动程序相关的主号码和次号码,而不是设备节点的名称识别分区。这在内核层错误信息中,经常可以看到。

  11)初始化分区:

  [root@VDEDU root]# mkfs.ext2 /dev/sda6

  

  12)挂载文件系统主要概念:    

  使用mount命令将文件系统的根目录挂载在目录树上已有的目录。这个已有的目录叫做挂载的挂载点。umount命令将未被使用的文件系统从目录树上卸载下来。不同的挂载选项决定挂载的文件系统的能力特征。挂载选项remount赋予已存在挂载新的选项。

  [root@VDEDU root]# mount /dev/sda1 /home

  [root@VDEDU root]# umount /home

  

  13)使用fuser或lsof找到进程

  fuser命令列出正在使用文件的进程ID。为了达到我们的目的,调用这个命令时使用-m命令行选项,它会列出在含有指定文件的文件系统中使用文件的所有进程。

  [root@VDEDU home]# fuser -m /home

  /home:1912c

  lsof(list open file,列出打开的文件)是fuser的替换命令。在作为挂载点的目录上执行时,lsof命令列出文件系统中当前打开的所有文件。

  [root@station]# lsof /home

  

  

  14)使用 mount -o remount重新挂载分区

  mount 命令还能赋予已经挂载的分区新的挂载选项。重新挂载分区时, mount 命令应该 和 remount 选项一起调用,连带相关这个文件系统的任何新选项。

  [root@station root]# date > /home/foo

  [root@station root]# mount -o remount,ro /home

  [root@station root]# date > /home/foo

-bash: /home/foo: Read-only file system

  [root@station root]# mount -o remount,rw /home

  [root@station root]# date > /home/foo

  15)/etc/fstab 文件主要概念

  /etc/fstab  文件可以用来预定义挂载点。

  如果在调用 mount 命令时给出的信息不全,它会自动在/ etc/fstab 里寻找缺少的信息。

  mount -a 命令会试图将/etc/fstab 文件中列出的(几乎)所有挂载点挂载。

  /etc/fstab 文件中可用设备名称或文件系统标签表示设备。

  文件系统标签不光可以在/etc/fstab 文件中指定设备,它还可以在 mount 命令行和-L 命令行选项一起直接使用,如下所示。

  [root@station root]# dumpe2fs /dev/hda1 | head -1 dumpe2fs 1.32 (09-Nov-2002)

  Filesystem volume name: /boot

  [root@station root]# mount -L /boot /boot

  

  在/etc/fstab 文件中添加一行。如:[root@VDEDU root]# mount /dev/sda1 /home。以后每次开机将会自动执行。

  mkswap /dev/sda1 将这块分区作为交换空间

  swapon /dev/sda1 激活交换分区

  dd if=/dev/zero of=/tmp/swap bs=1024k 从/dev/zero里面读,写到/tmp/swap

  

  

  

  

Linux文件管理笔记的更多相关文章

  1. Linux学习笔记(二) 文件管理

    了解 Linux 系统基本的文件管理命令可以帮助我们更好的使用 Linux 系统,以下介绍几个常用的文件管理命令 1.pwd pwd 是 Print Working Directory 的简写,用于显 ...

  2. deepin linux学习笔记(四)进不去图形界面怎么办?

    目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息 ...

  3. Linux学习笔记(一) 文件系统

    对于每一个 Linux 学习者来说,了解 Linux 文件系统的结构是十分有必要的 因为在 Linux 中一切皆文件,可以说只有深入了解 Linux 的文件系统,才会对 Linux 有更深刻的理解 L ...

  4. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

  5. Linux学习笔记(五) 账号管理

    1.用户与组账号 用户账号:包括实际人员和逻辑性对象(例如应用程序执行特定工作的账号) 每一个用户账号包含一个唯一的用户 ID 和组 ID 标准用户是系统安装过程中自动创建的用户账号,其中除 root ...

  6. Linux学习笔记(六) 进程管理

    1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...

  7. Linux学习笔记(七) 查询系统

    1.查看命令 (1)man 可以使用 man 命令名称 命令查看某个命令的详细用法,其显示的内容如下: NAME:命令名称 SYNOPSIS:语法 DESCRIPTION:说明 OPTIONS:选项 ...

  8. Linux内核笔记--内存管理之用户态进程内存分配

    内核版本:linux-2.6.11 Linux在加载一个可执行程序的时候做了种种复杂的工作,内存分配是其中非常重要的一环,作为一个linux程序员必然会想要知道这个过程到底是怎么样的,内核源码会告诉你 ...

  9. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

随机推荐

  1. python利用文件对话框获取文件路径

    一.单文件 python3: import tkinter as tk from tkinter import filedialog root = tk.Tk() root.withdraw() fi ...

  2. linux环境安装mysql,以及mysql基本的终端操作命令

    linux环境下安装mysql服务器.客户端mysql简单的终端操作指令(使用数据库.简单的增删改查和备份恢复)1 SQL: Structured Query Language 结构化查询语言. 运用 ...

  3. Android 6.0 以后webview不加载图片的问题

    /** * Webview在安卓5.0之前默认允许其加载混合网络协议内容 * 在安卓5.0之后,默认不允许加载http与https混合内容,需要设置webview允许其加载混合网络协议内容 */if ...

  4. ShellCode瘦身的艺术0_HASH

    写在前面的话: 前面几篇文章,我们介绍了如何获取kernerl32.dll导出函数地址的方法: 并在此基础上,编写了ShellCode,实现了动态加载DLL以及解析API地址: 但是,似乎还称不上Pe ...

  5. python 迭代器 生成器

    迭代器 生成器 一 什么是迭代器协议 1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就引起一个StopIteration异常,以终止迭代 (只能往后走不能往前 ...

  6. Text-文本检查

    #检查文本 from tkinter import * import hashlib master=Tk() text = Text(master,width=30,height=5) text.pa ...

  7. 学习React系列(七)——Fragments、Portals、Error Boundaries与WEB组件

    React.Fragment portals Error Boundaries WEB组件 React.Fragment 想象一个场景,想把td包装为组件添加到table中去,代码如下: class ...

  8. java.sql.SQLException: null, message from server: "Host '192.168.126.100' is not allowed to connect to this MySQL server"

  9. HTTP响应状态解析

    100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应.服务器必须在请求完成后向客 ...

  10. XMLHTTPRequestObject获取服务器数据

    http://www.educity.cn/develop/526316.html 在Web客户端使用xmlhttp对象,可以十分方便的和服务器交换数据,我们可以获取和发送任何类型的数据,甚至二进制数 ...