搞不懂是什么情况,有大佬帮忙看看嘛?
统一回复一下大家: 非常抱歉我的问题没有描述仔细,问题应该是出在docker容器上面,具体原因最后也没找到,因为急着解决就重新做了一个容器。感谢大家百忙之中抽空回复。
1
zlkent 2018-08-20 11:33:07 +08:00 1
chmod 777 ./92
|
2
Oi0Ydz26h9NkGCIz 2018-08-20 11:33:57 +08:00
权限
|
3
wenzhoou 2018-08-20 11:35:40 +08:00 via Android
大概是有不可见字符吧
|
5
openbsd 2018-08-20 11:43:49 +08:00
输入文件名时坚持用自动补全,这样可以避免很多问题
|
8
neoblackcap 2018-08-20 11:47:32 +08:00
@Geekgogo 你试试先重命名看看
|
9
Geekgogo OP |
10
billwsy 2018-08-20 11:52:57 +08:00 via iPad
92 带了颜色?
|
11
littleylv 2018-08-20 11:53:51 +08:00
很明显 92xxxxxx 那个文件跟 92 目录是在同一个目录里的
应该是 ls 92xxxxxxxxx 而不是 ls 92/92xxxxxxxxx |
12
littleylv 2018-08-20 11:55:37 +08:00
你 chmod 777 92 按下 tab 的时候出现 2 个可选项( 92/ 和 92xxxxxxxx ), 这两个就是在同一目录的
你文件放错目录了 8 mv 92xxxxx 92/ 先 |
13
meowoo 2018-08-20 11:55:48 +08:00 via iPhone
文件夹是你自己创建的么 可能设置了不可写 试试 chattr 加一下权限
|
15
liaohongxing 2018-08-20 11:57:10 +08:00
同样的命令 ubuntu server 16.04 lts 没有问题。
|
16
billwsy 2018-08-20 11:57:13 +08:00 via iPad
运行一下 ls -la | less 看看有没有异样?
|
17
Geekgogo OP @littleylv 跟 92 这个目录同一级有一个 92yyyyyy 的文件,92 目录下还有一个 92xxxxxx 的文件,我的目的是把 92yyyyy 这个文件移动到 92 目录下,但是不管是 mv,mkdir,cp,touch,chmod 等等操作都在报 not such file or directory
|
19
disk 2018-08-20 12:08:46 +08:00 via Android
用-i 把 inode 列出来进行操作行吗?
|
20
DANG 2018-08-20 12:34:16 +08:00
用绝对路径试试吧
|
21
KeepPro 2018-08-20 12:55:06 +08:00 1
|
22
jimages 2018-08-20 13:03:14 +08:00 via iPhone
selinux 关掉
|
23
est 2018-08-20 13:09:02 +08:00
有可能你当前路径已经被删了。先 cd ~ 或者 cd / 退回到一个存在的目录。
|
24
tonzeng 2018-08-20 13:13:26 +08:00
pwd
|
25
zjsxwc 2018-08-20 13:22:36 +08:00
起码发下` ls -la 92 ` 结果,让我们知道你文件当前的权限类型啊
|
26
tatelucky 2018-08-20 14:10:08 +08:00
ls -all
|
27
skylancer 2018-08-20 14:29:39 +08:00 1
神特么关 SELinux
|
28
lcdtyph 2018-08-20 14:38:29 +08:00
感觉是 chmod 的问题?
chmod 有 alias 吗, `alias | grep chmod` 看看输出。 还有把 92 换成绝对路径试试。 |
29
ryd994 2018-08-20 15:15:28 +08:00 via Android
|
30
zlkent 2018-08-20 15:21:37 +08:00
@ryd994 #29 楼主的命令打的是 chmod 777 92 提示错误,我按他写改成 chmod 777 ./92。只是加了./而已,误导谁了?
|
31
b821025551b 2018-08-20 15:31:44 +08:00 1
|
33
catror 2018-08-20 15:47:38 +08:00
直觉是文件系统的问题
|
34
xaviermoon 2018-08-20 15:56:32 +08:00
ldd 查看下,应该是少动态库的问题
|
35
jimages 2018-08-20 16:04:23 +08:00 via iPhone
@ryd994 关 selinux 是检查是不是 selinux 造成的权限错误…你说那么复杂…再加上 selinux 的配置本来就很复杂…先确定是不是 selinux 的问题再来确定该如何配置是不是对于新手来说是不是更加通俗易懂?
|
36
jimages 2018-08-20 16:19:14 +08:00
@skylancer
@ryd994 第一,为啥要直接关掉 selinux,看样子应该 linux 操作不是特别熟练,而且既然找不到问题的原因,是不是应该先找到问题的来源?关掉 selinux 就是先找到问题的来源,确定了是什么问题再来着手修复,你说了半天,还要让人家 audit.log 来找错误,还得把日志得看明白是不是让人家觉得望而生畏?是不是测试服务或者开发服务器都得把安全设置做好?比如,你要帮小白修电脑垃圾,你是觉得让人家装一个 360 直接清理垃圾,还是让人家去 CClean 下载安装软件,然后手把手教人家用软件,还是让他在一大坨 windows 设置找到系统自带的清理电脑的设置? 第二,我确实不想多打字,没有说清楚,如果 LZ 反馈关掉 selinux 之后问题解决了我们再说后续的设置的问题,这样是不是能够快速排查掉是不是 selinux 的锅?至少不用纠结是不是 selinux 的问题。 第三,你说的那么多命令,人家不会用怎么办?那你得教会人家用咯,而且人家是做开发不是做运维,为啥一定要把大把的时间经历放在代码以外的地方? 第四,生产服务器一定要在评估影响之后再去修改安全和权限相关的问题。 |
37
alen 2018-08-20 16:32:15 +08:00
试试管道
|
38
iwaifor 2018-08-20 17:06:41 +08:00
这个是容器环境么
|
39
yezhiye 2018-08-20 17:38:50 +08:00 via Android
怎么没人说开放 ssh 让我连上去啊😏
|
40
PulpFunction 2018-08-20 17:55:39 +08:00
tree 看一下啊
|
41
PulpFunction 2018-08-20 17:56:57 +08:00
demo 下 tree 一下 不就完事了?
不就美滋滋? |
42
cnrting 2018-08-20 18:48:30 +08:00 via iPad
严重怀疑有不可见字符
|
44
kaneg 2018-08-20 19:20:37 +08:00 via iPhone
根据你的主机名来看,这应该是个 docker 容器。我碰到过类似的问题,同一个 image 在不同的 docker 主机上创建出来,在 ubuntu 上创建出来的一切正常,而在 centos 上创建出来的文件用 rm -rf 删不掉,删完用 ls 会出现一堆问好。
到现在也没有查到具体原因,最后放弃 centos |
45
webjin1 2018-08-20 20:14:55 +08:00 via Android
lsattr -l 看看权限
|
46
realityone 2018-08-20 20:53:43 +08:00
你用的是不是 overlayfs
|
47
raysonx 2018-08-20 22:04:13 +08:00 via iPad
看楼主贴的主机名像是 docker 环境,如果是的话,这个目录是在 image 里还是挂载的 volume ?哪种类型的 volume ?
建议也发一下 docker info 的输出和 docker inspect 容器名 的输出。 |
48
tangweihua163 2018-08-20 22:28:53 +08:00
@b821025551b 你是在逗我么?
|
49
shanks 2018-08-20 22:48:13 +08:00
感觉是文件系统层面的问题
|
50
lfzyx 2018-08-20 23:01:15 +08:00
丨丨丨
你看得出我输入的是啥么 |
51
v2lf 2018-08-20 23:16:28 +08:00
是不是使用的 windows linux 子系统- - 我今天也碰到这个问题了
|
52
zyqf 2018-08-21 01:10:34 +08:00 via Android
推测可能是软链,对应文件被删,但软链的文件是可以存在的,但实际对这个软链操作都是无效的,因为实际文件不存在。个人推测。
|
55
wuweidong0107 2018-08-21 07:44:07 +08:00
先用 strace 命令看一下是哪一个系统调用返回的没有权限。
|
59
alen 2018-08-21 09:28:27 +08:00
docker 容器里把原本镜像文件夹或文件删除了,然后操作就会出现。
|
60
skylancer 2018-08-21 09:32:12 +08:00
@jimages
1. 卤煮操作的文件 99%不会是 SELinux 导致的问题,不是跟系统相关的东西我想不到上来就直奔 SELinux 的理由 2. 开 Permissive 看 aduit 更容易看出来是不是 SELinux context 的问题 |
61
zjsegzhf 2022-10-18 10:44:51 +08:00
@xaviermoon 感谢,我遇到了类似的问题。
最后检查了是缺少了动态库。 |