Linux入门(一)


体系结构

计算器: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命令


Linux登陆信息存放位置:/etc/issue

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容