Unix/Linux - 文件系统基础

你好,有抱负的Unix/Linux爱好者们!欢迎你加入我们探索文件系统迷人世界的旅程。作为一名拥有多年教学经验的向导,我很兴奋能帮助你理解这些概念,即使你完全是个编程新手。让我们开始吧!

Unix / Linux - File System Basics

目录结构

Unix/Linux文件系统组织得像一棵树,根目录(/)位于顶部。这种结构对于高效地组织和访问你的文件至关重要。

下面是一个简化的典型Unix/Linux目录结构视图:

/
├── bin
├── etc
├── home
│   └── user
├── usr
└── var

每个目录都有其特定的用途:

  • /bin:包含必要的系统二进制文件(可执行程序)
  • /etc:存储系统配置文件
  • /home:用户主目录的存放位置
  • /usr:持有用户程序和数据
  • /var:包含像日志和临时文件这样的可变数据

关键目录及其功能

目录 功能
/bin 必要的系统二进制文件
/etc 系统配置文件
/home 用户主目录
/usr 用户程序和数据
/var 可变数据(日志、临时文件)

导航文件系统

现在我们了解了结构,让我们学习如何移动。把它想象成探索一座新城市——你需要知道如何读懂地图并找到你的路!

基本导航命令

  1. pwd(打印工作目录)

    $ pwd
    /home/user

    这个命令告诉你你在文件系统中的位置。就像在地图上检查你的当前位置。

  2. ls(列出)

    $ ls
    Documents  Downloads  Pictures  Music

    这个命令向你展示当前目录中的内容。就像环顾四周看看你附近有什么。

  3. cd(改变目录)

    $ cd Documents
    $ pwd
    /home/user/Documents

    这个命令让你移动到不同的目录。就像在我们的城市比喻中走到一个新的位置。

记住,熟能生巧!尝试这些命令,熟悉在文件系统中移动。

df命令

df命令,全称“disk free”,是你检查磁盘空间使用情况的首选工具。这就像检查你的衣柜里还剩多少空间!

$ df -h
文件系统      大小  已用  可用 使用% 挂载点
/dev/sda1        20G   15G  4.0G  79% /
/dev/sdb1       100G   50G   50G  50% /home

-h选项使输出结果更易于阅读。下面是每列的含义:

  • 文件系统:磁盘分区
  • 大小:分区的总大小
  • 已用:已使用的空间量
  • 可用:可用空间
  • 使用%:已使用空间的百分比
  • 挂载点:文件系统中的挂载点

du命令

虽然df给你一个概述,du(磁盘使用)帮助你更深入地了解。这就像调查你的衣柜里哪些衣服占用了最多的空间。

$ du -sh *
4.0K    Documents
2.0G    Downloads
500M    Pictures
1.5G    Music

-s选项为每个参数提供一个摘要,而-h使其易于阅读。

挂载文件系统

挂载就像把USB驱动器插入你的电脑。它使文件系统可访问和可用。

要挂载一个文件系统:

$ sudo mount /dev/sdb1 /mnt/mydrive

这个命令将设备/dev/sdb1挂载到目录/mnt/mydrive

卸载文件系统

卸载是挂载的反操作。就像安全地弹出USB驱动器。

要卸载一个文件系统:

$ sudo umount /mnt/mydrive

总是在物理移除驱动器之前卸载它,以防止数据丢失!

用户和组配额

配额就像为磁盘空间使用设置预算。它们帮助防止用户使用过多的空间并影响他人。

设置配额:

$ sudo edquota -u username

这会打开一个编辑器,你可以在其中为用户设置限制。

检查配额:

$ quota -v

这会显示当前用户的配额使用情况。

配额命令

命令 功能
edquota 编辑用户配额
quota 显示磁盘使用和限制
repquota 报告文件系统的配额

就是这样!我们已经涵盖了Unix/Linux文件系统的基础。记住,最好的学习方式是实践。所以打开你的终端,开始探索。不要害怕犯错误——这是我们学习的方式!

在我们结束之前,我想起了一个学生曾经说过的,学习文件系统就像学习骑自行车——一开始看起来很吓人,但一旦你掌握了它,你会想知道没有它你之前是如何设法做到的。

继续练习,保持好奇心,快乐地计算!

Credits: Image by storyset