【2】体验Linux系统

1、文件系统

1.1 Linux下,一切皆文件

文件:目录、字符设备、块设备、套接字、进程、线程、管道等都被视为一个文件,文件是用户与操作系统交互采用的主要工具

文件系统是文件存在的物理空间,文件系统不仅包含文件的数据,也含有文件系统的结构,所有Linux用户看到的文件、目录、软链接都存储在文件系统中,常用的Linux文件系统有ext2、ext3、swap、vfat、NFS(网络文件系统)等

1.2 文件系统的目录结构

Linux文件系统采用阶层式的树状目录结构,在该结构中最上层是根目录"/",然后再根目录下再建立其他的目录;Linux中无论操作系统管理几个磁盘分区,这样的目录树只有一个,从结构上讲,各个磁盘分区上的树型目录不一定是并列的

  • bin:系统所需要的最基础的命令,此目录下的命令都是可执行的,普通用户都可以使用的命令
  • boot:包含引导加载程序相关的文件,内核映像文件也常常放在此处
  • etc:存放各个系统配置文件,此目录是我们需要访问一个文件夹、用户账号及密码配置文件、系统初始化文件、安装的各种应用软件及服务的配置文件
  • user:用到的应用程序和文件几乎都在此目录
  • var:用于经常变化的文件,如数据库等,包含系统运行时要改变的数据
  • sbin:系统管理员使用的管理程序
  • tmp:系统的临时文件
  • dev:设备文件及设备驱动程序
  • home:用户工作目录,存放个人配置文件
  • root:超级管理员文件夹
  • lib:根文件系统上的程序所需的共享库
  • mnt:系统管理员临时挂载文件系统的挂载点

1.3 Linux文件类型

普通文件:通常是流式文件,分为三类(纯文本文件、二进制文件、数据文件)
普通文件目录文件:用于表示和管理系统中的全部文件
目录文件链接文件:用于不同目录下文件的共享(类似快捷方式)
链接文件设备文件:包括块设备文件和字符设备文件(集中在dev目录下)
设备文件管道(FIFO)文件:提供进程间通信的一种方式

套接字(socket)文件:该文件类型与网络通信有关
套接字(socket)文件

1.4 磁盘分区与挂载

在磁盘管理中,将一个硬盘分为两大类分区:主分区和扩展分区,主分区能够安装OS,进行计算机启动的分区,这样的分区可以直接格式化,然后安装系统,直接存放文件

Linux每个磁盘都是组成根文件系统的一个部分,采用挂载的处理方式,将一个分区和一个目录联系在一起,先有目录,再将物理地址映射到目录中,在Linux操作系统中,所有路径都是从根目录开始

fdisk -l查看分区情况

fdisk -l查看分区情况
挂载:Linux分区需要挂载在目录后才能使用,挂载的意义就是把磁盘分区的内容放在某个目录下,这个把分区和目录对应的过程叫做挂载(Mount),挂载在文件树中的位置就是挂载点,将物理分区细节屏蔽掉,用户只有统一的逻辑概念,所有的东西都是文件


2、shell使用技巧

Linux中的shell是一个命令解析器,将用户命令解析为OS所能理解的命令,从而实现用户与操作系统的交互,shell是内核的外层保护工具,负责完成用户与内核之间的交互(bash)

自动补齐:输入命令的前几个字母,按下Tab键系统自动补全命令

历史记录:history命令查看所有用户的所有历史操作

2.1 重定向

重定向(输入、输出重定向):数据默认从键盘stdin到程序process(输入方向),从程序process到显示器stout(输出方向),改变了方向就称为重定向,输出重定向是指命令的结果不再输出到显示器上,而是输出到其他地方,一般是输出到文件中进行保存

  • 命令 > 文件 :以覆盖的方式将命令执行的正确结果输出到指定的文件或设备中
  • 命令 >> 文件:以追加的方式…

2.2 编译命令行

控制命令:

控制命令

编辑命令(光标移动):

编辑命令(光标移动)

补全、删除、粘贴

补全、删除、粘贴

2.3 命令的任务调度

任务调度(jobbing)或后台(backgrounding),在命令后面添加一个&可以将当前任务或将命令置于后台,终端就立即解放可以接受新的输入,jobs命令可以查看后台任务情况

2.4 命令执行顺序

