使用ISO文件安装系统
使用ISO文件安装系统
3A:认证,授权,审计
LDAP:轻量级目录服务访问协议
ifconfig:查看ip地址
仅主机:设成同一网段才能和宿主机tong
shell:人机交互接口
内核的作用:进程的管理、内存管理、文件系统(存储数据的方式方法:windows:NTFS/FAT32 LINUX:ext3、ext4、xfs等)、网络功能、硬件驱动、安全功能
设计思想:
1.由很多实现单一功能的小程序组成,合作实现复杂的任务。
2.一切皆文件:所有外围设备(硬件)或其他程序
3.尽量避免捕获用户接口
Linux版本:A.B.C (主版本号,次版本号,修订版本号)。B为奇数:开发版本 偶数:发行版本
【root@www ~】#
root:当前登录用户名
www:主机名
~:当前所在目录(~为家目录)
#:代表管理员登陆,否则为$
VMware的使用及Linux系统安装
1.基本命令:ls cd pwd
2.学习内容:file cat cp mv rm mkdir touch tree which whereis
文件管理:
目录管理:
系统管理:
网络管理等
3.file:查看文件类型(windows是用扩展来名识别文件类型)
语法:file [options] [args]
-b:显示结果时不显示文件名
-c:显示执行file命令的执行过程(file是如何去判断文件类型)[file -c]便于排错或者分析file命令执行过程。
-i:输出MIME类型的字符串。file -i install.log
-z:显示压缩文件的内容,
-L:查看软链接对应文件的类型。
-f:文件当中文件名的类型。
例如写了一个a.text文件,文件里面写了比如/etc/passwd (这是一个的路径)
-f的作用就是列出这些文件的类型,即passwd的类型。
4.cat:一次性查看整个文件
语法:cat [options] [args]
1.打开一个文件:cat filename
2.可以从键盘输入创建一个新文件。
cat >new_file_name <<EOF //EOF:end of file
>Linux command //从键盘输入
>Unix command //从键盘输入
>EOF //从键盘输入,以结束书写
3.向现有文件中添加新数据:(新加的数据添加到后面,new line)
cat >> file_name << EOF
>firstline
>secondline
>EOF
4.把多个文件内容合并到一个文件输出:
cat file1 file2 >file3
把file1和file2合并输出重定向到file3
cat /etc/passwd /etc/shadow > /root/user.txt
cat常用的选项:
-n:显示文件内用时同时显示行号,包括空行
-b和-n的功能相同,但不包括空行
-S:当文件中有多个空行时,合并为一个空行
-E:在显示内容时,每一行结尾添加一个$符号
5.cp:复制文件或者目录(copy缩写)
语法: cp [option] [src_file] [des_file]
复制文件:
eg:cp /etc/passwd /opt/ :以原文件名命名放在那个目录下。
eg:cp /etc/passwd /opt/mima :以mima为文件名放在那个目录下,注意区分。
eg:cp /etc/passwd /opt/aaa :假如aaa已经存在了,重名了,它会提示overwrite是否覆盖。n 为no取消,y为yes,覆盖。
./当前目录
复制目录:<需要加选项>
-f:(force)强制复制文件或目录不进行提示
-r:递归复制目录:把自己的目录下的所有东西都copy过去
-s:为某个文件创建符号链接,而不是复制文件
-b:覆盖已有文件,对源文件备份,会生成一个源文件名+"~"的文件
-l:为文件创建硬链接而不是复制文件
-p:复制文件时保留文件的原有属性
-d:当复制软连接文件时,把目标文件或目录也会创建为软连接,并指向最原始的文件
-i:覆盖目标文件前询问(cp = cp -i)
6.mv:move,移动或者重命名文件和目录(当原位置和目标位置是同一目录时候,是重命名;
当原位置和目标位置不是同一目录时,是移动)
语法:
1.移动 : mv 目标文件 文件目标位置
2.重命名: mv 目标文件 目标文件新名字
也可以在移动的时候直接对目标文件重命名,
mv 目标文件 文件目标文件位置 /新名字
选项:
-b:移动前先先对源文件备份
-f:强制覆盖
-i:覆盖目标文件前询问
-t:将多个文件移动到同一个目录。(目标目录在前边,后面跟文件:mv -t [目标目录下] file1 file2 ...)
7.rm:remove,删除文件或目录
-d:删除可能存在数据的目录
-f:强制删除
-i:删除前询问(rm = rm -i)
-r:递归删出整个目录
-v:显示命令执行的过程
8.mkdir:make directory,创建空目录
-m:创建目录时同时设置权限
-p:递归创建新目录
mkdir -p /root/a/b/c/d/e
mkdir -p /a/{b,c,d} 同级
mkdir -p /root/{a,b}-{c,d}
-v:显示创建目录的过程
9.touch:创建新文件或者修改文件时间戳
-a:只改变访问时间戳
-c:不创建文件
-d:使用指定的时间戳创建新文件,而不是使用系统时间
touch -d "03:00 am" test.txt
-t:使用指定格式时间戳创建新文件,而不是使用系统时间
man touch
-f:解决与BSD系列Unix系统兼容性
-m:只改变变动时间
10.tree查看目录树(tree = ls -R)
11.which:查找命令所在的路径
12.whereis:查看命令所在的路径,源代码文件,帮助信息文件所在的位置
-b:只查看文件所在的位置(等同于which命令)
-m:只查看帮助信息所在的位置
-s:只查看源代码所在的位置
1.查找文件命令:locate(locate pass)
非实时性,根据自己的数据库查找文件,Centos每天更新一次数据库,安装locate后,生成/var/lib/mlocate目录,存放数据库
模糊匹配(文件名带有关键字的)
/var/lib/mlocate/mlocate.db //locate工具的数据库
# yum -y install mlocate //安装locate工具
# locate file_name
# updatedb //更新locate数据库
2.查看文本文件内容命令:cat more less head tail
Linux和Windows中文件内容行尾标记是不同的:
Linux中是以$为结尾的
Windows中是以ENTER键结尾的
3.cat:一次性查看文件内容(显示末尾)
4.more:可以翻页查看文本内容(显示开头)
enter键:向下翻一行
空格键:向下翻一页
ctrl+b:向上翻一屏
ctrl+f:向下翻一屏
=:显示当前的行号
v:调用vi编辑器
![command]:调用shell执行命令
q:退出more命令
# more +num file_name(more +20)//从num行开始查看文件
5.less:可以翻页查看文本文件内容
enter键:向下翻一行
空格键:向下翻一屏
pagedown:向下翻一屏
pageup:向上翻一屏
上下方向键:向上/向下翻一行
/word:该文件中查找关键字
n:查找下一个
N:查找上一个
6.管道:连接多条命令,前一条命令输出结果为后一条命令的输入条件
ls -R / | less
7.head:默认查看文本文件的前十行
-n:查看文本文件前n行
8.tail:默认查看文本文件的后十行
-n:查看文本文件后n行
-f:动态查看文本文件内容
如动态查看日志内容: tail -f /var/log/messages
1.Linux根文件系统:
根目录下目录及子目录的作用:
Linux文件类型:
-:普通文件
纯文本文件(ASCII);配置文件
二进制文件(binary file):ls(命令)
数据格式文件(data):/var/log/wtmp
d:目录文件
l:链接文件:软链接文件(类似快捷方式)
设备文件:
b:block块设备
c:character字符集设备:一次性读取,按顺序读取
s:套接字文件:通常用在网络上的数据连接: IP:PORT
www.baidu.com:80
p:管道:特殊的文件类型,解决多个程序同时访问一个文件所造成的错误问题
file:查看Linux中文件类型
语法:file [options] file_name
Linux文件名限制:
1:单个文件或目录的名称不能超过255字符
2.文件命名中不能包含特殊字符(/ . - + 等)
FHS标准(filesystem hierarchy standard):希望用户可以了解已经安装的程序在哪个目录下
根文件系统(/):rootfs:root filesystem
/bin:二进制,存放命令(与开机)
/boot:存放启动和内核相关文件
/dev:存放设备文件
/etc:存放应用程序的配置文件
/home:普通用户的家目录,默认为/home/USERNAME
/lib和/lib64:存放系统开机时需要用的函数库及/bin和/sbin命令调用函数库
/lib/modules:存放内核相关的模块(驱动程序等)
/media和/mnt:挂载点,/media挂载移动设备 /mnt挂载临时设备
/opt:第三方软件目录(用户自行安装的软件存放处),现在一般安装在/usr/local下
/proc:伪文件系统,数据存放在内存中,存放关于进程的相关信息
/root:管理员的家目录
/sbin:存放管理员使用的命令(可授权)
/srv:service缩写。存放服务数据目录,如可以把www服务的网页存放到该目录
/tmp:存放临时文件,所有用户都可以访问创建文件,但是每个用户只能删除自己的文件。(固定时间会清理)
/sys:伪文件系统,存放在内存中,记录内核相关的信息,包括目前加载内核模块和内核检测到的硬件设备等
/usr:UNIX software resource:存放安装的应用程序
/usr/bin:普通用户使用的命令(和/bin区别是否与开机有关)
/usr/sbin:网络服务器命令
/usr/lib和/usr/lib64:包含各种应用程序函数库
/usr/share:存放共享文件目录(在线帮助文件,杂项,时区文件等)
/usr/include:存放头文件
/usr/src:释放源代码目录
/var:vary缩写,存放经常变动的文件,比如日志,mail等
/var/cache:存放应用程序运行时产生的缓存文件
/var/lib:程序运行时,需要使用的数据文件的存放目录
/var/lock:设备或资源只能被一各应用程序使用,如果多个应用程序会产生错误,因为要为设备
或资源上锁(存放锁文件)
/var/log:存放日志目录(系统,用户登录,服务日志等)
/var/mail:存放个人电子邮件(系统报警产生邮件信息等)
/var/run:存放应用程序运行时PID文件(进程号,pid结尾)
/var/spool:存放队列数据,排队等待其他用户使用的数据,数据通常使用完后会被删除
FHS规定:/etc /bin /dev / lib /sbin五个目录必须要和根目录位于同一文件系统
1.Linux命令的帮助信息:
内部命令:help(command) help cd
外部命令:[command] --help ls --help
man:帮助(内外都行,相当于使用说明书)语法:man [command]
(查看内部命令时,显示的是bash帮助信息(集成在bash中))
上下方向键,翻行
enter:向下翻行
pagedown:向下翻页
pageup:向上翻页
/word:从上往下查找关键字
?word:从下往上查找关键字
q:退出当前帮助信息
man目录说明:
1.User Commands:普通用户命令(/bin /usr/bin usr/local/bin):binary二进制
2.System Call:系统调用库
3.C Library Functions:库调用
4.Devices and Special Files:设备或特殊文件(硬件设备)(硬件设备存放在/dev)
5.File Formats and Conventions:查看配置文件格式
6.Game et. Al.:游戏
7.Miscellanea:杂项
8.System Administration tools and Deamons:管理命令(/sbin /usr/sbin /usr/local/sbin)sbin:secret binary
whatis [command]:查看命令所在的帮助信息的目录,该命令在系统启动大约70分钟后会生成whatis的数据库,
如果时间太短,该命令不会执行,我们可以用makewhatis初始化该命令
man (1)级别的数字 ls
man的使用说明:
NAME:命令的名称及简要用法
SYNOPSIS:语法格式,可能包括一些选项的使用
<>:必须使用的选项或参数,不可省略
[]:是可省略的选项或参数
...:可以使用多个选项或参数
|:代表多选一(或)
():分组,没有特殊意义
DESCRIPTION:命令和命令选项的详细说明
Exit status:退出状态码
AUTHOR:作者信息
REPORTING: BUGS:发现Bug时如何反馈信息
COPYRIGHT:该命令的版权信息
SEE ALSO:另外参照的帮助信息
OPTIONS:说明改命令每一个选项的详细用法
EXAMPLES:命令使用实例
man手册页目录:/usr/share/doc(工作中主要是查看内核信息)
info [command]:在线查看帮助,注重于命令历史,版权信息等。
2.cd:change directory(切换命令)
cd:不加选项,返回到当前用户的宿主命令
-:返回到上一次的工作路径
~username:切换到username的宿主目录
pwd:print working directory:显示当前所处的工作目录
3.which 查看命令所在的位置
4.ls -i(显示文件所在的i节点index node)
1.库:library 系统调用(system call)API
2.windows中--dll,dynamic link library
linux---.so:share object
3.系统中:用户名(不识) UID(识别)
root:
student:
3A认证:
认证机制:authentication
密码认证:
1.符合复杂性要求(数字,大小写字母,特殊符号(至少3种))
2.密码要足够长(至少7位)
3:不要使用易记的密码(使用随机字符)
4:定期更改密码
5:重复密码的时间间隔要长
授权机制:authorization
审计机制:audition(日志)
4.linux登录信息在:/etc/issue
5.ls :list简写(列出目录)
6.Linux命令的分类:
内部命令:shell自带的命令
外部命令:在Linux文件系统中存在的一个应用程序
type:查看Linux命令类型
pwd is a shell builtin:builtin关键字说明该命令是内部命令
mkdir is /bin/mkdir:有路径显示的是外部命令 ls /bin/mkdir
路径:根用"/"表示(倒树状)
绝对路径:从根(/)开始的路径都是绝对路径,linux中只有一个根
相对路径:(有一个参照)以所处的工作目录为参照点(.代表当前路径 ..代表上一级路径 ~代表宿主目录)
7. ls(list) 只用ls--列出所有当前目录下的文件
ls -l(long):以长格式显示
-rw-------. 1 root root 1207 Nov 6 18:51 anaconda-ks.cfg
第一位:文件类型
-:代表普通文件(file)
d:代表目录(directory)
b:块设备(block):如硬盘,U盘等
c:字符设备(char):如键盘等
s:套接字文件(socket)
p:命名管道(pipe)
l:符号链接文件(symbolic link file)
第二到十位:权限位(rwx:读写执行)
234位:文件属主权限(owner)
567位:文件属组权限(group)
8910位:其他用户权限(other)
tom登录:新建一个文件a.txt---owner属主
1:代表文件硬链接的次数
第一个root:代表文件属主(owner)
第二个root:代表文件属组(group)
1207:文件的大小
Nov 6 18:51 :文件最后被访问的时间戳
文件的时间戳:(查看:stat命令) stat anaconda-ks.cfg
access:访问的时间戳
Modify:文件被修改的时间戳(修改文件数据,添加删除数据等)
change:文件被更改的时间戳(更改文件属性(权限等))
anaconda-ks.cfg:文件名
ls -l /boot/蓝色的是目录
-h:为文件大小添加单位(ls -lh)
-a:显示目录下所有文件(包括. .. 以.开始的隐藏文件)
-A:和-a相同,但是不显示.和..
-R:递归显示目录中的文件
-r:逆序显示目录内容(默认顺序)
坏境变量:内存中的命名空间
PATH变量:存放系统命令的路径,以":"隔开
查看PATH变量:echo $PATH(Linux中的命令严格区分大小写)
[root@www ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
如果在以上路径中没有找到相关的命令(该命令为外部命令),提示用户command not found
如果一个命令在以上多个路径中存在,系统会按照从前往后的顺序查找,查找到该命令后,后面路径的不再查找
hash:查看命令缓存及使用次数(提高查询速度)
inux根文件系统:
Linux文件类型:
-:普通文件
纯文本文件(ASCII):配置命令
二进制文件(binary file):命令
数据格式文件(data):/var/log/wtmp
d:目录文件
l:链接文件:软链接文件
设备文件:(/dev)
b:block块设备
c:character字符集设备:一次性读取,按顺序读取
s:socket套接字文件:通常用在网络上数据连接 IP:PORT
p:管道:特殊的文件类型,解决多个程序同时访问一个文件所造成的错误问题
查看文件类型命令:file
语法:file [option] file_name
Linux文件名限制:
1:单个文件或目录的名称不能超过255字符
2:文件命中不能包含特殊字符(/ 。 - +等)
OSI参考模型
物理层:介质与信号
数据链路层
网络层
传输层
会话层
表示层
应用层
Linux根文件系统:
Linux文件类型:
-:普通文件
纯文本文件(ASCII):配置命令
二进制文件(binary file):命令
数据格式文件(data):/var/log/wtmp
d:目录文件
l:链接文件:软链接文件
设备文件:(/dev)
b:block块设备
c:character字符集设备:一次性读取,按顺序读取
s:socket套接字文件:通常用在网络上数据连接 IP:PORT
p:管道:特殊的文件类型,解决多个程序同时访问一个文件所造成的错误问题
查看文件类型命令:file
语法:file [option] file_name
Linux文件名限制:
1:单个文件或目录的名称不能超过255字符
2:文件命中不能包含特殊字符(/ 。 - +等)
普通文件类型: 纯文本文件(ASCII):如配置文件
二进制文件(binary file):命令
数据格式文件(data):
设备文件(/dev): b(block):块设备文件
c(character):字符设备文件
s(socket)套接字文件:通常用于网络上数据连接,即访问某IP下某PORT里的数据,“IP:PORT”
p(管道):解决多个程序同时访问一个文件造成错误;
内核版本号:主、次、修订 3.6.28
linux不认识用户名 只认识UID
3A认证:
认证机制:authentication
授权机制:authorization
审计机制:audition(日志)
Linux登陆信息:/etc/issue
Linux命令分类:
内部命令:shell自带的命令
外部命令:在Linux文件系统中存在一个应用程序
type:查看linux命令你个类型
路径:
相对路径:
绝对路径 :从根开始的路径是绝对路径
进程:父子关系 进程状态 优先级
0-99:系统分配的优先级(用户不可控)
100-139:nice值(用户可控); -20-19;root用户可以任意调整nice值 普通用户只能调整0-19
高优先级进程:获取更多CPU运行时长 更优先让CPU执行
大O标准:O(1) O(n) O(logn) O(2的n次) O(n的2次)
搜索所有进程时间一样
搜索时间逐渐增长
进程分类:
和进程相关的进程:用户进程
和进程无关的进程:内核进程
ps aux结果解析:
USER:该进程是哪个用户发起的
PID:进程号 /proc目录存放着进程相关的信息 CENTOS7中 PID为1的进程是systemd CENTOS6中PID为1的进程是init
CPU:该进程占用CPU的百分比
MEM:该进程占用内存的百分比
VSZ:虚拟内存集(计算进程所占用物理内存时 物理内存包括共享库的时间)
RSS:常驻内存机(进程中不能被交换出去的数据)
TTY:运行在哪个终端
STAT:进程状态
START:进程启动时间
TIME:进程实际运行时长
COMMAND:该进程命令名称
ps -elF结果解析:
PRI:系统分配的优先级 用户不可更改
NI:nice值
调整nice值: 调整正在运行程序的nice:renice 【nice_num】PID
指定进程运行的nice值(让某个命令以指定nice运行) nice -n 【nice_num】命令
top结果解析:
第一行:当前系统时间 系统运行时长 登录系统用户个数 过去1分钟 过去5分钟 过去15分钟的平均负载
第二行:进程总数 正在运行的进程数 睡眠进程数 停止进程数 僵尸进程数
第三行:CPU相关信息 us:用户进程所占百分比 sy:系统进程所占百分比 ni:nice所占CPU百分比 id:空闲进程所占百分比 hi:硬件中断所占百分比 hi:软件中断所占百分比 st:被偷走的百分比【按1可查看每个CPU】
第四行:物理内存相关信息
第五行:交换分区相关信息
top交互式命令:
M:按所占内存百分比排序
P:按所占CPU百分比排序
T:按进程运行时长进行排序
c:是否显示command完整路径
l:是否显示top第一行
t:是否显示top第二第三行
m:是否显示内存的相关信息
k:杀死某个进程 输入后 后面加PID
pstree:查看进程树(查看父子进程关系)
pgrep:查看某个进程PID号 pgrep + 进程名称
pidof:同上
kill:杀死某个进程 向进程传递某个信号
kill -l :查看信号列表
信号列表:
1:SIGHUP:不停止服务的状态下 重新读取配置文件 并且应用配置文件中的设置
2:SIGINT:ctrl+c 终端某进程
9:SIGKILL:强制杀死某个进程
15:SIGTERM:终止某个进程
kill语法:
kill -sig_num PID
kill -sig_name PID
信号:进程之间的通讯(IPC)
内存共享等
killall:杀死整个进程树 用法 同kill
前台进程:利用终端执行的进程
后台进程:运行执行时 不利用终端执行的进程
前台--》后台
ctrl+z把正在运行的程序 调入后台 并停止运行
&:启动时 直接调入后台运行
jobs:查看后台运行的作业
+:下一次将要运行的后台作业
-:下一次将要运行的第二的后台作业
看到后台东西不想让他运行则 运用
kill %1(%+后台作业编号) %不能省略
bg:把进程调入到后台继续运行
fg:把后台进程调入前台运行 也需要加入作业编号
进程:应用程序或者数据在系统中按照顺序执行的活动过程 是操作系统架构的基础
磁盘中应用程序或者数据在内存中的映射
进程特性:动态性 并发性
内核:内存管理 网络管理 安全功能 驱动程序 进程管理等
CPU分环运行的:
0环:特权,运行内核(内核空间)
1-2环:库文件
3环:进程环(用户空间)
CPU在一个时间点 只能运行一个应用程序,CPU安装时间片 为应用程序分配运行时间
mkdir:mkdir /data :system call:系统I/O
tast struck:进程的数据结构(存放在内核中)
tast struce结构:状态 进程信息和内核栈 运行列表(指令等)MM(内存管理):memory mangement
PID:进程ID号 群组信息 用户信息 文件系统 文件描述符等等
MMU:memory mangement unit 内存管理单元
context switch:进程切换就是上线文切换
进程内存结构:forbidden:内核空间
program text:指令
data+bss:全局变量
heap:堆空间 运行时 调用的数据
shared library:共享库
stack:找空间 局部变量
thread:线程 轻量级进程
多进程:每个请求生成一个进程 进程切换
单进程:每个线程响应一个请求 线程所使用的资源是进程的
系统状态:
lock:死锁 自旋锁等
task_uniterruptible:不可中断的睡眠
task_interruptible:可中断的睡眠
stopped:停止状态(不能被调入CPU运行)
zombie:僵尸状态(进程结束后没释放内存和占用资源)(结束父进程 才能退出当前进程的僵尸状态)
linux设置哲学思想:
远程连接linux系统
shell的作用
使用者和计算机交互的接口
shell输入命令,shell吧命令传递给内核,内核把命令结果反馈给shell
内核的作用
进程的管理
内存管理
文件系统:存储设备上存储数据的方式方法:windows:NTFS/FAT32 linux:ext3 ext4 xfs等
网络功能:管理ip地址信息等
硬件驱动
安全功能
linux设计思想
有很多小程序组成,每个小程序完成单一功能,实现复杂的任务
一切皆文件:所以的外围设备或者其他的程序
尽量避免捕获用户接口
配置文件保存为纯文本格式
linux终端:多终端多任务
6个终端:ctrl+alt+F1--F6
linux界面:
GUI图形界面
CTI字符界面
切换图形界面 ctrl+alt+F7
命令格式等内容
操作系统概念:
体系结构:计算机 控制器 存储器 输入设备 输出设备
操作系统:带有很多外围程序的系统 笔记本硬件--win7(计算器/画图工具)
系统调用 syetem call
API application program interface 应用程序接口
不随操作系统一起启动应用程序:交互式应用程序
操作系统分类:微软公司 linux--unix