linux目录
一.Linux目录结构
根目录的子目录
目录 | 内容 |
---|---|
/bin | bin是Binary的缩写, 这个目录存放着最经常使用的命令,由系统、系统管理员和用户共享 |
/boot | 这里存放的是启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件 |
/dev | dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的 |
/etc | 大多数重要的系统配置文件都在/etc目录下,该目录包含的数据类似于Windows控制面板中的数据 |
/home | 普通用户的家目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的 |
/lib | 库文件,包括系统和用户所需要的各种程序的文件 |
/lost+found | 每个分区在其上目录中都有一个lost+found。故障期间保存的文件在这里 |
/media | linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下 |
/mnt | 外部文件系统的标准挂载点,例如CD-ROM(光驱)或数码相机 |
/opt | 通常包含额外的和第三方软件。这是给主机额外安装的大型应用程序所放置的目录 |
/proc | 包含有关系统资源信息的虚拟文件系统。这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件 |
/root | 该目录为系统管理员,也称作超级权限者的用户家目录。注意根目录 / 和根用户的主目录 /root 之间的区别 |
/sbin | s就是Super User的意思,这里存放的是系统管理员root使用的系统管理程序 |
/tmp | 系统使用的临时空间,在重新启动时清理,所以不要使用它来保存任何工作!该目录对于所有用户都可以访问,不要把重要文件放置于该目录 |
/usr | 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录 |
/var | 用户创建的所有可变文件和临时文件的存储空间,如日志文件(一般是/var/log)、邮件队列、打印假脱机程序区、从Internet下载的文件的临时存储空间,或在刻录CD之前保存它的映像。 |
二.Linux基本操作命令
常用命令按功能分类介绍
1.目录操作命令cd,pwd,ls,mkdir,rmdir,du
cd | 切换路径 |
pwd | 展示当前路径 |
ls | 展示目录 |
mkdir | 创建目录 |
rmdir | 删除空目录,rm -rf filaname |
du | du -sh统计多少MB,G… |
which | 命令在什么位置 |
touch | 创建文件 |
mv | 移动文件 |
cp | 复制文件 |
rm | 删除文件 |
file | 查看文件类型 |
who | 当前用户登录的信息 |
w | 当前用户登录的信息,以什么程序登录的 |
cat | 查看文本文件内容,将文本文件内容全部打印到标准输出 |
tac | 倒叙输出 |
more | 分页文件内容 |
less | 分页显示文件内容 |
tail | 查看文件尾部n行 |
head | 查看文件头部n行 |
shutdown | 关机 shutdown -h now立刻关机 shutdown -h +10 10分钟后关机 shutdown -c取消关机 |
reboot | 重启系统 |
lscpu | 查看cpu信息 |
date | 打印操作系统时钟 |
clock | 打印硬件时钟 |
三.bash通配符
常用通配符
* | 匹配任意长度字符 |
? | 匹配任意字符 |
[] | 匹配指定字符范围内的任意单个字符 |
[^] | 匹配范围外的 |
一些快捷键
ctrl + a 将关闭移动到命令行开头
ctrl + c 结束正在运行的程序并返回提示符
ctrl + d 退出当前shell会话,相当于exit
ctrl + e 将光标移动到命令行末尾
ctrl + l clear
shift+pageup 浏览器终端缓存区
四.用户和权限管理
用户组
(1) 存放文件 /etc/group
一个用户 和用户组 多对多
(2) 组文件格式,共4个字段
组名 组密码位 gid组编号 以本组作为附加组的用户名,用逗号分割
新建用户组 groupadd grpname
删除 groupdel grpname
用户
(1) 存放文件: /etc/passwd
文件中一个用户一行记录
(2) 用户文件格式,共7个字段
用户名 用户密码位 uid用户编号 gid主组编号 用户备注信息 家目录位置 用户使用shell解释器的位置
例如:linux1❌1000:1000:linux1:/home/linux1:/bin/bash
用户类型
(1) 超级用户root 权限特别大
uid =0,gid =0
(2)普通用户
uid>=500 一般权限系统管理,权限有限
(3)程序用户
1<=uid<500 仅仅使用系统服务器资源,不能登录系统
(4) 判定程序用户能否登录到操作系统
不能登录:shell为/sbin/nologin
可以登录:shell为/bin/bash
添加用户
useradd [-u UID] [-g GID] [-d HOME] [-s] [-c] 用户名
-u 自定义UID用户编号,不指定系统自动编号
-g自定义主组GID组编号或组名,前提是这个组已经存在,若不指定主组会创建一个和用户名一样的组作为用户主组
-G 自定义附加组GID组编号或组名,用逗号隔开,前提是这些组已经存在
-d 指定家目录,若不指定默认为/home/用户名
-s 自定义shell 若不指定默认为/bin/bash
-c 用户备注信息,若不指定默认为空
实例:创建wang用户主组为g1,附加组为zhang和root
useradd -u 600 -g g1 -G zhang,root wang
查看用户星系id用户名
(1) 查看当前登录用户信息:id
(2) 查看指定用户星系: id zhang,id wang
修改用户 usermod
usermod [-u UID] [-g GID] [-d HOME] [-s] [-l] 用户名
-l 选项修改用户名
示例:把用户名wang 改为wang1
删除用户 userdel [-r] 用户名
-r 选项,在删除用户的同时删除其家目录和相关系统邮件
切换用户 su -用户名
可用添加选项 “-”,会执行要切换用户的相关环境变量
给用户设置登录密码 passwd [用户名]
修改当前用户登录密码 passwd (如果普通用户设置密码需要较高密码复杂度)
修改指定用户登录密码 passwd zhang(root 用户操作)
密码文件
/etc/passwd 文件 ,由于该文件允许所有用户读取,易导致用户密码泄露,因此LInux系统将用户的密码信息从
/etc/passwd 文件中分离出来,并单独放到了/etc/shadow 文件中
/etc/shadow 文件只有root用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性
存放位置 /etc/shadow 每一行对应一个用户的密码信息,共9字段
字段说明:
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段
权限
权限类别
权限分为三种,分别是读,写,执行
r(read),w(write),x(execute)
权限作用对象:文件(Linux一切皆文件)
显示文件的权限: ls -l 或 ll (redhat系列发行版linux,默认为ls -l 创建了别名ll)
用户的不拥有某位权限,则使用 “-” 占位
例如:r-x 表示读和执行的权限;r–表示只读权限;rw-表示读写权限
Linux使用UGO权限模型进行权限控制
U 代表文件所属用户
G 代表文件所属用户组
O 代表所属用户和所属用户组的用户之外的其他用户
ls -l 文件属性信息第一字段后9为代表权限
9位权限3位1组可以分成3组,分别对应文件的UGO
例如:-rw-rw-r–. 1 wang g1 0 11月 20 14:35 wangfile
文件的所属用户是wang(U),其权限是rw-
文件的所属用户组是g1(G),其权限是rw-
文件的属主wang和g1组的用户以外的其他用户(O),其权限是r–
规定 4 代表 r ;2 代表 w ;1 代表 x;0 代表 -
这样不同的权限组合可以用1个8进制0到7的数字来表示
文件对应UGO的权限可以用3个数字来表示
例如:-rw-rw-r–. 1 wang g1 0 11月 20 14:35 wangfile
其权限为: 6 6 4
修改权限使用chmod命令字
提供作用相同的三种方式
1.赋值法:
chmod u=rwx,g=rw,o= filename
chmod a=rwx filename
2.加减法:
chmod u+r,u-x,g+w,g-x,o+r filename
chmod a+x filename
3.权重法:
chmod 755 filename
chmod 664 filename
chmod 777 filename
chmod 000 filename
可以使用-R选项级联修改目录下的所有文件的权限
例如:修改 /u01 下所有目录及文件的权限为750
chmod -R 750 /u01
修改文件的属主和属组使用chown命令字
只能root用户来做
chown [-R] UserName[{😐.}GroupName] FILENAME
选项-R级联修改目录下的所有文件的属主和属组
例如:修改 /root/install.log 的属主为 zhang ,属组为 g1
chown zhang:g1 /root/install.log
例如:仅修改 /root/install.log 的属主为root,属组不变
chown root: /root/install.log
权限对于目录和非目录文件有所区别
创建目录默认权限为755,普通文件为644
目录至少要有 r 和 x 权限才能正常进入目录
五.压缩与解压缩命令
压缩与解压缩命令 zip unzip
zip压缩文件或目录
-r 压缩目录
-y 把软连接作为文件压缩,但不压缩软链接所指向的文件
示例:压缩/etc下的所有文件到/tmp下的etc.zip文件中
zip -ry /tmp/etc.zip /etc
unzip解压缩zip压缩的文件
-d 指定解压缩的路径
示例:解压缩/tmp下etc.zip到/root
unzip -d /root /tmp/etc.zip
压缩与解压缩命令 gzip gunzip
gzip 压缩文件或目录
-N N为数字1到9,为压缩率,9最高,默认6
-r 压缩目录
默认压缩之后不会保留源文件,源文件变为*.gz格式
示例:压缩/root/install.log文件
gzip /root/install.log
ls /root/install.log*
gunzip解压缩gzip压缩的文件
示例:解压缩/root下install.long.gz
gunzip /root /install.log.gz
压缩与解压缩命令 bzip2 bunzip2
bzip2 压缩文件 (压缩率比gzip高)
-N N为数字1到9,为压缩率,9最高,默认6
默认压缩之后不会保留源文件,源文件变为*.bz2格式
示例:压缩/root/install.log文件
bzip2 /root/install.log
ls /root/install.log*
bunzip2解压缩bzip2压缩的文件
示例:解压缩/root下install.log.bz2
bunzip2 /root /install.log.bz2
归档命令 tar
tar将多个离散文件或目录进行打包为一个普通文件
1.归档
tar 选项 归档文件名 源文件名或目录
2.释放归档
tar 选项 归档文件名 -C 目标目录
3.常用选项
-f 如果使用tar命令,必须要用-f选项,而且要放到最后面
-c 创建新归档
-x 释放归档 extract
-z 使用gzip的方式进行压缩或解压缩
-j 使用bzip2的方式进行压缩或解压缩
-v 归档进度可视化 (verbose)
示例1:将/etc整个目录归档为/tmp/etc.tar文件
tar -cvf /tmp/etc.tar /etc
示例2:将/etc整个目录归档为/tmp/etc.tar.gz文件,用gzip压缩文件
tar -zcvf /tmp/etc.tar.gz /etc
示例3:将归档文件/tmp/etc.tar还原到/root目录下
tar -xvf /tmp/etc.tar -C /root
示例4:将归档文件/tmp/etc.tar.bz2还原到/root目录下
tar -jxvf /tmp/etc.tar.bz2 -C /root
zar,gzip,tar,bar2区分
zar
zip命令用来对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件;
在linux压缩后的文件,基本都可以在Windows系统中解压;Windows中压缩的文件,在Linux中不一定可用,但是zip格式的压缩文件,可以做到可用;
zip的压缩比不是很高;
gzip
gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
tar
打包目录,将目录打包成一个文件,同时可以压缩,压缩后的拓展名为.tar.gz,这个拓展名在下载Linux相关安装包时很常见。
bar2
bzip2命令用于压缩“.bz2”格式的压缩包,是gzip的升级版本,可以保留原文件;
bzip2的压缩比比较高,可用于压缩较大文件的压缩;
bzip2也是只对文件进行压缩,如果相对目录进行压缩的话,可以配合 tar 命令使用,使用 tar -jcvf 文件名 完成打包压缩。
链接命令 ln
ln命令用来给文件或目录创建链接文件,类似于windows系统的快捷方式
-s 创建软链接
-v 可视化
示例:在/root下为目录/var创建软链接link_var
ln -sv /var /root/link_var
测试网络连通性命令 ping
ping命令可以用来测试网络的连通性
-c 次数
-w 等待秒数,优先级高于-c
示例:测试百度网址的连通性,发生4个ping包
ping -c 4 www.baidu.com
示例:测试百度网址的连通性,发生4个ping包,2秒后停止ping
ping -c 4 -w 2 www.baidu.com
修改内容vi
安装应用程序 rpm
redhat,centos,oracle linux使用rpm命令字安装制作为rpm命令安装制作为rpm格式的应用程序
查看已安装的软件名
rpm -q 软件包名
查看已安装软件包的详细信息
rpm -qi 软件包名
查看已安装软件包的配置
rpm -qc 软件包名
查看以安装软件所依赖的软件包及文件
rpm -qR 软件包名
安装包名
rpm -ivh 包名1 包名2 …
删除RPM包:rpm -e 包名
安装应用程序 yum
相对于rpm安装方式yum解决rpm包间依赖关系使安装方便和快捷
安装rpm包时仍然使用rpm
常用
在线安装/升级软件包
yum -y install 软件包名
删除软件包
yum -y remove 软件包名
案例
维护中…