Linux运维之路-Linux基础学习二

Linux系统的一切皆文件思想会帮助我们学习

一、 Linux文件系统
“一切皆文件”这是linux的一种思想,即Linux把所有的东西用文件来描述。文件可以说是Linux的所有,它们放在不同的目录下,而这些目录的源头被称为根(根目录)。Linux系统的一些目录:
/:系统的根目录
/bin:供所有用户使用的基本命令,不能关联到独立分区,OS启动即用到的程序
/boot:引导文件存放的目录,还存放内核文件,引导加载器
/dev:设备文件及特殊文件存储的位置(字符设备:只能线性访问 块设备:随机访问)
/etc : 用于存放静态的永久系统配置文件
/home:用于存放用户的家目录
/include:C程序的头文件
/lib:32位使用的库文件
/lib64:64位系统使用的库文件
/local:第三方应用程序的安装位置
/media:便携式设备挂载点
/mnt:临时文件系统挂载点
/opt:第三方应用程序的安装位置
/proc:用于输出内核与进程相关的虚拟文件系统
/root:root用户的家目录
/run:包含动态的、非永久的应用运行时的数据
/sbin:启动时程序依赖的基本共享库文件以及内核模块文件
/selinux:security enhanced Linux,selinux相关的安全策略等信息的存储位置
/share:结构化独立的数据
/srv:系统上运行的服务用到的数据
/tmp:用于存放临时文件
/usr:存放安装的软件程序和库
/var:存放动态的配置数据
二、 Linux的文件
1. 文件名规则
a. 文件名最长为255字节
b. 包括路径在内文件名称最长4095个字节
c. 文件的类型与颜色
蓝色->目录 绿色->可执行文件 红色->压缩文件 浅蓝色->链接文件 灰色->其他文件
d. 除了斜杠和NUL,所有的字符有效,但是不推荐使用特殊字符命名。
e. 标准的Linux文件系统,文件名大小写敏感
2. 文件类型