控制字符(;、&&、||、&)来控制命令执行方式

  • & :命令后台运行
  • ;:多个命令组合起来,命令之间没有逻辑关系,顺序执行
  • && :依赖前面命令的执行成功
  • || :仅当前面命令执行失败执行后面命令

3、shell环境变量

/etc/profile:系统全局配置文件
~/.bash_profile:用户配置文件,可以修改此文件修改环境变量
~/.bashrc:文件包含专用配置信息,系统每次启动和打开新的shell都会被读取

source:读入环境配置文件的命令
source .bash_porfile 或者 source ~/.bashrc

常用环境变量:PATH、HOME、USER、LOGNAME、UID、SHELL等

3.1 PATH变量

PATH变量定义了系统查找的目录,系统命令执行时系统自动在PATH定义的目录下顺序查找
PATH=$PATH:<PATH 1>:<PATH 2>:------:<PATH N>

  • echo $PATH显示系统变量
  • export修改PATH变量 (临时添加)
  • 修改用户主目录下的.profile或.bashrc文件
  • 修改系统目录下的profile文件
  • 使用env命令显示所有的环境变量
  • 使用set命令显示所有本地定义的shell变量
  • 使用unset命令来清除环境变量
  • 使用readonly命令设置只读变量

4、管理Linux文件

路径定义为绝对路径(由根目录 / 写起)和相对路径(相对于目前工作目录的路径)
四个路径缩写:. .(上一层目录) .(当前目录) ~(home目录) -(上一个工作目录)

  • pwd:查看工作目录
  • cd [目录位置]:切换工作目录
  • ls [选项]:列表(List)显示目录内容
  • mkdir -p [/路径/]目录名:创建新的目录
  • cp [选项]... 源... 目标:将源文件(目录)复制到目标目录
  • mv [选项] 源文件 目标文件/目录:移动(move)文件或目录
  • rm [选项]... [文件]...:删除(Remove)文件或目录
  • touch [选项]... 文件...:新建文件或者更新文件更改时间
  • file [选项]... 文件...:识别文件类型和编码格式
  • ln [选项]... 源.. 目标:硬链接(以文件副本形式存在)、符号链接(软链接,以路径形式存在)
  • which [-a] 文件名:查找Linux命令文件并显示所在的位置上
  • whereis [选项] 文件名:定位/返回与指定名字匹配的二进制文件、源文件和帮助手册文件所在的路径
  • locate [选项] 范本样式:搜索文件系统内是否有指定的所有文件(updatedb更新数据库)
  • find [查找范围] [选项] [搜索的内容]:用于查找文件或目录(不要指定过大的范围)

5、内容管理

  • cat [option]... file...:显示文件的全部内容
  • more [option]... file...:全屏方式分页显示文件内容
  • less [option]... file...:随意浏览文件
  • diff [option]... files...:比较文件的差异
  • patch [option]... originalfile patchfile:用户利用设置修补文件的方式,修改更新原始文件
  • gerp [option] pattern... files...:正则表达式搜索文本

6、用户与权限管理

文件拥有者(owner)、用户组(group)、其他用户(others)
超级用户root、系统用户、普通用户

6.1 用户和用户组管理

(1)用户账号文件 - passwd

用户账号文件用户账号名称 - 密码占位符“x” - 用户UID(0为root用户,1~999为系统用户) - 组账号的GID - 用户全名 - 用户home目录 - 默认shell

(2)用户密码信息 - shadow

用户密码信息用户账号名称 - 加密密码信息 - 上次修改密码时间 - 密码最长有效天数 - 密码最短有效天数

(3)用户组配置文件 - group

用户组配置文件组名 - 密码 - GID - 组中的用户

  • useradd [option] login:创建一个新用户或更新默认新用户信息
  • passwd [option] login:更改用户的密码
  • groupadd [option] group:创建一个新的组

6.2 设置目录和文件的权限

目录和文件的属性文件类型(文件类型 - 文件所有者权限 - 文件所属组权限 - 其他用户权限) - 访问权限 - 属主- 属组

6.2.1 文件类型
文件类型说明
常规文件
d目录文件
bblock device 即块设备文件
ccharacter device 即字符设备文件
lsymbolic link 即符号链接文件,又称软链接文件
ppipe 即命名管道文件
ssocket 即套接字文件,用于实现两个进程进行通信
6.2.2 访问权限

