Linux基础知识与实操-篇一:初识Linux文件权限与配置

文章目录

  • Linux 初识
    • Linux介绍与安装
  • 基础认知
    • 重要热键
    • 帮助命令
    • 关机
      • 数据同步
  • Linux的文件权限与目录配置
    • 文件权限
      • 更改群组
      • 改变文件拥有者
    • 文件种类与拓展名
      • 文件种类
    • Linux下文件名的限制
    • 目录配置
      • 根目录
      • `/usr` 的意义与内容
      • `/var`的意义与内容
    • 实际目录配置
  • 最后

Linux 初识

Linux介绍与安装

这里不做过多解释了,安装是,主要是要注意磁盘分区,留出 /Swap 区,防止因为磁盘问题,导致整个系统资料丢失

一般root的用户的输入标识符为 #,其他非root用户的表示符为 $

当然我还是更推荐初学者使用虚拟机安装linux系统(Ubuntu 或 Linux这样的发行版图形化Linux系统)进行练习,在有一定的Linux操作基础后,可以使用实际的Linux系统机器或租服务器做真正的实操。

基础认知

重要热键

Tab 键 在一串指令的第一个 字符的后面,表示 命令补全 的功能
(在仅仅记得某个命令开头字符时,可以先键入正确的几个字符,然后摁两下 Tab ,系统便会列出所有以该字符开头的命令了)

Tab 键 在一串指令的第二个 字符的后面,表示 文件补齐 的功能

若安装了 bash-completion 软件,则在某些命令后面使用 Tab 按键时,可以进行 选项/参数补全,该软件在 CentOS下已经包含在系统中了

Ctrl+c 可以使正在运行的指令中断

Ctrl+d 表示键盘输入结束,也可以取代 exit 操作

Shift+PageUp 向前翻页

Shift+PageDown 向下翻页

帮助命令

对于绝大多数命令,如果不熟悉,可以通过增加 --help 来获得 帮助文档,以此来快速学习该命令的基本用法

还有一个方法就是 通过 man 命令,来查看 操作说明(manual) , 并且可以指定 一般yoghurt可以使用的指令 选项,各个选项的含义如下:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第1张图片

其中 1 5 8 的含义很重要,最好记住这几个选项的含义

一般 说明文档包含的内容有以下几个方面:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第2张图片

所以一般在参考时,会有以下原则:

  1. 先看 NAME :看一下资料的意思
  2. 在详细看 DESCRIPTION, 这里会提到很多相关的资料盒使用时机,可以学到很多小细节
  3. 如果每个指令都已经熟悉了,下面就可以查看 OPTIONS 部分的内容了,可以知道每个选项的含义,就能下达比较 细节的指令内容了
  4. 最后还会再看一下与该资料相关的,还有哪些东西可以使用,就是 上面的 SEE ALSO
  5. 某些说明还含有 相关的文件:FILES, 可以进一步参考

还有在 参考手册页面的其他一些基础操作:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第3张图片

一般该说明手册,在目录usr/share/man

所以一般是不需要特意记住各种操作命令的,只需要记住一些常用常见的命令,然后其他的很多选项就可以通过 man 命令来找到更加详细的说明,或者通过 --help 来获取基本用法和帮助

有的命令被放到 info 命令中,易读性更强,不过查询的指令需要有 info page 才可以使用,该文件在目录:usr/share/info 下,对于 不是用 info page 格式书写的说明文件,也可以用 info 来显示,只是结果和 man 就基本相同了,其中 info 的参考快捷键如下:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第4张图片

还有其他软件的 帮助文件,会放在目录usr/share/doc 目录下

关机

数据同步

由于在Linux系统中,为了加快数据的读取速度,在默认情况下,某些已经加载到内存中的数据将不会被直接写会硬盘,而是先暂存在内存中,这样如果一个数据被多次读写,则在速度上会快很多,不过这样也带来了困扰,如果系统以外终止(断电等),那么就会造成数据的更新不正常,这是就需要 sync 命令来进行数据的写入操作:将内存中尚未更新的数据,重新写入硬盘中,这个命令在系统关机或重启前很重要

sync 最好是 root 用户使用,因为这样可以保存所有数据,如果是其他用户,则仅保留当前用户的数据

关机的常用参数:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第5张图片

使用reboot halt poweroff 都可以实现重新启动和关机的任务,自己习惯就可以了

Linux的文件权限与目录配置

文件权限

rwx 的含义这里就不再详细介绍了,这三个分别代表 读 写 执行,可以使用八进制数 4 2 1 来表示,ugo 分别表示 当前用户 同组的其他用户 其他组的其他用户,a 表示所有用户,也可以使用 + - = 来设定不同用户的不同权限

文件权限

  • r权限(read):可以读取此文件的实际内容
  • w权限(write):可以编辑、新增该文件的内容,但是不能删除该文件
  • x权限(eXecute):该文件具有可以被系统执行的权限, 因为 Linux 不是依靠 Windows系统的拓展名来判断文件是否可以执行,而是依靠 x 权限判断的

目录权限:

  • r权限(read):可以读取此目录结构,查询到该目录下的文件名数据(ls)
  • w权限(write):具有改动该目录结构列表的权限:建立、删除、重命名、移动 文件和目录
  • x权限(eXecute):用户能否进入该目录并成为工作目录,就是当做 home 目录使用
    如果在某个目录没有x 权限,则无法切换到该目录下,也无法执行该目录下的任何指令,即使拥有rw权限

