day10设置文件权限
day10设置文件权限
yum复习
1、修改IP
[root@localhost ~]# sed -i 's#.200#.50#g' /etc/sysconfig/network-scripts/ifcfg-eth[01] # 可以同时修改两个网卡里两个网络ip
[root@localhost ~]# systemctl restart network # 重启网络
2、关闭selinux
/etc/selinux/config
临时关闭:
[root@localhost ~]# setenforce 0
永久关闭:
[root@localhost ~]# vim /etc/selinux/config
SELINUX=disabled
3、关闭默认的防火墙
[root@localhost ~]# systemctl disable --now firewalld
disable : 禁用
enable : 启用
--now :立即执行
4、安装web服务软件以及yum仓库软件
1)、清理yum源
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv ./*.repo* backup/
[root@localhost yum.repos.d]# ll
2)、安装base源和epel源
[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
[epel]
name="epel"
baseurl=https://repo.huaweicloud.com/epel/7/x86_64/
gpgcheck=0
更新源:
[root@localhost yum.repos.d]# yum clean all # 清除以前源
[root@localhost yum.repos.d]# yum makecache # 重新生成源
3)、安装初始化仓库软件
[root@localhost yum.repos.d]# yum install nginx yum-utils createrepo -y
5、建立仓库
[root@localhost yum.repos.d]# mkdir -p /yumrepo3/Packages
6、下载软件
curl -o /yumrepo3/Packages/zip-3.0-11.el7.x86_64.rpm https://repo.huaweicloud.com/centos/7/os/x86_64/Packages/zip-3.0-11.el7.x86_64.rpm
扩展内容:
curl 和 wget 之间的区别
curl 是用来访问链接的
-o : 指定保存文件的路径
curl -o /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
wget 是用来下载文件的
-O :指定下载文件的路径
wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
7、修改Nginx配置文件
[root@localhost ~]# vim /etc/nginx/nginx.conf
# 大致在42行左右
root /yumrepo3;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
8、重启Nginx服务
[root@localhost ~]# systemctl restart nginx
9、初始化yum仓库
[root@localhost ~]# createrepo /yumrepo3
10、编写yum源测试
[root@localhost yum.repos.d]# vim local.repo
[root@localhost yum.repos.d]# cat local.repo
[local]
name="local"
baseurl=http://192.168.15.200/
gpgcheck=0
11、更新yum源
yum clean all # 清除以前源
yum makecache # 重新生成源
12、测试安装
yum remove zip -y # 卸载zip
yum install zip -y # 安装zip
用户原理
用户的原理:
useradd test
Linux中一切皆文件
涉及用户的文件:
# 知识储备:
chown是用来修改用户及用户组 # chown test.test test
chmod 是用来修改权限 # chmod 700 test
1、[root@localhost ~]# vim /etc/passwd # 保存用户信息的文件
root:x:0:0:root:/root:/bin/bash
root:用户名
x:密码占位符
0:0:用户的uid和用户组的gip
root:用户的简介
/root:用户的目录
/bin/bash:该用户登录默认的解析器
2、[root@localhost ~]# vim /etc/shadow # 存放用户密码的文件
root:%7:18888:0:99999:7:::
3、[root@localhost ~]# vim /etc/group # 用户组文件
meng: x: 666:
组名称:密码占位符:组ID
4、[root@localhost ~]# vim /etc/gshadow # 组密码文件
meng: !: :
组名称:密码占位符:组ID
案例1:要求手动创建一个用户
第一步:
[root@localhost ~]# vim /etc/gshadow # 修改用户组的信息
test:!::
第二步:
[root@localhost ~]# vim /etc/group # 修改组文件
test:x:995:
第三步:
[root@localhost ~]# vim /etc/passwd # 修改用户密码文件
test:x:777:888:简介:/home/test:/bin/bash/
第四步:
[root@localhost ~]# vim /etc/shadow # 修改用户信息文件 test:$6$.xn34gDa$tKrGdL7ywlF2rGrhRaJWkVdzlQNOHY02IQ7JeN3lZg.4NL05ubNrbCGfGgb10y4dK/DC6G67akzO.SbYVLKkt.:18888:0:99999:7:::
[root@localhost home]# chmod 700 test # 修改权限的
[root@localhost home]# ll
total 0
drwx------ 2 test test 6 Sep 24 14:32 test
drwx------ 2 test01 test01 62 Sep 24 14:34 test01
[root@localhost home]# mkdir test
[root@localhost home]# chmod 700 test # 修改权限的
[root@localhost home]# chown test.test # 修改用户和用户组
[root@localhost home]# useradd tes567
[root@localhost home]# su - test01 # 切换到创建好的test01用户里
[root@localhost ~]# cd /home/test
[root@localhost test]# pwd
/home/test
[root@localhost test]# vim .bashrc # 编写变量
PS1="[\u@\h \W]\$
[root@localhost ~]# cd /home/
[root@localhost home]# cp /etc/skel/.* /home/test/ # 缺少调用文件
[root@localhost test]# chown test.test ./.* # 在test目录里修改权限
[root@localhost test]# ll -a
测试:
ssh test@192.168.15.200
文件权限
2、权限管理
超管用户不受普通权限的限制。
指的是操作文件权限
读内容的权限 可读 r 4
写内容的权限 可写 w 2
执行的权限 可执行 x 1
权限位的概念
rw- --- ---
属主 属组 其他人
7 0 0
设置权限的命令
1、设置用户及用户组
chown [选项] [用户].[用户组(非必须)] [路径]
[root@localhost test]# chown test.test test
选项:
-R(大写) : 递归设置
2、设置权限
以每个权限位为单位,把需要设置的权限的和使用chmod来设置。
格式:
chmod [选项(非必须)] [数字权限] [路径]
选项:
-R : 递归设置
案例
[root@localhost ~]# chmod 777 -R test/
7 7 7
rw- --- ---
属主 属组 其他人
路径对于文件权限的意义
3、路径对于文件权限的意义
linux一般是最小化安装,为了提高性能;linux一般是设置最小权限,为了提高安全性。
注:一定要使用普通用户。同时使用全路径来测试。
1)、读权限
当目录有可执行权限,文件有可读权限时,文件可读。
2)、写权限
当目录有可执行权限,文件有可写权限时,文件可写。
3)、可执行权限
文件可执行权限的最小权限是:文件夹有可执行权限而文件有可读可执行权限。
目录必须有可执行权限,文件才能拥有其他权限。
权限归属
4、文件权限的归属
可读 r
可写 w
可执行 x
属主 u
属组 g
其他人 o
案例1:给1.txt的属主可写权限
[root@localhost tmp]# chmod u+w 1.txt # 属主u加上可写权限
[root@localhost tmp]# ll
total 4
--wx------ 1 root root 4 Sep 24 18:52 1.txt
d--------- 3 test test01 15 Sep 24 19:16 a
案例2:给1.txt的属组可读权限
[root@localhost tmp]# chmod 040 1.txt
[root@localhost tmp]# chmod g+r 1.txt
[root@localhost tmp]# ll
total 4
--wxr----- 1 root root 4 Sep 24 18:52 1.txt
d--------- 3 test test01 15 Sep 24 19:16 a
案例3:在原权限不变的情况下,给一个其他人的可读权限
[root@localhost tmp]# chmod 140 1.sh # 一种方式
[root@localhost tmp]# chmod o+r 1.txt #权限归属方式
[root@localhost tmp]# ll
total 4
--wxr--r-- 1 root root 4 Sep 24 18:52 1.txt # --r:其他人权限
d--------- 3 test test01 15 Sep 24 19:16 a
案例4:去掉1.txt的其他人的可读权限
[root@localhost tmp]# chmod o-r 1.txt
[root@localhost tmp]# ll
total 4
--wxr----- 1 root root 4 Sep 24 18:52 1.txt # 去掉其他人的可读权限
d--------- 3 test test01 15 Sep 24 19:16 a
案例5:要求把1.txt加上可执行权限
[root@localhost tmp]# chmod +x 1.txt
[root@localhost tmp]# chmod +xw 1.txt # 同时加上xw权限,权限是可加可减的
注:如果不跟用户归属,则默认作用于所有的用户。
umask命令
umask命令用来设置限制新建文件权限的掩码。当新文件被创建时,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。
语法:
umask [权限] [文件名]
用法:
创建文件时,默认的权限时666,跟umask值计算,用666 减 umask值 如果得到的值为奇数,那么加一,偶数不变
创建文件夹,默认的权限时777,跟umask值计算,用777 减 umask值 如果得到的值为奇数,那么加一,偶数不变
[root@localhost ~]# umask 002
[root@localhost ~]# touch 111 # 用666属其他人权限-2,结果为偶数所以不便,反之+1
[root@localhost ~]# ll
total 4
-rw-rw-r-- 1 root root 0 Oct 15 15:46 111 # 权限为664
day10设置文件权限的更多相关文章
- mac设置文件权限问题
在使用mac时,经常我们遇到相关文件不能使用的情况,其实大多数情况都是,文件权限问题. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操 ...
- Java设置文件权限
今天遇到一个问题: java写的API,ppt转图片生成的目录及文件 在使用php调用API完成后,再使用php进行删除时,遇到了删除失败的问题(php删除的部分 查看) 部署的环境是Ubuntu ...
- C#设置文件权限
在开发中,我们经常会使用IO操作,例如创建,删除文件等操作.在项目中这样的需求也较多,我们也会经常对这些操作进行编码,但是对文件的权限进行设置,这样的操作可能会手动操作,现在介绍一种采用代码动态对文件 ...
- CentOS 7 使用 ACL 设置文件权限
Linux 系统标准的 ugo/rwx 集合并不允许为不同的用户配置不同的权限,所以 ACL 便被引入了进来,为的是为文件和目录定义更加详细的访问权限,而不仅仅是这些特别指定的特定权限. ACL 可 ...
- Linux设置文件权限和归属
前言:在Linux文件系统的安全模型中,为系统中的文件(或目录)赋予了两个属性:访问权限和文件所有者,简称为“权限”和“归属”.其中,访问权限包括读取.写入.可执行三种基本类型,归属包括属主(拥有该文 ...
- Linux下设置文件权限
文件权限示意图: 第一步:在终端创建用户 增加用户 useradd 用户名 设置密码 passwd 用户名 通过上述两条命令创建a1,a2两个用户. 第二步:在根目录使用管理员账号创建一个文件 在使用 ...
- ubuntu中chown设置文件权限
参考文献: http://yanwen.org/doc/chown.html http://www.cppblog.com/deercoder/articles/110129.html 可以通过ls ...
- linux 批量设置文件夹755 文件644权限
linux 批量设置文件夹755 文件644权限 文件来源 http://www.111cn.net/sys/linux/109724.htm 本文章来为各位介绍一篇关于linux 批量设置文件夹75 ...
- Shell文件权限和脚本执行
一.预备知识 1.shell的作用 2.常识 (1)Tab键自动补全 使用Terminal时,输入命令的前几个字母,敲tab会自动补全命令或文件名.目录等. 好处:操作速度更快:不容易出错: ...
随机推荐
- git merge远程合并
当某个分支上的开发工作完成后需要将其合入主分支master 但是在提交合并前我们自己最好做一次衍合,目的是检测是否有冲突的风险,如果有应该在本分支先解决冲突然后在提交合并. 否则解决冲突的工作就全部转 ...
- C#笔记1__命名空间 / 常量 / object / is、as、...?... :...
命名空间:namespace Test1{ ... } 引用命名空间:using System; using 别名=命名空间 常量:const double PI=3.14; using System ...
- hdu 5094 Maze (BFS+状压)
题意: n*m的迷宫.多多要从(1,1)到达(n,m).每移动一步消耗1秒.有P种钥匙. 有K个门或墙.给出K个信息:x1,y1,x2,y2,gi 含义是(x1,y1)与(x2,y2)之间有gi ...
- cf 24 Game (观察+.. 想一想)
题意: 给一个数N,从1到N. 每次取两个数,三种操作:加.减.乘,运算完得一个数,把那俩数删了,把这个数加进去. 重复操作N-1次. 问是否可能得到24.若可以,输出每一步操作. 思路: 小于4,不 ...
- 一次fork引发的惨案!
"你还有什么要说的吗?没有的话我就要动手了",kill程序最后问道. 这一次,我没有再回答. 只见kill老哥手起刀落,我短暂的一生就这样结束了··· 我是一个网络程序,一直以来都 ...
- 开发属于自己的包,并上传到npm上
1.DIY开发包 1.1符合标准的包结构 一个规范的包,它的组成结构,必须符合以下3点要求: 包必须以单独的目录而存在 包的顶级目录下,必须包含package.json这个包管理文件 package. ...
- anaconda无法launch应用(无法l打开任何应用)的问题解决 (点击应用无反应)
遇到了anaconda 无法launch 任何应用. 重装也不行. 先说我最终的解决方法(在官方文档中找到): 1. 启动 anaconda prompt , 输入 conda remove anac ...
- vue-router 4 你真的熟练吗?
虽然 vue-router 4 大多数 API 保持不变,但是在 vue3 中以插件形式存在,所以在使用时有一定的变化.接下来就学习学习它是如何使用的. 一.安装并创建实例 安装最新版本的 vue-r ...
- prometheus(2)之对kubernetes的监控
prometheus服务发现 1.基于endpoints的service注释服务自动发现. 2.基于pod注释的服务自动发现 3.基于consul注册的服务自动发现 4.手动配置服务发现 5.push ...
- Java try catch语句块中try()的括号中代码作用
了解过Mybatis,都知道DefacltSqlSession是线程不安全的.每次执行查询都需要新建一个sqlSession.因此官方给的建议写法如下: Mybatis3 从 SqlSessionFa ...