没有合适的资源?快使用搜索试试~ 我知道了~
首页Linux学习笔记详解:命令行基础与后台操作
Linux学习笔记详解:命令行基础与后台操作
需积分: 5 0 下载量 73 浏览量
更新于2024-07-17
1
收藏 565KB PDF 举报
"《Linux学习笔记》是一份全面而详细的文档,专为理解和掌握Linux系统而设计。它首先涵盖了Linux命令行的基本知识,强调了Unix风格和GNU风格的命令选项,如`-`和`--`的区别,以及它们在命令语法中的作用。命令行中,虽然一次只能输入一个命令,但通过使用分号`;`或括号`()`进行多命令的输入和组合,shell的功能得以增强。后台进程是Linux中提高效率的重要手段,通过在命令后添加`&`,用户可以创建并管理非阻塞的任务,使用`fg`和`ps`等工具可以控制和查看进程状态,而`kill`命令则用于终止任务。 文档进一步讲解了标准输入、输出和错误输出的概念,这是Linux编程和交互的核心概念。标准输入`stdin`(0号文件描述符)用于接收用户输入,标准输出`stdout`(1号文件描述符)显示命令执行结果,标准错误输出`stderr`(2号文件描述符)则用于报告错误信息。这些输出方式直接影响了终端用户的体验和程序的调试。 在特定的部分,如Ubuntu学习笔记,可能包含了针对这个流行的Linux发行版的特性和最佳实践,如安装、配置、管理和维护Ubuntu系统。这可能包括对包管理器`apt`的深入理解,图形界面的使用,以及如何处理常见的系统问题。 《Linux学习笔记》是一本适合初学者和进阶用户的指南,无论是基础操作技巧,还是高级概念和实践,都能帮助读者建立起扎实的Linux技能体系。"
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/11289270/bg8.jpg)
Linux 学习笔记
1.文件系统的层次结构
在 linux 中,信息的基本的组织单位称为文件。Linux 文件系统采用统一的逻辑的方法组织,存储,访问,操
作,和管理信息,把文件组织在一个层次目录结构的文件系统中,每个目录包含一组相关的文件的组合。Linux 系
统的一个重要的特性石提供了一种通用的文件处理的方式,简化了物理设备的访问,按文件方法处理物理设备。例
如,在打印机上打印文件和在终端上显示文件的处理方式是类似的。
1.1 树形的层次结构
理论上而言,文件系统是一种逻辑组织结构。从用户的角度看,Linux 的文件系统只是一个树形层次组织结构
的目录文件树,文件系统的根目录 root。根目录相当于整个目录数的根。实例如图
子目录是整个目录文件树层次组织结构中的一个中间节点,是比当前目录层次更低一级的目录。文件是整个
目录树中的一个字节点。
文件系统中,若干个文件可以组成一个目录,而若干个不同的目录则可以构成一个目录的层次组织结构,而
位于目录层次的结构的顶端的就是成为一个根目录的特殊目录。根目录包含了各种系统目录和文件。
操作系统中,文件的设计目的就是把文件有序的组织在一起。Linux 提供了一种便于从逻辑撒谎功能组织文件
的文件系统。Linux 鼓励用户按一定的原则建立目录,源程序的目录,存储目标程序的目录以及存储文档的目录。
文件系统的关键思想是其层次结构,无论系统中拥有多少个用户,每个用户都可以创建若干个目录层次以及子目录。
文件访问权限是多用户计算机文件系统的一个重要的组成部分,用于保护用户数据安全。
Linux 系统的一个重要的特性是,所有的 I/O 设备都与特殊文件联系在一起。用户可以向操作普通文件一样,
操作特殊的文件,即可达访问 I/O 设备的目的。利用特殊文件,实现了用户与硬件设备的之间的通信,使用文件系
统管理硬件设备的 I/O 处理。
1.2 路径名
当前工作目录中的所有文件都是可以直接存储的。但是如果要访问并非当前的文件,需要在文件名之前加上
各级路径才能访问。文件访问的路径有两种:一个从当前的目录开始(相对路径),一个是从根目录开始(绝对路径)。
每个目录中均包含”. “和”..“这两个特殊的目录文件,分别表示当前目录及其父目录。这两个特殊的目录将文
件系统中的各级目录有机联结在一起。
简单的规则;
• 如果路径名以斜线字符开始,则说明路径名石从根目录开始的绝对路径,除此以外,其他的所有的路
径都是相对当前目录的相对的路径名。
• 路径名要不是有斜线字符分隔的一系列名字,要不是单个名字,其中最后一个名字就是实际的文件。
![](https://csdnimg.cn/release/download_crawler_static/11289270/bg9.jpg)
Linux 学习笔记
其他的名字均是目录。文件可以任意类型的文件。
• 在任何一个目录中,“..“可以向上攀升文件系统的目录层次。在路径名中,除了”..“其他所有的名字均
是降低目录层次。
2.文件系统的组织
Linux 文件系统中,目录和文件的组织结构是有一定规律可循的,这种结构有助于用户访问,管理和维护
Linux 系统。
/bin 系统,系统管理员,和不同用户常用的一些命令
/boot 引导程序,Linux 内核程序文件,磁盘内存映像 initrd 以及 GRUB
/dev Linux 系统,任何一个设备对应一个或者多个特殊文件(或者称为设备文件),这个目录下包含了
系统支持的所有的设备文件。
/etc 整个系统 Linux 的核心,其中包含所用系统管理和维护方面的配置文件,例如各种***.conf。
此外,还有大量的配置文件分别位于单独的子目录中,通常注意备份这个目录中的重要的配置
文件以便在需要的时候恢复系统
/lib 该目录含有系统引导过程,以及运行系统命令所需要的内核模块和各种动态链接库(*.so 文件),
其中内核模块(驱动程序)位于/lib/modules/kernel-version 子目录
/lost+found 存放检测和修复损坏的文件,关联的命令有 fsck,debugs
/media 移动存储介质的安装点。一般的 GNOME 界面的安装移动存储介质时,都会自动安装在这个目
录下
/opt 应用程序软件安装的目录
/proc 进程文件系统 proc 的根目录,其中的部分文件分别对应当前正在运行的进程,可用于访问当前
进程的地址空间。/proc 是一个特殊的虚拟文件系统,其中不包含实际的文件,而是一些当前运
行系统的系统信息,如 CPU,内存,运行时间,软件配置以及硬件配置等。读取和修
改/proc/sys 目录中的适当的文件,可以显示和改变运行系统的可调参数,相当与执行的 sysctl
命令。/proc 目录中的绝大多数文件大小为 0,以数字命令的文件实际代表一个进程 ID,这些大
小为 0 的文件爱你实际相当于指向内核空间数据的指针,可以用来查询相应的进程信息。因此
可以将/proc 文件系统看作系统内核的一个信息控制中心
/root 超级用户 root 的主目录('/'是整个系统的根目录,不是非超级用户的主目录)
/sbin 其中包含与系统引导,管理和维护,以及与硬件配置等方面有关的命令或脚本文件,如
fdisk,init 和 ifconfig。主要供超级用户使用,普通用户通常无法使用
/srv 用于存储本地系统提供的服务所用的数据文件(现为空目录)
/sys 系统各种设备配置信息的根目录。
/temp 临时文件目录,用于存储系统运行过程中生成的临时文件,可以供用户存储自己的临时的文件。
系统运行的时候,许多程序均使用这个目录存放临时数据文件,其中许多文件对于当前运行的
进程是非常的重要的,删除这个文件会导致系统瘫痪,因此不要随便删除这个目录下的文件。
/usr 可以作为一个单独的文件系统,也可作为根目录下的一个子目录有这样的一些重要的子目录:
bin-各种命令程序,include-各种 C 语言的头文件。lib-共享库函数,sbin-系统引导完成后的
管理员常使用的命令,share-公文中文档,src-系统内核的源代码和文档等。
/var 用于存储各种可变长的数据文件(例如日志等),暂存文件或待处理的文件。核心的子目录:
cache:APT 和 samba 等程序使用的工作目录。lib-软件包特定的动态链接库,配置文件,数
据文件和状态信息,log:系统守护进程日志文件存放的目录 ,mail:存放用户电子邮件邮箱文件,
run:系统运行信息的的根目录,其中各种.pid 文件存放的是进程号。tmp:各种临时文件
3.文件类型
逻辑上,文件是由系列连续的字节流组成,最后一个 EOF 字符结束;物理上,文件是磁盘或者其他的存储介
质上的一系列的数据块组成。组成文件的数据不一定的是连续的。
Linux 可以支持不同类型的文件系统,以及不同类型的文件。这里描述,Linux 中的基本文件(驻留磁盘,用
户交互)。文件是数据组织的基本单位,所有的输入输出操作都是通过文件实现的,系统处理任何设备和数据均可
归结为对文件的操作。理论上讲,能够读写普通文件的程序都可以读写任何 I/O 设备。
从用途上来说,一个文件可以是如下这几种类型:
![](https://csdnimg.cn/release/download_crawler_static/11289270/bga.jpg)
Linux 学习笔记
• 文档--普通的文本文件,包括脚本,程序源代码,配置数据和日志
• 命令-- 大多数的命令都是可执行的二进制的文件。
• 目录--包含文件命令列表的数据文件
• 设备—包括终端,打印机,磁盘和磁带机
Linux 中流行的 Ext2/Ext3 文件系统,通常支持普通文件,目录文件,特殊文件,链接文件和符号链接文件
以及管道文件,套接字文件。
3.1 普通文件
定义:命名的数据集合,一组信息的基本的存储的单位。Ext2/Ext3 文件系统中,文件的命名的字符可达到
255 个字符。
普通文件可以存储任何的数据,ASCII 文本,源代码,Shell 脚本,配置数据以及各种文档,可以是二进制程
序代码。普通文件自爱 Linux 系统中应用的最多。Linux 系统中文件没有记录,结构以及内容之分,所有的文件都
是由一维字符流组成,并存储在磁盘等存储设备中。Linux 不刻意区分文件的类型,不以扩展命令来区分文件的类
型。Linux 文件系统没有对文件的命名强加任何的约定,但是有一些约定俗称的东西。为了便于维护,Linux 也定
义了若干标准的数据文件格式,二进制文件必须采用 a.out 文件格式等.
要确定文件的内容,判断文件的类型时,可以考虑使用 file 和 ls 命令。从用户的角度来看,普通文件可以分为
两种类型:文本文件(只包含可打印的字符)和二进制数据文件(每个字符允许有 256 种数值)。文件系统中提供如下
操作:open,create,read,write。
对于文本文件而言,可以使用 cat 命令。对于二进制文件来说,其中内容无法直接显示,可以使用 od 命令以
ACSII 字符,八进制或者 16 进制数据等形式显示(敲入命令后发现,其实不太好阅读,文件太大了)。
3.2 目录文件
目录文件简称目录(directory),是一种特殊的文件,其存储的内容是一系列的文件名及其信息节点号。除了
存储的内容不同目录文件和普通文件在文件系统中存储方式是一样的。目录用于提供文件名,信息节点与文件数据
之间的关联的关系。目录的结构决定了文件系统的组织结构。
目录文件是由一系列的目录项组成的,而每个目录项有主要是由两个不同字段组成,一个字段是信息的节点,
用于引用信息节点,另一个字段是文件名。每个目录项他欧冠难过信息节点实现了文件名和文件数据的映射。
Linux 文件系统中包含两个特殊的目录,'.'和'..'表示当前的目录及其目录。这里普通用户只能读取目录文件,而
OS 才能写目录文件。root 用户可以里利用文件系统调试器 debugfs 等实用程序来维护文件系统。目录文件始终
是由操作系统负责维护的。操作提供不允许用户修改目录文件,但是可以创建文件。
任何目录中,可以创建普通文件,管道文件,特殊文件,符号链接文件。
Linux 中每个用户都有一个属于自己的主目录。一旦注册到 Linux 系统,系统会自动的将用户引导到自己的
主目录中。用户可以在主目录中做所有允许做的事情。系统访问期间,用户所在的目录称为当前目录,工作目录或
者当前工作目录。Pwd 命令输出表示用户当前工作的目录。
尽管用户不能直接写目录文件,但是任何用户进程均可利用相关的目录操作的系统调用访问目录,自由的读
取目录文件,只要具有相应的权限。
3.3 特殊文件
特殊文件是 Linux 系统中最具特色的特征之一。特殊文件也称为设备文件,用作为用户和 I/O 设备的之间的接
口,使得用户可以像处理普通文件一样,通过打开,读写特殊文件等操作,实现访问外部设备的 I/O 处理需求。
特殊文件不包含任何数据(仅仅包含一个目录项和一个信息节点),仅仅是提供一种机制,在文件系统中建立一
个物理设备和文件名之间的映射。系统支持的每一个设备,包括内存,都与至少一个特殊文件相关连。特殊文件是
利用下列 mknod 命令或者系统调用创建的,而且必须提供相应的驱动程序,并集成到系统内核中。
mknod special type [major minor]
major 为主设备号,表示按设备类型组织的设备驱动程序指针数组的索引。minor 为次设备号,表示同类设
备中某个设备的子设备,可以用作调用相应驱动程序的参数。special 为特殊文件名,type 表示特殊文件的类型。
c 表示字符特殊设备文件,b 表示块特殊文件,p 表示管道文件。
当提交一个读写特殊设备文件的请求时,系统会直接调用相应的设备驱动程序,设备驱动程序负责在控制进
程和相关物理设备之间的传输数据。设备文件提供一个访问设备驱动程序的访问点。系统中的设备要不是块设备,
要不是字符设备。
1.块特殊文件:与采用数据块组织结构和处理方式的设备(如磁盘)相关连。数据块组织结构的设备实际上是指
能以固定长度的数据块传输数据,也能随机访问任何数据快的存储设备,且随机访问时间相似。
Linux'系统中,典型的数据块是由 512,1024 或者 4096 个字符组成的。因为文件系统通常是驻留在块设备
中,故许多文件系统的维护命令均要求使用块特殊文件作为参数。
通过块特殊文件接口传输数据时,系统通常会在其内存(或者高速缓冲区)中缓存数据。在指定的时间间隔内。
系统会将数据写入到外部存储设备,从而更新存储设备中的数据。在交互访问的或者应用程序中,用户可以利用
sync 命令和 fsync()系统调用,强制把内存中的数据写入到存储设备中,实现存储设备与内存之间的数据同步。
使用这种方法设计的一个问题是,如果内存和存储设备之间数据没有同步之前,系统崩溃了,数据完整性就
剩余45页未读,继续阅读
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/219b3202a000488aa8501b5eea75b567_q419061115.jpg!1)
calorie卡卡
- 粉丝: 7
- 资源: 4
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Vue实现iOS原生Picker组件:详细解析与实现思路
- Arduino蓝牙小车:参数调试与功能控制
- 百度Java面试精华:200页精选资源涵盖核心知识点
- Swift使用CoreData填坑指南:CoreData在Swift 3.0的变化
- 微距离无线充电器创新设计及其实验探索
- MTK Android平台开发全攻略:44步详解流程
- RecyclerView全面解析:替代ListView的新选择
- Android开发:自动适配中英文键盘解决方案
- Android调用WebService接口教程
- Android开发:BitmapUtil图片处理全解析与实例
- Android多线程断点续传实现详解
- PCA算法在人脸识别会议签到系统中的应用
- EventBus 3.0:Android事件总线详解与实战应用
- Android FileUtil:全面解析文件操作实用技巧与实例
- RecyclerView添加头部和尾部实战教程
- Android实现微博滑动固定顶部栏实战与优化
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)