在项目开发的时候,经常需要将文件上传到指定的目录下。

例如这次用thinkphp5的时候,需要在public目录下建立uploads目录用于存放上传的资源。

首先在命令窗口下输入:

1 mkdir uploads

当前,前提是当前执行命令的用户需要权限(假设此处有,非root)。

问题来了,即使你目录创建成功,对于项目来说并不算成功。

因为项目运行的时候上传文件以及新建目录的时候,可以看出是apache用户。

apache对该用户创建的目录并没有写入权限啊!

当然你可以继续输入:

1 chmod -R 0777

这样,的确apache是可以访问到了,但是,这样的话,实属下册~~

因为所有的人都可以来这里随便指点一下,随便来删除一下啊。

记得当初一个兄弟的遭遇:

刚进一间公司不久,然后执行了一下删除命令,没想到把该公司的一个项目的

所有上传的资源全部删掉了~悲催!此处先不讨论做该项目的人的部署问题。

如果操作得当,大家都可以避免。既然可以在开始就避免,何乐而不为呢!

然后我就用了当前的用户来执行修改文件夹的所有者,毕竟,如果可以将该

文件的所有者修改为apache的话,那只有root和apahce可以在该文件下操纵。

1 chown apache uploads

然后问题就来了,发现命令执行失败了。

1 chown: changing ownership of `uploads': Operation not permitted

刚看到的时候,纠结于一个问题:会不会系统没有apache用户。

就缺没去创建了~其实细想一下,那之前的项目是怎么上传的,文件的创建者还是apache

不行的朋友可以去执行一下:

1 cat /etc/passwd

就知道了

然后突然记起,我并不是在root帐号下操作的。

然后修改了一下命令:

1 sudo chown apache uploads

发现可以执行成功。证实猜想成功。这个命令的执行需要一定的权限。

权限的限制可能来自上级目录或者命令的本身。

修改文件的所有者失败(chown: changing ownership of `uploads': Operation not permitted)的更多相关文章

  1. 修改文件的所有者失(chown: changing ownership of `uploads': Operation not permitted)

    在项目开发的时候,经常需要将文件上传到指定的目录下. 例如这次用thinkphp5的时候,需要在public目录下建立uploads目录用于存放上传的资源. 首先在命令窗口下输入: mkdir upl ...

  2. chmod: changing permissions of 'xxx': Operation not permitted

    众所周知,在linux系统中,权限最大的是root账号,但凡修改涉及到系统本身的重大权限的操作,都需要root的权限才能操作.但是有些时候也有root干不了的事情. 比如:chmod: changin ...

  3. docker chown: changing ownership of '/var/lib/XXX': Permission denied

    Links: 1.entos7下docker Permission denied 2.查看 SELinux状态及关闭SELinux 方法: 1.查看SELinux状态sestatus -vgetenf ...

  4. linux ,mac连接, git pull error, chmod修改文件的权限/chown修改文件和目录的所有者

    去项目目录下 启动服务 setsid npm start & Mac下如何用SSH连接远程Linux服务器 https://www.cnblogs.com/littleBit/p/536280 ...

  5. chmod修改文件的权限/chown修改文件和目录的所有者

    ll指令的显示的信息为(当前目录下只有nameservice1一个目录): drwxr-xr-x 3 hdfs hdfs 4096 4月 14 16:19 nameservice1 上述信息分别表示: ...

  6. chmod修改文件的权限/chown修改文件和目录的所有者(转)

    ll指令的显示的信息为(当前目录下只有nameservice1一个目录): drwxr-xr-x 3 hdfs hdfs 4096 4月 14 16:19 nameservice1 上述信息分别表示: ...

  7. linux更改文件所有者命令chown命令的使用困惑

    [berry@berry:practice] ls -lrt total -rwxrwxrwx berry berry Dec : f1.txt -rwxrwxrwx berry berry Dec ...

  8. linux修改文件所有者和文件所在组

      chgrp  用户名    文件名  -R chown 用户名   文件名  -R -R表示递归目录下所有文件 以上部分已验证 一.修改文件所属组群——chgrp    修改文件所属组群很简单-c ...

  9. #Linux学习笔记# Linux文件的所有者、群组和其他人

    1.关于所有者.群组和其他人 在Linux系统中,每个文件都具有User.Group和Others三种身份的权限配置.那这三种身份分别表示什么意思呢?配置这三种身份的权限有啥意义呢? (1)文件所有者 ...

  10. Linux删除文件出现rm: cannot remove `.user.ini': Operation not permitted

    转自:https://blog.csdn.net/sinat_35861727/article/details/79040755 在Linux中rm -rf的威力是十分巨大的,特别是附带了 -f 参数 ...

随机推荐

  1. 分享某Python下的mpi教程 —— A Python Introduction to Parallel Programming with MPI 1.0.2 documentation

    如题: 无意中发现了一个Python下的mpi教程<A Python Introduction to Parallel Programming with MPI 1.0.2 documentat ...

  2. PyTorch显存机制分析

    参考: ======================================================= 在pytorch中有几个关于显存的关键词: 在pytorch中显存为缓存和变量分 ...

  3. SQL Server序列号的获取

    建表: 1 USE [JX_IMS_CPK] 2 GO 3 4 SET ANSI_NULLS ON 5 GO 6 7 SET QUOTED_IDENTIFIER ON 8 GO 9 10 CREATE ...

  4. CH03_运算符

    CH03_运算符 算术运算符 作用:用于处理四则运算 示例: #include <iostream> using namespace std; int main() { int a = 1 ...

  5. 如何查看mongodb的索引命中率

    如何查看mongodb的索引命中率 一.背景 现在mongodb使用率很高,经常会遇到查询慢时,就会创建索引,而有时候索引命中率又不高,下面来介绍下测试环境下如何查看索引命中率 二.方案 1.首先查看 ...

  6. 手把手教你搭建国产嵌入式模拟器SkyEye开发环境

    SkyEye介绍 SkyEye是一个开源软件(OpenSource Software)项目,中文名字是"天目".SkyEye的目标是在通用的Linux和Windows平台上实现一个 ...

  7. wifi基础(一):无线电波与WIFI信号干扰、衰减

    liwen01 2024.08.18 前言 无论是在产品开发还是在日常生活中,在使用无线网络的时候,都会经常遇到一些信号不好的问题,也会产生不少疑问: 为什么我们在高速移动的高铁上网络会变慢? 为什么 ...

  8. /etc/shells 文件解释

    /etc/shells 文件是 UNIX 和类 UNIX 操作系统中的一个文本文件,它列出了系统上认为是合法的.用户可以选择的 shell 的完整路径.这个文件对于系统安全和用户环境配置很重要. 以下 ...

  9. 测距技术 超声波、毫米波、激光雷达LIDAR

    超声波 技术成熟,成本之选 声波传输慢,高速时误差大 超声波雷达有40kHz.48kHz和58kHz三种,频率越高,灵敏度越高,探测角度越小.在工作状态,通过收发超声波,超声波雷达能以1-3cm精度测 ...

  10. 分布式缓存应用场景与redis持久化机制

    redis 参考目录: 生产级Redis 高并发分布式锁实战1:高并发分布式锁如何实现 https://www.cnblogs.com/yizhiamumu/p/16556153.html 生产级Re ...