超级用户:
[root@localhost ~]#
root表示登陆的用户,localhost表示计算机名,~表示所处的目录,#是root用户的提示符。
普通用户:
[moling570@localhost root]$
Moling570表示登陆的用户,localhost表示计算机名,root表示所处的目录,$是普通用户的提示符。
~ 表示linux用户的家目录,每一个用户都有一个家目录,root的家目录/root, 普通用户的家目录如果未做指定,则在/home/下生成一个与之用户名相同的目录作为其家目录,如例子中的moling570用户家目录为/home/moling570
超级用户的ID:0,超级用户root是天神,可以进行任何操作。
必须由超级用户创建,在redhat上ID:500~65535,在linux上通常对用户进行分组管理,普通用户未被赋予权限的情况下,只能享有普通用户权限以及它所在组的权限。普通用户创建时默认情况下会生成一个和用户名相同的组。
系统用户是用于系统服务或系统程序的用户,拥有部分root权限,高于普通用户。
Linux用户组内成员拥有组内所赋予的所有权限。
用户配置文件:/etc/passwd
组配置文件:/etc/group
用户登陆身份:如果是远程终端登陆,则首次登陆时输入的用户名为登陆身份;如果是桌面环境,则查看桌面下的home图标,即开机登陆系统时输入的用户。
绝对路径:以/开头,“/”是根,所有以/开头的都是绝对路径,如/home/bin
相对路径:不以/开头,如 “cd ..”表示回到当前目录的上一层目录,如果当前目录在/下,
“cd home”也是相对路径,进入当前目录下的home目录,“.”表示本级目录,”cd ./home”.
Linux分区查看:fdisk –l
Linux系统是树形结构,最高一层是”/” 目录
字符设备:鼠标、键盘
块设备:硬盘,U盘
网络设备:网卡
目录文件:以”d”开头,directory
普通文件:以”-“开头
套接口文件:以”s”开头
块设备文件:以”b”开头,block
字符设备文件:以”c”开头
链接文件:以”l”开头
drwxr-xr-x 4 root root 4096 Mar 17 2017 vmware-tools-distrib
⑦ ⑥ ① ② ③ ④ ⑤
⑦文件类型及权限:第一个字母表示文件的类型,后9位表示文件的访问权限。
r:可读 ,w:可写,x:可执行,-:表示没有相应的权限;后9位3位为一组,按读写执行权限来排列。 -rw-r—r--:普通文件,所有者拥有可读可写权限,所属组和其他用户都只有可读权限。
⑥文件的连接数
①文件的拥有者
②文件的所属组
③文件的大小
④文件的最后一次修改时间
⑤文件的名称
1.历史命令滚动:↑↓
2.查看历史命令:history,使用历史命令: !ID, 如!739,然后回车
3.补全文件名、命令、路径:Tab键,如果含相同开头的文件名大于等于2个,一次Tab不会有反应,两次Tab之后会列出所有文件,再继续补全。
4.切换目录:cd = change directory,语法:cd 路径
5.显示当前目录:pwd
6.用户切换:su
1)root用户切换普通用户,不需要输密码,如su moling570
2)普通用户切换root用户,需要输入密码,如su,表示切换到root用户,su – 表示切换到root用户并切换至root用户的家目录
7.显示目录下的文件:ls
1)ls –l:以列表方式显示文件,等同于ll
2)ls –a:显示所有文件,包括隐藏文件,linux上的隐藏文件以”.”开头
3)ls –al:以列表方式显示所有文件
8.切换家目录
1)cd
2)cd ~
9.帮助命令:--help, man
1)用法:command --help ,如:ls --help,将帮助信息打印到屏幕上
2)man用法:man command,打开命令的帮助文件,退出帮助文件按q
10.查看系统时间:date
11.退回上一个登陆用户:exit
12.取消当前操作:Ctrl+c
13.注销系统:logout,redhat上无法使用,桌面环境使用快捷键注销:Ctrl+Alt+Backspace
1. 内置命令:运行速度快,不会产生进程,type命令查看时显示builtin
2. 外置命令:运行时会产生进程,大部分命令都是外置命令,type命令查看时显示file
3. 别名命令:是命令的别名
此处 ls='ls --color=tty'
查找命令位置:whereis –b command
环境变量,就是路径。Linux中环境变量多个路径之间用“:”分隔。
PATH=$PATH:$HOME/bin:/sbin
1. 创建目录:mkdir
1)创建单个目录:mkdir 文件夹名
2)创建多级目录:mkdir -p 文件夹/文件夹1/文件夹2/……
3)创建同级的多个目录:mkdir 文件夹1 文件夹2 文件夹3
2. 删除目录
1)删除空目录:rmdir 文件夹名
2)删除非空目录:rm -rf 文件夹名 ,-r表示递归,-f表示强制
3. 移动文件或文件夹:mv,相当于剪切+拷贝,并且可以重命名
用法:mv 源文件/源文件夹 目的文件/目的文件夹
1)重命名文件或文件夹
2)移动文件的同时修改名称
4. 切换目录:cd
5. 创建空文件:touch
用法:touch 文件名
6. 拷贝文件:cp,用法同mv,区别是cp之后源文件仍然存在
用法:cp 源文件/源文件夹 目的文件/目的文件夹
强制拷贝:cp -rf源文件/源文件夹 目的文件/目的文件夹
1. 文本编辑器:vi,vim是vi的升级版本
1)三种模式:
一般模式:vi打开某个文件不做任何操作时是一般模式
编辑模式:输入a,i, o进入文本编辑模式,在文本最下方出现--INSERT-- 字样
命令模式:在一般模式下输入:然后在后面输入相应的命令
模式之间切换:Esc键
2)打开文本文件:
打开文件光标置于首行:vi filename
打开文件光标置于末行:vi + filename
3)退出文本编辑器:
末行命令模式输入以下命令
:q 未做修改时,直接退出
:q! 修改以后不保存,强制退出
:wq 保存修改并退出
:wq! 保存修改并强制退出
4)vi新建文件
- vi新建文件时给出文件名:vi filename
- vi新建文件时不给文件名:vi 直接进入vi编辑器,编辑内容后保存退出时给文件名
5) vi中的移动
- 导航键移动
- 移动至段首:{
- 移动至段尾:}
- 向上翻一屏:Ctrl+b
- 向下翻一屏:Ctrl+f
6)vi中的查找替换
- 查找:从光标所在位置往下查找”/keyword”, 从光标所在位置往上查找”?keyword”;进入一般模式即可以直接查找;查找时移动,n,N
- 替换:
替换光标所在位置 --- :s/p1/p2/g p1:文本中需要替换的关键字,p2:替换后的关键字
替换指定行 --- :n1,n2s/p1/p2/g n1,n2是文本中从第一行开始的编号来确定的
替换所有 --- :%s/p1/p2/g
7) vi中的复制粘贴(在一般模式下进行)
复制光标所在行:yy
复制光标开始的指定行数:nyy n:表示需要复制的从光标开始的行数
粘贴:p 将光标移到需要粘贴的位置,按p进行粘贴
删除一行:dd
2. 文本模式查找命令:grep
1)用法:grep [-parameter] keyword filename
常见参数:
-c:只输出匹配行的计数。
-i:不区分大 小写(只适用于单字符)
-n:显示匹配行及 行号
-v:显示不包含匹配文本的所有行
2)grep下的精确查找:”\<keyword\>”
3) grep下的范围查找:[]
4) grep下的通配符
“.” 表示任意一个字符
“*” 表示0个或任意个字符
5)grep下管道符(|)的使用
管道符|连接多条命令,前一部分命令作为后一个命令的操作对象
3. 文本内容排序:sort,只对文本内容排序输出,不会改变文本内容。
用法:sort filename
4.文本内容统计:wc
用法:wc [-parameter] filename
5. 文件查找:find
用法:find [path] [-parameter] 文件名/用户名/组名 path:查找路径,不指定表示查找当前目录 find查找时的通配符:*, []
1)按文件名查找:-name
2)按用户查找:-user
3)按组进行查找:-group
4)按文件类型查找:-type x
X:d,l,s,b,c,f(普通文件)
5)find与-exec组合使用
格式:-exec command {} \; -exec之前命令的输出结果作为command命令的操作对象
1. 打印文件内容:cat
用法:cat [-parameter] finename
常用参数:
-v:显示控制字符
-n:显示行号
-b:不显示空白行
显示多个文件:cat filename1 filename2 filename3
2. 查看文件头部:head
用法:head [-n] filename n:指定显示的行数,不指定默认显示文本的前10行
3. 查看文件的尾部:tail
用法:tail [-n] filename n:指定显示的行数,不指定默认显示文本的末尾10行
追踪日志:tail -f filename,用于追踪日志的变化便于定位问题。
例子:追踪/var/log/secure 日志,另起终端链接该主机,用户登陆信息会记录到secure中。
4. 分页查看:more & less
用法:more -n1 +n2 filename n1:每页显示行数 n2:从第几行开始显示
More查看是翻页:回车、空格、b
Less用法更丰富,有点类似vi,在less查看时有参数可以使用。
5. 修改文件访问权限:chmod = change mode
用法:chmod [-R] 权限 file R:表示递归
r w x
1 1 1 ----7 可读可写可执行
1 1 0 ----6 可读可写不可执行
u:文件所有者 g:文件所属组 o:其他用户 a:所有人
增加权限: + (r,w,x)
删除权限:-(r,w,x)
直接赋予权限:=
6. 修改文件所属组:chgrp = change group
用法:chgrp [-R] 组名 文件名 R:表示递归
7. 修改文件的所有者:chown = change owner
用法:chgrp [-R] 用户名 文件名 R:表示递归
查看用户所属组:id, groups
8. 比较文件:diff
用法:diff [-parameter] file1 file2
生成补丁:diff -ruN file1 file2 > file3 以file2为基准,file3是补丁文件
打补丁:patch file1 file3
给当前目录所有文件打补丁:patch < file3
9. 查看文件类型:file
可以查看以下类型文件: - , d, b, c, l
10. 查找命令:which & whereis
用法:whereis command --- 查找二进制文件、源代码、帮助文件
用法:which command --- 只查找可执行命令
whereis -b = which
[root@localhost ~]# free -m 查看内存使用情况和交换内存(swap)使用情况
total used free shared buffers cached
Mem: 1010 534 476 0 31 342
-/+ buffers/cache: 160 850
Swap: 4031 0 4031
[root@localhost ~]# grep MemTotal /proc/meminfo 查看内存总大小
MemTotal: 1035140 kB
[root@localhost ~]# grep MemFree /proc/meminfo 查看空闲内存大小
MemFree: 487160 kB
[root@localhost ~]# uptime 查看负载,用户数,运行时间
09:26:15 up 28 min, 4 users, load average: 0.00, 0.04, 0.19
[root@localhost ~]# cat /proc/loadavg 查看系统负载
0.00 0.02 0.16 1/174 5508
df, du 查看系统磁盘使用情况
自动启动脚本文件:
/etc/rc.local
/etc/rc.sysinit
/etc/rc.d/init.d
用户配置文件:/etc/passwd
用户组配置文件:/etc/group
用户影子文件:/etc/shadow
用户组影子文件:/etc/gshadow
用户配置文件字段含义:
moling570:x:500:500:Gracia:/home/moling570:/bin/bash
① ② ③ ④ ⑤ ⑥ ⑦
①:用户名
②:密码标识符
③:用户ID
④:用户所属组ID
⑤:备注信息
⑥:用户的家目录
⑦:命令行解释器
查看系统支持哪些shell:cat /etc/shells
时间戳转换:date
1. 添加用户:useradd
用法:useradd [-参数1] 参数值 -[参数2] 参数值 …… 用户名
常用参数:
-c:备注信息
-d:登陆的家目录
-e:账户的有效期
-g:用户组
-u:用户ID
-s:指定登陆的shell
2. 用户切换:su
3. 用户密码修改:passwd
1)root用户给普通用户添加初始密码:passwd 用户名
2)root用户给自己修改密码:passwd
3)普通用户给自己修改密码:必须有一个初始密码,修改的密码必须满足一定的复杂度
4. 修改用户:usermod
用法:usermod [-参数1] 参数值 -[参数2] 参数值 …… 用户名
常用参数:
-c:备注信息
-d:登陆的家目录
-e:账户的有效期
-g:用户组
-u:用户ID
-s:指定登陆的shell
注意:修改用户登陆目录以后导致用户登陆错误,将用户配置信息手动拷贝到修改后的目录可以解决。
5. 删除用户:userdel
用法:userdel [-r] 用户名
-r: 删除时会同时删除用户家目录,不用r参数只删除用户信息
1. 添加组:groupadd
用法:用法:groupadd [-参数1] 参数值 -[参数2] 参数值 …… 组名
常用参数:
-g:指定组ID
-r:创建系统组
2. 修改组:groupmod
用法:groupadd [-参数1] 参数值 -[参数2] 参数值 …… 组名
3. 删除组:groupdel
用法:groupdel 组名
注意:组下如果有用户,无法删除,只能删除空组
系统管理命令
1. 注销系统:logout
Redhat:Ctrl+Alt+Backspace
2. 重启系统:reboot
3. 关机:shutdown
立即关机:shutdown now
4. 给命令取别名:alias
1)查看系统命令别名:alias
2)设置系统别名:alias 别名=’原始命令’
如:alias rm1=’rm -rf’
3)取消别名:unalias 别名
如:unalias rm1
5. 系统环境变量设置
1)显示环境变量值:echo $环境变量
2)使环境变量生效:export
要让环境变量永久生效,将环境变量设置命令添加到系统配置文件中。(/etc/profile)
6. 安装rpm包
1)安装:rpm -ivh 安装包
2)查询:rpm -qa | grep “keyword”
3)卸载:rpm -e 安装程序名
先查询是否安装相关软件,卸载时文件名是程序名
4)升级:rpm -Uvh 升级包名
7. 网络通信命令
1) 查看ip地址:ifconfig
修改ip地址:修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
service 服务名 status --- 查看服务状态
service 服务名 start --- 启动服务
service 服务名 restart --- 重启服务
service 服务名 stop --- 关闭服务
2) 查看端口状态:netstat
3)检查网络连通状态:ping
ping ip
ping 域名
8. 磁盘情况查看
1)查看系统磁盘使用情况:df
2)查看当前目录磁盘使用情况:du -h
9.系统资源查看
1)动态查看系统进程状态:top,相当于windows任务管理器
2)静态查询系统进程:ps
ps -aux | grep “process”
ps -elf | grep “process”
杀进程:kill process_ID
kill -9 process_ID
3)vmstat -
10. 文件打包压缩命令
1)gzip和gunzip:对文件逐个压缩或解压,压缩包后缀名为.gz
gzip -d file.gz = gunzip fil
2)bzip2和bunzip2:同gzip,但是压缩比高于gzip,压出的文件更小,压缩包后缀名.bz2
3) zip和unzip:能与windows系统兼容,压缩包后缀名为.zip
用法:zip [-parameter] file.zip file(directory)
解压:unzip file.zip
4) 打包命令:tar
- 打包:tar -cvf file.tar file(directory)
解包:tar -xvf file.tar指定目录解包:tar -xvf file.tar -C path C必须大写,path是指定的解包目录
打包并调用gzip压缩:tar -cvzf file.tar.gz file(directory)解压缩(gzip): tar -xvzf file.tar.gz指定目录解压:tar -xvzf file.tar.gz -C path