如果你是第一次接触Linux的话先认识下面这些理论概念。
Linux简介
Linux是一种自由和开放源码的网络操作系统,存在着许多不同的发行版,比如有CtenOS、RedHat、Ubantu、Debian、SuSe、Gentoo、slackware等,但它们都使用了Linux内核,这个内核是由C语言写的。Linux可安装在各种计算机硬件设备中,比如安卓的手机是Linux的一种。
计算机体系结构
- 运算器
- 控制器
- 存储器
- 输出设备
- 输入设备
内核功能
- 进程管理
- 内存管理
- 文件系统
- 网络功能
- 硬件驱动
- 安全机制
Linux思想哲学
- 由目的单一的小程序组成,组合小程序完成复杂任务
- 一切皆文件
- 尽量避免捕获用户接口
- 配置文件保存为纯文本格式
交互式接口SHELL
在我们的系统应用程序中有一个很重要的程序,那就是我们的shell,它是帮助我们人机交互的,就像中国人说的是汉语,美国人说的是英语,如果这两个的人需要交流,那么我们中间得找个翻译官来进行翻译,那shell就相当这个翻译官。shell分为两种,一种是GUI,一种是CLI。
1.GUI接口
这个接口是比较常见的,在windows打开就能见到这个图形用户界面。在Linux有这三种图形用户界面,分别是Gnome、KDE、XFace。Gnome是用C语言写的,KDE是由C++写的。
2.CLI接口
CLI是命令行界面,也分为好许多类,有sh、bash、csh、zsh、ksh、tcsh,但bash是现在比较流行的。下面的图也就是命令行界面。
命令格式
- root用户 用来表示#
- 普通用户 用来表示$
命令格式:COMMAND [option]... [arguements]....
选项:
短选项: ‘-’多个选项可以组合:-a -b = -ab
长选项: ’--‘
参数:命令的作用对象
文件属性
- 文件类型:
-:普通文件 (f)
d: 目录文件
b: 块设备文件 (block)
c: 字符设备文件 (character)
l: 符号链接文件(symbolic link file)
p: 命令管道文件(pipe)
s: 套接字文件(socket)
- 文件权限:9位,每3位一组,每一组权限:rwx(读,写,执行),第一组为属主权限,第二组为属组权限,第三组为其它权限。
- 文件硬链接的次数
- 文件的属主(owner)
- 文件的属组(group)
- 文件大小(size),单位是字节
- 时间戳(timestamp):这里显示最近一次被修改的时间
访问时间:access
修改时间:modify,文件内容发生了改变
改变时间:change,metadata,元数据
文件目录的命名规则
-
长度不能超过255个字符;
-
不能使用‘/’当文件名
-
严格区分大小写
Linux目录结构
所有的Linux系统遵循一个标准:FHS:文件系统层级标准。有LSB组织定义的。
- /bin:系统启动以及运行时用到的二进制命令
- /sbin:系统管理员使用的管理类命令
- /boot:系统引导启动要加载的内核文件以及grub
- /lib:共享库文件
- /lib64:专用于x86_64主机上使用的库文件。与/lib相辅相成
- /etc:应用程序的配置文件
- /usr:Linux系统软件资源存放位置,具有全局共享的特性
- /var:存放日志、缓存等经常发生变化的文件
- /dev:设备文件
- /media:挂载点目录,移动设备
- /mnt:挂载点目录,额外的临时文件系统
- /home:普通用户的家目录
- /root:root用户的家目录
- /tmp:临时文件的存放目录
- /opt:第三方应用程序的存放目录
- /proc:用于输出内核与进程信息相关的虚拟文件系统。
- /sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统。
来源:oschina
链接:https://my.oschina.net/u/4207270/blog/3112106