明明有写权限,为什么还是不能修改文件?

2021-02-03
阅读 3 分钟
8.9k
我们知道,Linux系统中的文件都可以设置读、写、执行权限。但是在实际操作中修改某些文件时,经常会出现明明当前用户拥有对该文件的写权限,却还是无法对文件进行修改。这种情况通常是因为文件被设置了不可修改属性。

编译安装PHP7及扩展

2018-08-25
阅读 12 分钟
10.5k
一、编译安装PHP1. 下载源码包并解压源码包地址:[链接]下载源码包当前PHP最新本门是7.4.14,下载 php-7.4.14 源码包 {代码...} 解压源码包解压缩 {代码...} 进入解压缩后的目录,查看解压的文件 {代码...} 2. 编译安装首先安装PHP编译安装所必须的软件 {代码...} configure指定安装目录,启用fpm {代码...} 编译安装 {...

Redis持久化 - RDB和AOF

2018-08-19
阅读 7 分钟
26.5k
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化Redis所有数据保持在内存中,对数据的更新将异步地保存到磁盘上。

Nginx实践篇(5)- Nginx代理服务 - 代理缓冲区、代理重新定义请求头、代理连接超时

2018-08-11
阅读 3 分钟
16.4k
proxy_buffering这个参数用来控制是否打开后端响应内容的缓冲区,如果这个设置为off,那么proxy_buffers和proxy_busy_buffers_size这两个指令将会失效。 但是无论proxy_buffering是否开启,对proxy_buffer_size都是生效的。

Nginx实践篇(4)- Nginx代理服务 - 正向代理和反向代理

2018-08-05
阅读 4 分钟
7.2k
一、代理简介 1. 代理 2. Nginx代理服务 3. 正向代理和反向代理 区别在于代理的对象不一样。 正向代理代理的对象是客户端 反向代理代理的对象是服务端 4. Nginx代理模块 ngx_http_proxy_module 语法 {代码...} URL支持: http:http://localhost:8000/uri/ https:https://192.168.1.111:8000/uri/ socket:http://unix:...

Nginx实践篇(3)- 跨域访问

2018-08-05
阅读 3 分钟
7k
Nginx通过添加 Access-Control-Allow-Origin、Access-Control-Allow-Methods、Access-Control-Allow-Headers 等HTTP头信息的方式控制浏览器缓存。

Nginx实践篇(2)- Nginx作为静态资源web服务 - 控制浏览器缓存、防盗链

2018-08-05
阅读 5 分钟
4.6k
一、控制浏览器缓存 1. 浏览器缓存简介 浏览器缓存遵循HTTP协议定义的缓存机制(如:Expires;Cache-control等)。 当浏览器无缓存时,请求响应流程 当浏览器有缓存时,请求响应流程 浏览器缓存校验过期机制 校验是否过期 Cache-Control(max-age)、Expires 协议中Etag头信息校验 Etag Last-Modified头信息校验 Last-Modif...

Nginx实践篇(1)- Nginx作为静态资源web服务 - 静态资源压缩

2018-08-04
阅读 4 分钟
6.8k
sendfile 是一种高效传输文件的模式.sendfile设置为on表示启动高效传输文件的模式。sendfile可以让Nginx在传输文件时直接在磁盘和tcp socket之间传输数据。如果这个参数不开启,会先在用户空间(Nginx进程空间)申请一个buffer,用read函数把数据从磁盘读到cache,再从cache读取到用户空间的buffer,再用write函数把数据...

Nginx基础篇(4)- Nginx请求限制和访问控制

2018-07-11
阅读 4 分钟
10.4k
HTTP请求建立在一次TCP连接的基础上。一次TCP连接至少可以产生一次HTTP请求,HTTP1.1版本以后,建立一次TCP连接可以发送多次HTTP请求。

Nginx基础篇(3)- Nginx常用官方模块

2018-07-11
阅读 3 分钟
3.7k
Nginx常用官方模块 {代码...} Nginx官方模块文档 1. ngx_http_stub_status_module 编译选项 {代码...} 作用 提供Nginx当前处理连接等基本状态信息的访问 语法 {代码...} 用法 在nginx配置文件中的 server 下配置 {代码...} 修改后重新载入配置文件nginx -s reload 在浏览器中访问 http://<ip>/nginx_status,会返...

Nginx基础篇(2)- Nginx基本配置文件和变量详解

2018-07-10
阅读 6 分钟
3.8k
Nginx基本配置文件和变量详解 1. 基本配置文件 /etc/nginx/nginx.conf {代码...} 2. Nginx变量 HTTP请求变量 arg_参数名:例如,$arg_userid,可以引用到请求参数userid的值 http_请求HEADER名:例如,$http_user_agent,可以引用到请求头信息User-Agent的值 sent_http_返回HEADER名:在响应客户端可添加header头信息 内...

Nginx基础篇(1)- Nginx的快速搭建和基本参数

2018-07-10
阅读 6 分钟
3k
Nginx的快速搭建和基本参数 一、Nginx简介 1. Nginx简述 Nginx是一个开源且高性能、可靠的HTTP中间件、代理服务。 2. 常见的HTTP服务 httpd - Apache IIS - 微软 GWE - Google tomcat - Sun 二、为什么选择Nginx 1. IO多路复用epoll 什么是IO多路复用 多个描述符的I/O操作都能在一个线程内并发交替地顺序完成,这就叫I/O...

Linux权限管理(4)sudo权限

2018-06-10
阅读 5 分钟
13.9k
我们信任您已经从系统管理员那里了解了日常注意事项。总结起来无外乎这三点: #1) 尊重别人的隐私。 #2) 输入前要先考虑(后果和风险)。 #3) 权力越大,责任越大。

Linux权限管理(3)Set UID权限、Set GID权限、Sticky BIT权限、chattr权限

2018-06-09
阅读 7 分钟
5.1k
SUID权限、SGID权限、SBIT权限 都属于极其不安全的权限,这里只是作为了解学习,在生产环境尽量不去设置这些权限! 一、Set UID权限(SUID权限) 1. Set UID权限的限制与功能 只有可执行的二进制程序才能设定SUID权限(对普通shell脚本无效) 命令执行者对该程序拥有执行(x)权限 命令执行者在执行该程序时获得该程序文...

Linux权限管理(2)ACL权限

2018-06-09
阅读 8 分钟
2.6k
Linux 下用户对文件的操作权限有 r-读, w-写, x-可执行三种。 而对linux 下的文件而言,用户身份分为:所有者, 所属组, 其它人三种。且文件的所有者,所属组都只能是一个。 所以在对文件分配用户的使用权限时,只能对这三种身份进行分配读、写、执行权限。

Linux权限管理(1)基本权限

2018-06-06
阅读 4 分钟
3.8k
一、文件类型与权限 -rwxrw-r-- 第1个字符表示文件类型 若是 - ,表示是普通文件 若是 d ,表示是目录 若是 l ,表示是链接文件 若是 b ,表示是设备文件里的可供存储的接口设备 若是 c ,表示是设备文件里的串行端口设备,例如鼠标、键盘 第2至4个字符是一组,表示所有者权限(u) 第5至7个字符是一组,表示所属组权限...

Linux 用户和用户组管理

2018-06-06
阅读 6 分钟
4.4k
信息之间以 : 分隔"密码" 字段存放的是加密后的用户密码:如果为空,则对应用户没有密码,登录时不需要密码;星号(*)代表帐号被锁定,不能登录;双叹号 (!!) 表示这个密码已经过期了;$6$ 开头,表明是用SHA-512加密;$1$ 开头,表明是用MD5加密;$2$ 开头,表明是用Blowfish加密;$5$ 开头,表明是用 SHA-256加密;"...

Linux Shell编程(9) - 流程控制语句(三)循环语句:for、while、until

2018-06-05
阅读 4 分钟
3.4k
一、for循环 1. 语法 语法1 {代码...} 语法2 {代码...} 2. 应用 批量解压缩脚本 for_tar.sh {代码...} 为 for_tar.sh脚本添加执行权限 {代码...} 运行脚本前 {代码...} 运行脚本后 {代码...} 批量创建用户 for_useradd.sh {代码...} 为 for_useradd.sh脚本添加执行权限 {代码...} 运行脚本 {代码...} 查看新增加的用户 {...

Linux Shell编程(8) - 流程控制语句(二)分支条件语句:if、case

2018-06-05
阅读 7 分钟
2.9k
一、单分支if语句 1. 语法 {代码...} 或者 {代码...} 单分支条件语句需要注意 if 语句使用 fi 结尾,和一般语言使用大括号结尾不同 [ 条件判断式 ] 就是使用 test 命令判断,所以中括号和条件判断式之间必须有空格 then 后面跟符合条件之后执行的程序,可以放在 [] 之后,用 ; 分隔。也可以换行输入,就不需要 ; 了 2. ...

Linux Shell编程(7) - 流程控制语句(一)条件判断式语句

2018-06-04
阅读 6 分钟
3.1k
一、两种判断格式 test 判断式 [ 判断式 ] (常用) 二、按照文件类型进行判断 测试选项 作用 -b 文件 判断该文件是否存在,并且是块设备文件 -c 文件 判断该文件是否存在,并且是字符设备文件 -d 文件 判断该文件是否存在,并且是目录 -e 文件 判断该文件是否存在 -f 文件 判断该文件是否存在,并且是普通文件 -L 文件 判...

Linux Shell编程(6) - 字符操作命令:cut、printf、awk、sed、sort、wc

2018-06-02
阅读 14 分钟
4k
一、cut 命令 cut命令用来显示行中的指定部分 1. 语法 {代码...} 2. 选项 -f 列号:第几列提取-d 分隔符:按照指定分隔符分隔列,若不设置,默认为制表符(Tab键) 3. 应用 处理以制表符分隔的成绩单 report.md {代码...} 查看 report.md 中的第二列 {代码...} 查看 report.md 中的第二列和第四列 {代码...} 处理以 : 分...

Linux Shell编程(5) - 正则表达式

2018-05-31
阅读 6 分钟
6.8k
一、正则表达式简介 1. 正则表达式是什么 {代码...} 2. 正则表达式与通配符 / 正则表达式 通配符 匹配主体 文件中的内容 文件名 匹配规则 包含匹配 完全匹配 常用命令 grep,awk,sed ls,find,cp 3. 通配符 * :匹配任意0到多个字符? :匹配任意一个字符[] :匹配括号中的一个字符 * 匹配任意0到多个字符 目录下有5个文件...

Linux Shell编程(4) - 环境变量配置文件

2018-05-29
阅读 5 分钟
3.4k
一、环境变量配置文件简介 1. 环境变量的作用 {代码...} 2. source 命令 修改配置文件后,注销重新登录之后才会生效,使用source命令可以不用重新登录,令配置文件生效。 语法 source 配置文件 或 . 配置文件 实例 {代码...} 3. 主要的环境变量配置文件 /etc/profile/etc/profile.d/*.sh~/.bash_profile~/.bashrc/etc/ba...

Linux Shell编程(3) - Shell 运算

2018-05-29
阅读 3 分钟
2.6k
-:给变量设定类型属性+:取消变量的类型属性-a:将变量声明为数组类型(array)-i:将变量声明为整数类型(integer) -x:将变量声明为环境变量-r:将变量声明为证只读变量 -p:显示指定变量的被声明的类型

Linux Shell编程(2) - Bash 变量

2018-05-28
阅读 7 分钟
3.3k
一、简介与分类 1. Bash 变量的命名规则 变量名只能包含字母、数字、下划线 变量名不能以数字作为开头 变量名区分大小写 变量名长度不超过255个字符 变量名在有效范围内必须唯一 2. 变量按照存储的数据类型分类 在Bash中,变量的默认类型都是字符串型 字符串型 整型 浮点型 日期型 3. 变量的分类 用户自定义变量 用户自...

Linux(CentOS)服务管理

2018-05-24
阅读 10 分钟
3.4k
CentOS6 以前可以通过修改 /etc/inittab 配置文件来修改系统默认运行级别CentOS7 中 /etc/inittab 配置文件已被弃用

Linux(CentOS)软件管理(3)- 源码包安装

2018-05-23
阅读 6 分钟
2.2k
一、源码包的特点1. 优点开源,如果能力足够,可以修改源代码可以自定义选择所需的功能软件是编译安装,所以更加适合自己的系统,更加稳定,效率更高卸载方便,直接删除安装目录即可,不会有任何残留2. 缺点安装过程步骤较多,尤其是安装较大的软件集合时(例如LAMP环境搭建)编译过程时间较长,安装比二进制安装时间长...

Linux(CentOS)软件管理(2)- yum 在线安装

2018-05-23
阅读 11 分钟
5.6k
手动安装RPM包时,解决依赖性问题是一个非常大的麻烦。如果所有RPM包都是用手工安装,则RPM包的使用难道较大。因此,Red Hat 系列推出了 “yum 在线安装” 方法。

Linux(CentOS)软件管理(1)- RPM包管理

2018-05-22
阅读 10 分钟
3.2k
软件包管理简介1. 软件包分类源码包二进制包(RPM包、系统默认包)2. 源码包优点开源,如果能力足够,可以修改源代码可以自定义选择所需的功能软件是编译安装,所以更加适合自己的系统,更加稳定,效率更高卸载方便,直接删除安装目录即可,不会有任何残留缺点安装过程步骤较多,尤其是安装较大的软件集合时(例如LAMP环...

Linux 网络管理(4) - 网络测试命令:ping、telnet、traceroute、tcpdump

2018-05-16
阅读 8 分钟
8.7k
ping命令用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。