首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

强制编辑文件文件主和组自动改变

今天研究文件权限的时候发现了下面一个奇怪的问题,问题如下: 为什么对文件的权限是r--权限 对文件所在目录的权限是rwx权限 我们也能强制保存文件,但是保存之后的文件主和就变了?...Permission denied [zsf@shoufu test]$ vim test.txt #强制保存 [zsf@shoufu test]$ ll -d test.txt #保存之后发现主和组就变了...-rw-r--r--. 1 zsf zsf 36 Aug 6 19:11 test.txt 请教五行哥得以解答: 原因,因为vim创建文件的时候是先生成一个隐藏的文件,然后等到保存的那一个时刻,拿这个隐藏的文件直接替换原文件...vim file 编辑这个文件,然后不要退出编辑 在另外一个终端上查看这个文件所在的目录下面的隐藏文件 发现.file.swp这么一个文件, 这就是那个临时的隐藏文件 这个时候就得以解决上面那个问题,...因为我们强制保存的时候,相当于那这个隐藏的文件去覆盖以前的文件了,我们又是使用zsf这个用户编辑的,所以现在这个文件就相当于是zsf这个创建的这个文件,所以文件主和组会改变 总结: 想问题不要那么的片面

1.1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux权限和组管理深入解析

    Linux中的权限与组管理 引言 Linux 是一种广泛使用的开源操作系统,它基于 Unix 的设计理念,强调安全性、稳定性和灵活性。...在 Linux 中,文件系统的管理和访问控制是非常关键的概念,它们通过文件权限和组管理得以实现。本文将详细介绍 Linux 中的权限和组管理机制,以及相关的命令和实践技巧。...Linux 文件系统简介 Linux 文件系统是一个层次结构,根目录 / 是整个文件系统的起点。在这个树形结构中,每个目录都是一个节点,每个文件都位于某个目录之下。...权限基础 在 Linux 中,文件和目录的权限由三个部分组成:所有者权限、组权限和其他人权限。每个部分又有三个子权限:读(read)、写(write)和执行(execute)。...总结 本文介绍了 Linux 中权限和组管理的基本概念、命令和实践技巧。理解这些概念和命令对于有效管理 Linux 系统的安全至关重要。

    13600

    Linux系统用户与组管理

    Linux 账号的时刻了,对于 Linux 有一定的熟悉度之后,再来就是要管理连上 Linux 的账号问题了,这个账号的问题可大可小,大到可以限制他使用 Linux 主机的各项资源,小到甚至一般账号的密码订定守则都可以进行规定...Identify 组标识号) 初始组(私有组),附加组(公共组) Linux 用户文件解析 虽然我们登陆 Linux 主机的时候,输入的是我们的账号,但是其实 Linux 主机并不会直接认识你的『账号名称...文件解析 认识了账号相关的两个文件 /etc/passwd 与 /etc/shadow 之后,你或许还是会觉得奇怪,那么群组的配置文件在哪里?...组管理命令 了解了账号的新增、删除、更动与查询后,再来我们可以聊一聊群组的相关内容了,基本上,群组的内容都与这两个文件有关:/etc/group,/etc/gshadow,群组的内容其实很简单,都是上面两个文件的新增...◆groupadd 添加组◆ groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中,其参数我们会在下面进行说明.

    3.9K10

    【DB笔试面试743】在Oracle中,如果$ORACLE_HOMEbinoracle文件或权限出了问题,该如何修复呢

    ♣ 题目部分 在Oracle中,如果oracle用户下的$ORACLE_HOME/bin/oracle文件或权限出了问题,那么该如何修复呢?...♣ 答案部分 如果可执行文件$ORACLE_HOME/bin/oracle的或权限设定出了问题,那么可能会造成很多问题。...例如:无法登陆到数据库、ora-600错误、“TNS-12518: TNS:listener could not hand off client connection”、“Linux Error: 32...解决办法很简单,可以在grid用户下运行setasmgidwrap命令重新配置$ORACLE_HOME/bin/oracle可执行文件的权限和或者直接将oracle文件的权限修改为6751。...$ORACLE_HOME/bin/oracle可执行文件正确属应该是oracle:asmadmin,并且权限必须有s才可以,如下所示: [root@orclalhr ~]$ which setasmgidwrap

    1.6K20

    linux下MBR方式分区非分区扩容文件系统

    背景: 使用腾讯云云服务器时,将扩容部分的容量划分至原有分区(MBR),使用官网提供的脚本扩容时,如果分区号不是分区1(如vdb1、vdc1时),无法使用脚本一键完成文件系统扩容 注意:做快照!...针对磁盘操作先做快照备份 示例: 分区为主分区 vdb2 时,使用脚本扩容直接报错了,提示非分区(其实这里还是分区,只不过不是第一个分区) root@BJ-CentOS7 ~ # lsblk NAME...执行 resize2fs /dev/vdb1 扩容文件系统 6....挂载校验,文件系统容量扩容成功,之前的数据也没受影响 ---- 扩容示例1:分区,分区号不为1,扩容前分区为主分区vdb2 root@BJ-CentOS7 ~ # ls /vdb2/ 10.txt...part / vdb 253:16 0 10G 0 disk └─vdb2 253:18 0 90M 0 part /vdb2 root@BJ-CentOS7 ~ # df -h 文件系统

    3.9K10

    Git删除文件

    Git中,删除文件也属于修改操作,因此,要想删除起作用,那么之后也要git commit。在git中删除一个文件使用git rm命令。 在下图中,首先创建一个新文件,然后添加到仓库去。 ?...现在,我们来删除这个文件,从代码仓库中。使用如下命令: git rm test 执行该命令成功以后,输出如下: ?...需要注意的是,该命令也会把当前工作区下的文件直接删除,而不是只删除仓库中的文件。 ? 现在,提交这次修改到仓库。 ? 那么test将会在当前版本被删除,之前的版本依旧有test文件存在。不信?...git rm可以删除一个文件,你不要需要怕,只要你在删除之前,提交这个文件到过代码仓库,那么删除之前的那个版本依旧会保存该文件。所以大胆点干活,别怕。

    1.7K20

    Git Base For Linux

    www.cnblogs.com/dunitian/p/5038719.html 缩略Code:https://www.cnblogs.com/dotnetcrazy/p/9162115.html#code Linux...# 3.克隆现有git仓库 (支持多种链接协议) git clone https://github.com/lotapp/BaseCode.git # 4.检查当前文件状态 git status #随时可以查状态...# 6.添加跟踪文件 git add xxx # 7.检查当前文件状态 git status #现在已被跟踪,并处于暂存状态 ?...# 9.1修改文件 # 要查看尚未暂存的文件更新了哪些部分(跟历史版本的对比) git diff 修改的文件 # 后一般都是先把修改后的文件git add 一下(添加修改都是这个命令) #git其实提供了一个便捷的方法...# 9.2删除文件 一样可以用 git commit -a -m "xxx" 来快速提交 git commit -a -m "test skip git add" ?

    5.7K30

    Linux工具】git

    资源链接 Git官方文档 Atlassian的Git指南 使用和下载git 如果在你的Linux系统上没有下载git那么我们可以使用下面命令进行下载 sudo yum install -y git...如何使用git呢,平时我们都是在Windows上使用的git,其实Linux和Windows上git的使用方法都是差不多的。 首先我们先创建一个仓库。 这里我们的仓库已经创建好了。...下一步我们可以将git中刚刚提交的文件提交到远程仓库中。 【第三条命令】git push 这条命令之后,我们的文件已经将git当中上传的文件提交到了远程仓库中了。...这里我们通过Windows系统上传了一个txt结尾的文件(注意:这里我们Linux系统是没有进行同步的) 我们返回Linux重新上传文件。...(注意:上传文件的时候需要同步远程仓库,才能进行上传) 同步指令:git pull 进行同步之后就支持上传文件了。

    7310

    Git Base For Linux

    www.cnblogs.com/dunitian/p/5038719.html 缩略Code:https://www.cnblogs.com/dotnetcrazy/p/9162115.html#code Linux...://github.com/lotapp/BaseCode.git # 4.检查当前文件状态 git status #随时可以查状态 # 5.这时候你增加文件都是未跟踪的(如果之前并不存在这个文件...,那么就没法跟踪了) cp -r python/ BaseCode/ # 6.添加跟踪文件 git add xxx # 7.检查当前文件状态 git status #现在已被跟踪,并处于暂存状态...# 8.提交更新 git commit -m "备注信息" # 9.1修改文件 # 要查看尚未暂存的文件更新了哪些部分(跟历史版本的对比) git diff 修改的文件 # 后一般都是先把修改后的文件...# 9.2删除文件 一样可以用 git commit -a -m "xxx" 来快速提交 git commit -a -m "test skip git add" # 10.推送到远程端 git

    5.1K80
    领券