不同字母所代表不同的文件类型
d:目录文件
b:块设备
c:字符设备
l:符号链接文件
p:管道文件
s:套接字文件
3. 绝对路径和相对路径
绝对路径:从根目录开始直到文件所在位置的文件名所经过的路径(包括文件名)称为文件的绝对路径
相对路径:从相对的文件和目录开始直到找到目标文件的位置所经过的路径(包括文件名)称为文件的相对路径,写相对路径时一定要注意是相对的是哪个文件或目录
4. 索引节点
索引节点存放在索引节点表中,包含了文件系统所有文件列表,一个节点在一个表项,它包含了有关文件的信息(元数据),包括:文件类型,权限,UID,GID,链接数(指向这个文件名的路径名称个数)该文件的大小和同的时间戳,指向该文件的大小和不同的时间戳,指向磁盘上文件的数据块指针,和文件有关的其他数据。
索引节点表分指针:直接指针,一级指针,二级指针,三级指针。其中直接指针12个,直接指针指向数据块。一级指针指向直接指针,此时的直接指针放在一个数据块内,这些直接指针指向数据块。二级指针、三级指针逐级递减指向指针,这种方式可以扩大存储更多的数据和文件。在文件查找时,先通过目录名查找对应的索引节点号,然后通过节点号去找对应指向文件的下一个节点号直到找到数据。(注意:一个目录文件的内容就是该目录下所有文件的目录项的列表。
5. 硬链接和软链接
a. 硬链接
创建一个与文件名不同但是其他皆相同的文件,并且硬链接只能在同一分区创建,创建后会增加链接数,目录无法创建硬链接
语法格式:ln filename [linkname]
b. 软链接
相当于Windows中的快捷方式,又称为符号链接,符号链接的内容是它引用文件的名称,软链接可以跨分区,不会增加文件的链接数,目录可以创建软链接
语法格式:ln filename [linkname]

附:几个小命令的学习
tr: 从标准输入中翻译、压缩和/或删除字符并写入标准输出
authconfig:配置默认的设置
vipw: 修改查看passwd的内容,带有语法提示功能
vigr: 修改查看group的内容,带有语法提示功能
pwck: 检查passwd的格式
grck: 检查group的格式

useradd:添加用户
-b:指定家目录所在的位置
-c:指定用户的注释信息
-d:指定家目录所在的位置和名字
-D:显示或者更改为用户默认添加的配置,需要有root权限,修改 的文件在/etc/defauilt/useradd中
-e:指定用户的过期时间,格式可以为YY-MM-DD
-f:指定用户密码过期后将之锁定的期限
-g:为用户指定主组名或ID,组名或ID必须存在
-G:为用户指定附加组,组名或ID必须存在
-k:为用户指定家目录下的内容模板,指定后不退出终端立刻查看 会看到用户下的文件属于模板所有者且无法访问,退出终端后再 次查看则文件属于用户、所有组也会变成用户所在组
-K:覆盖/etc/defs下的键值,通过这个选项可以修改用户的一些 参数
-l:不将用户添加到lastlog和faillog数据库
-m:创建用户的家目录,普通用户默认创建家目录,系统用户创建 家目录
-M:不创建用户家目录
-N:不创建与用户名相同的组,而是以users作为主组
-o:允许创建ID相同名字不同用户,系统登录名显示
-p:可以执行但是在shadow文件中显示为明文,建立的用户无法 通过-p选项创建的密码成功登录系统,可以猜测用户输入的密码 并不是与明文的密码匹配,而是以同样的加密算法加密然后匹配 秘文
-r:创建一个系统用户,系统用户没有邮箱目录和家目录,用-m可 以创建家目录
-s:指定用户的登录shell,在/etc/shells查看可用shell
-u:指定用户的uid
-U:创建与用户名相同的组;创建用户时默任创建与用户
-Z:用一个特定的seuser作为SElinux用户映射
newusers:批量创建用户,不能登录系统,没有邮箱
chpasswd:批量创建密码,创建后能登录系统,没有邮箱

usermod:修改用户参数
-c:修改用户的注释
-d:修改用户的家目录,如果目录不存在不会创建,修改之后再次 创建与家目录相同的目录也不会被识别,用su无法切换到用户目 录而是到一个bash下
-e:指定用户账号过期的时间,即/etc/shadow文件内容格式的倒 数第二个字段
-f:设置账号的锁定期限
-g:修改用户的主组,组必须存在
-G:添加附加组列表,会覆盖以前的附加组
-a:为用户追加附加组,与-G共用
-l:修改登录名
-L:锁定指定用户,在/etc/shadow的密码栏加!,密码必须存在 才有效
-m:移动家目录的内容到新的位置,仅仅用于-d
-o:允许不同名用户有相同ID
-R:directory to chroot into 目录chroot进 //未理解其作用
-s:修改用户的登陆shell
-p:修改密码与useradd的情况相同
-u:修改用户的uid
-U:解锁指定的用户
-Z:映射新的SElinux用户到用户

userdel:删除用户
-f:强制完成某些无法正常完成的操作
-r:删除用户的同时移除用户的家目录和邮箱
-R: –root CHROOT_DIR directory to chroot into
-Z:移除所有的用户的SElinux用户的映射

id: 为指定用户或(在用户省略时,为当前用户)打印用户和组信息
-a:忽略与其他版本的兼容性
-Z:只打印当前用户的安全上下文
-g:只打印用户的组ID
-G:打印用户所有的组ID
-n:打印ID号对应的名字,跟ugG连用
-r:打印真实ID而不是有效ID,跟ugG连用,有效ID是指当前用户的 ID,在用su切换用户并且指定ID的时候会出现这种情况,此时用 r选项查看ID则会看到用户本来的ID即真实ID,而不是su指定的有 效ID
-u:打印用户的有效ID
-z:打印的时候去掉显示的NUL字符,比如空格之类的

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88538

(6)
风墨曲风墨曲
上一篇 2017-11-18 11:54
下一篇 2017-11-18

相关推荐

  • 用户和组的简介

     在第二周的学习中,关于用户和组是一个难点,也是重点,本篇博客则是对用户和组的简单阐述,如有错误或不足还请各位大牛指出,在此谢过! 1、用户 # 1.1用户的定义      通过前面对Linux 多用户的理解,我们明白Linux 是真正意义上的多用户操作系统,所以我们能在Linux系统中建若干用户(…

    Linux干货 2017-07-22
  • Linus:利用二级指针删除单向链表

    感谢网友full_of_bull投递此文(注:此文最初发表在这个这里,我对原文后半段修改了许多,并加入了插图) Linus大婶在slashdot上回答一些编程爱好者的提问,其中一个人问他什么样的代码是他所喜好的,大婶表述了自己一些观点之后,举了一个指针的例子,解释了什么才是core low-level coding。 下面是Linus的教学原文及翻译—— “…

    Linux干货 2016-07-10
  • Linux入门 及Basics基础

    二进制: 0, 1 5大部件: CPU:计算器、控制器 Memory: 存储器(内存) 编址存储单元阵列 输入设备/输出设备:I/O 键盘: VGA: 辅助存储器 网卡 编程: 低级语言:汇编(微码编程) 高级语言:JAVA, C++, C, Scala, Python 转件: 时序复用: 计算机:硬件+软件 硬件:开发,制造 软件:编写,编译 OS: Op…

    Linux干货 2016-08-08
  • linux系统监控 sar命令详解

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告, 包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。 本文主要以CentOS 6.3 x64系统为例,介绍s…

    Linux干货 2015-06-17
  • 计算机基础

    一,计算机的组成        计算机由硬件(hardware)系统和软件(software)系统两大部分组成的         硬件系统是由主机和外部设备 二,计算机硬件 计算机: 是一种能接受和存储信息,并按照存储在其内部的程序对海量数据进行自动,高速地 处理, 然后把 处理的结果输出的现代化智能电子设备  发展历史       第一代计算机(1946-…

    Linux干货 2018-03-26
  • rsyslog记录日志于mysql

    rsyslog记录日志于mysql:     前提:准备好msql server或mariadb server;     (1) 安装rsyslog连接至mysql server的驱动模块;        &n…

    Linux干货 2016-12-05

评论列表(2条)

  • 香草先生
    香草先生 2017-11-18 14:49

    0.0

  • 大哥雅典
    大哥雅典 2017-11-21 15:36

    第三题是取出最多那个shell,而不是把shell全部取出来,其余全对,加油。