更改群组

更改某个用户的群组需要使用 root 用户,并且需要在 目录 /etc/group 下进行,否则就会显示错误,使用命令 chgrp 命令实现(change group)

改变文件拥有者

如果是 目录下所有次目录或文件同时更改 文件所有者,就需要 -R 选项

chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:组名 文件或目录

一般在复制文件给其他用户的时候,就会使用到这个命令,需要将复制好的文件,修改为 目标用户,这样该用户就可以 写入或执行该文件了

文件种类与拓展名

在 Linux下,一切都是文件

文件种类

  • 正规文件(regular file): 在使用 ls 命令列出的文件中,第一个字符是 - 的均为正规文件,按照文件内容,可以分为以下几种:
    • 纯文本文件( ASCII):人可以直接读到的文件
    • 二进制档( binary) : 各种可执行文件
    • 数据格式文件( data) : 有些程序在运行过程中读取某些特定格式的文件
  • 目录( directory):在使用 ls 命令列出的文件中,第一个字符是 d 的均为目录文件
  • 链接文件( link) : 类似Windows系统下的 快捷方式,在使用 ls 命令列出的文件中,第一个字符是 l 的均为链接文件
  • 设备与设备文件( device) : 与系统周边及储存等相关的一些文件,通常都集中在/dev这个目录之下! 通常又分为两种:
    • 区块( block) 设备文件 : 就是一些储存数据, 以提供系统随机存取的周边设备, 可以跳转不同的区块
    • 字符( character) 设备文件: 亦即是一些序列埠的周边设备, 例如键盘、 鼠标等,一次性读取的
  • 数据接口文件( sockets) : 在网络中进行数据承接
  • 数据输送档( FIFO, pipe) : 解决多个程序同时村却同一个文件造成的错误问题

文件拓展名

和Windows系统不同,依靠拓展名来确定某个文件是否可以被执行,Linux下的文件只要有 x 权限,就是 可以被执行的,但是 这并不是说这样就可以被执行成功,只是说明 它具有执行能力

Linux下还有其他类型的文件,可以依靠拓展名区分:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第6张图片

Linux下文件名的限制

单一文件或目录的最大容许文件名为 255Bytes, 以一个 ASCII 英文占用一个 Bytes 来说, 则大约可达 255 个字符长度。 若是以每个中文字占用 2Bytes 来说, 最大文件名就是大约在 128 个中文字符之内

所以 Linux下可以看到很长的文件名,就是为了可以清晰的表示该文件的信息

而且在命名文件时 ,最好避免以下字符:

. ? > < ; & ! [ ] | \ ' " ` ( ) { }

. 开头的文件或目录,在 Linux下认为是 隐藏文件

目录配置

根据 FHS 的目录配置依据,简单的将目录定义为以下四种交互形态:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第7张图片

还有另外三个目录:
/ ( root, 根目录) : 与开机系统有关;
/usr ( unix software resource) : 与软件安装/执行有关;
/var ( variable) : 与系统运行过程有关。

根目录

根目录是整个系统最重要的一个目录, 因为不但所有的目录都是由根目录衍生出来的, 同时根目录也与开机/还原/系统修复等动作有关

根目录是整个系统最重要的一个目录, 因为不但所有的目录都是由根目录衍生出来的, 同时根目录也与开机/还原/系统修复等动作有关

各个目录的主要文件如下:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第8张图片
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第9张图片
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第10张图片

还有几个也非常重要,但是 FHS 没有定义出来的目录:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第11张图片

有五个重要的目
录被要求一定要与根目录放置在一起, 那就是 /etc, /bin, /dev, /lib, /sbin 这五个重要目录。现在许多的 Linux distributions 由于已经将许多非必要的文件移出 /usr 之外了, 所以 /usr 也是越来越精简,同时因为 /usr 被建议为『即使挂载成为只读,系统还是可以正常运作』的模样,所以救援模式也能同时挂载 /usr

/usr 的意义与内容

依据 FHS 的基本定义, /usr 里面放置的数据属于可分享的与不可变动的(shareable, static),

很多读者都会误会/usr 为 user 的缩写,其实 usr 是 Unix Software Resource 的缩写, 也就是『Unix 操作系统软件资源』所放置的目录,而不是用户的数据

FHS 建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行建立该软件自己独立的目录

因为是所有系统默认的软件(distribution 发布者提供的软件)都会放置到/usr 底下,因此这个目录有点类似 Windows 系统的『C:\Windows\ (当中的一部份) + C:\Program files\』这两个目录的综合体,系统刚安装完毕时,这个目录会占用最多的硬盘容量。一般来说, /usr 的次目录建议有底下这些:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第12张图片
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第13张图片

/var的意义与内容

如果/usr 是安装时会占用较大硬盘容量的目录,那么/var 就是在系统运作后才会渐渐占用硬盘容量的目录。 因为/var 目录主要针对常态性变动的文件,包括快取(cache)、登录档(log file)以及某些软件运作所产生的文件, 包括程序文件(lock file, run file),或者例如 MySQL 数据库的文件等等。常见的次目录有:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第14张图片

实际目录配置

上面仅仅是 FHS 建议的目录结构,在实际的 Linux发行版 CentOS7 的目录树结构如下:
Linux基础知识与实操-篇一:初识Linux文件权限与配置_第15张图片

最后

一起提高,慢慢变强。

你可能感兴趣的:(Linux开发,Linux,Unix,操作系统,实操)