在这里插入图片描述

r(读,4)、w(写,2)、x(执行,1)

  • chmod [option] mode... file..:修改文件或目录的权限 chomod [who(u g o a)][opr (+ - =)][per(r w x)] <file-name>
  • chown [option].. [owner] file:修改文件和目录的所有者和所属组

7、归档与压缩命令

压缩文件格式

  • gzip(bzip2) [option] file:制作压缩文件、解开压缩文件
    -9 :表示高压缩比,多在创建压缩包时用
    -d :用于解开已经压缩过的文件
  • tar [option] 归档文件名 源文件或目录:制作归档文件、释放归档文件
    -c : 创建.tar格式的包文件
    -x : 解开.tar格式的包文件
    -z :调用gzip程序进行压缩或解压
    -j :调用bzip2程序进行压缩或解压

8、磁盘管理

系统新增一个硬盘,需要做以下动作:

  1. 对磁盘进行分区,以创建可用的partition;
  2. 对该partition进行格式化(format),以创建系统可用的filesystem;
  3. 对刚刚创建好的filesystem进行检验;
  4. 在Linux系统上,需要创建挂载点(即目录),并将其挂载上来

fdisk [option] [磁盘设备]:管理磁盘分区【根目录、home、boot(启动目录)、swap(交换分区)】
磁盘分区依据功能性的不同可分为:主分区、拓展分区、逻辑分区,主分区最多只能分三个,加一个拓展分区,拓展分区又可分为无数个逻辑分区,主分区使用hda[1-4] (包括拓展分区在内),逻辑分区使用hda[5-~](逻辑分区由5开始计算)

  • mkfs -t 文件系统类型 分区设备:Make Filesystem,创建文件系统(格式化)
  • mount [-t 类型] 存储设备 挂载点目录:挂载文件系统到指定文件夹
  • mount -o loop ISO镜像文件 挂载点目录:挂载ISO镜像到指定文件夹
  • umount 存储设备位置/挂载点目录:卸载已挂载的文件系统

/etc/fstab 配置文件包含了需要开机后自动挂载的文件系统记录


9、网络管理

netstat [选项]:查看系统的网络连接状态、路由表、接口统计等信息

  • netstat -a:列出所有端口
  • netstat -at:显示当前TCP连接状况
  • netstat -apu:显示UDP端口号的使用情况

ping [选项] 目标主机:测试网络连通性
traceroute 目标主机地址:测试从当前主机到目的主机之间经过的网络节点
ifconfig 网络接口:查看指定网络接口信息(也可以设置网络接口)
route [-n]:查看或设置主机中路由表信息

临时配置 —— 使用命令调整网络参数
固定设置 —— 通过配置文件修改网络参数

  • 网络接口配置文件:/etc/sysconfig/network-scripts/ 目录下的ifcfg-eth0(第一块以太网卡的配置文件)
  • 主机名称配置文件:/etc/sysconfig/network,保存全局网络设置,主要包括主机名信息
  • 域名解析配置文件:/etc/resolv.conf,保存本机需要使用的DNS服务器的IP地址

10、进程管理

引导流程:开机自检(BIOS) -> MBR引导(bootloader) -> GRUB菜单 -> 加载内核(kernel) -> 运行INIT进程(pid:1) -> 读取/etc/inittab配置文件(系统级别设置文件,定义系统运行级别) -> 执行/etc/rc.d/rc.sysinit脚本、执行/etc/rc.d/rc脚本(指定了自启程序) 、启动mingetty进程 -> login shell

ps aux / ps -elf:查看静态的进程统计信息
Linux的进程分为五种状态:运行(R)、中断(S)、不可中断(D)、僵死(Z)、停止(T)

top:查看动态的进程排名信息

终止进程的运行:

  • Ctrl + Z:中断正在执行的命令
  • kill / killall:kill用于终止指定PID号的进程,killall用于终止指定名称的所有进程,-9选项用于强制终止

11、编辑工具 vi / vim

  • vi :类Unix系统中默认的文本编辑器
  • vim :vi 编辑器的增强版本

三种工作模式设置:命令模式(\)、编辑模式(i)、一般模式(Esc回到一般模式)

基本操作基本操作基本操作
基本操作
基本操作
基本操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值