体系结构
计算器:CPU
控制器:CPU
存储器:内存
输入设备:鼠标键盘、硬盘
输出设备:显示器、硬盘
linux版本号组成:
A.主版本号
B.次版本号(奇数:开发版本 偶数:发行版本)
C.修订版本号(修订次数)
如3.6.28
命令提示符
[root@www ~]#
root:当前用户名
www:当前主机名
~:当前用户所在目录,这里~表示当前所在用户的宿主目录
#:表示当前用户身份,其中#为管理员,$为普通用户
shell
shell:人机交互的接口。shell把命令传递给内核,内核将执行结果反馈给shell
linux支持的shell:
bash:linux默认支持的shell
ksh
csh
内核kernel
内核:是操作系统的一部分。
操作系统:直接搭载在硬件之上,负责应用程序与硬件通信的桥梁。
内核作用:
1)进程管理(进程:将要执行的任务)
2)内存管理
3)文件系统:存储设备上存储数据的方式方法(Window:NTFS/FAT32 ; Linux:ext3、ext4、xfs等)
4)网络管理功能
5)硬件驱动
6)安全功能
Linux设计思想
1)由很多小程序组成,每个小程序负责完成单一的功能,从而整体上实现复杂的任务。
2)一切皆文件(包括外围设备),配置文件保存为纯文本格式
3)多用户多任务系统:6个终端(ctrl+alt+F1~F6进行切换)
Linux界面
1)GUI(graphical user interface,图形界面),通过ctrl+alt+F7切换
2)CLI(command line interface,命令行接口)
Linux命令的格式:命令 [选项] 参数
选项:长选项(--单词)、短选项(-字符,可组合)
参数:命令作用的对象
补充:以<>包括的选项不能省略,以[ ]包括的选项可省略
Linux命令分类:
1)内部命令:shell自带的命令,在启动时就加载到了内存中,所以执行快。(帮助信息用help [command]
查询)
2)外部命令:存放在一个文件中,需要的时候在这些文件中进行查找,这些文件被定义为$PATH。(帮助信息用[command] --help
查询)
补充:man可以查询内部命令和外部命令帮助信息
判断方式:命令type
返回结果:
1)"builtin"关键词,为内部命令
2)"mkdir is /xx/xx"关键词,为外部命令
环境变量:内存中的命名空间
1)引出:比如使用type命令查看ls时:[root@www ~]# type ls
返回ls is aliased to 'ls --color=auto'
那么用which命令查看:which ls
返回alias ls='ls --color=auto'
/bin/ls
可以看出是外部命令,并且在/bin目录下
但此时并不是输入type /bin/ls
,为什么能索引到该目录呢?所以这里引出环境变量的概念。
2)PATH变量:存放系统命令的路径
查看PATH变量:echo $PATH
返回/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
系统会按照从前往后的顺序查找,若查找不到,则返回command not found
补充:操作系统并不是每次都会从前往后找,也会从命令缓存(hash)中定位
添加搜索路径(临时,关闭窗口后失效):export PATH=$PATH:/xx/xx
永久添加路径:
当前用户永久生效(~/.bashrc),在最后一行加入上面命令。并source ~/.bashrc
时配置生效。
所有用户永久生效(/etc/profile),在最后一行加入上面命令。并source /etc/profile
时配置生效。
Library库
1、目的:有些应用程序可以直接调用内核,但有些应用程序的操作是相同的,如果单独开发会比较麻烦,所以通过调用库来使用操作系统的基本功能。
2、库:将操作系统的某些功能集中起来形成库。
3、Window:.lib(静态链接库).dll(动态链接库,dynamic link library)
Linux:.so(静态共享库) .dso(动态共享库,dynamic shared object)
静态和动态的区别:
1)静态:将库代码直接放在可执行文件中
2)动态:使用时向操作系统调用,将dll文件放在exe文件同目录即可
3A认证
1)认证机制:Autentication
2)授权机制:Authorization
3)计费(审计)机制:Accounting(Audition)
Linux文件详细信息
例如:-rw-rwx---. 1 root root 1207 Nov 6 18:51 anacondaks.cfg
第1位:显示文件类型
-:表示普通文件
纯文本文件(ASCII):配置文件
二进制文件(binary):命令
数据格式文件(data):/var/log/wtmp
d:表示目录(directory)
l:软链接文件,也叫符号链接文件(symbolic)
设备文件:(/dev)
b:块设备(block,如硬盘,U盘等)
c:字符设备(char,如键盘等),一次性读取,按顺序读取
s:套接字文件(socket)
p:管道(pipe),特殊文件类型,解决多个程序之间同时访问同个文件所造成的问题
第2-10位:显示文件权限
2-3:文件属主的权限(owner,简写避免和other冲突,用user)
4-6:文件属组的权限(group)
7-10:其他用户的权限(other)
其中rwx表示读、写、执行
1:代表文件硬链接的次数
第一个root:代表文件的属主
第二个root:代表文件的属组
1207:表示文件的大小(具体单位需要用ls -h显示)
Nov 6 18:51 表示文件最后被访问的时间
anacondaks.cfg:文件名
文件的时间戳
用stat命令查看
access:最后被访问的时间
modify:文件数据被修改的最后时间(如添加删除数据等)
change:文件属性被更改的最后时间(应急响应中常用到)
修改文件时间戳:touch命令