【Linux开发】如何更改linux文件的拥有者及用户组(chown和chgrp)
本文整理自:
Linux的C程序中,可以使用chown函数来改变文件所有者,及所在用户组。
/etc/passwd这个文件中有记录的用户名称才可以。
yangzongde
使用 chown 一次性修改拥有者及组
<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p><div><span class="com" style="color: rgb(136, 0, 0);">/* Change the owner and group of FILE. */</span><span class="pln"> </span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">extern</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> chown </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">__const </span><span class="kwd" style="color: rgb(0, 0, 136);">char</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">*</span><span class="pln">__file</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__uid_t</span><span class="pln"> __owner</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__gid_t</span><span class="pln"> __group</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln">__THROW __nonnull </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">))</span><span class="pln"> __wur</span><span class="pun" style="color: rgb(102, 102, 0);">;</span><span class="pln"> </span></div><p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p>
函数。该函数声明如下:
<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p><div><span class="com" style="color: rgb(136, 0, 0);">/* Change the owner and group of the file that FD is open on. */</span><span class="pln"> </span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">extern</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> fchown </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> __fd</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__uid_t</span><span class="pln"> __owner</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__gid_t</span><span class="pln"> __group</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> __THROW __wur</span><span class="pun" style="color: rgb(102, 102, 0);">;</span><span class="pln"> </span></div><p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p>
<p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p><div><span class="com" style="color: rgb(136, 0, 0);">/* Change owner and group of FILE, if it is a symbolic link the ownership of the symbolic </span></div><div><span class="com" style="color: rgb(136, 0, 0);">link is changed. */</span><span class="pln"> </span></div><div><span class="kwd" style="color: rgb(0, 0, 136);">extern</span><span class="pln"> </span><span class="kwd" style="color: rgb(0, 0, 136);">int</span><span class="pln"> lchown </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln">__const </span><span class="kwd" style="color: rgb(0, 0, 136);">char</span><span class="pln"> </span><span class="pun" style="color: rgb(102, 102, 0);">*</span><span class="pln">__file</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__uid_t</span><span class="pln"> __owner</span><span class="pun" style="color: rgb(102, 102, 0);">,</span><span class="pln"> </span><span class="typ" style="color: rgb(102, 0, 102);">__gid_t</span><span class="pln"> __group</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln"> __THROW __nonnull </span><span class="pun" style="color: rgb(102, 102, 0);">((</span><span class="lit" style="color: rgb(0, 102, 102);">1</span><span class="pun" style="color: rgb(102, 102, 0);">))</span><span class="pln"> __wur</span><span class="pun" style="color: rgb(102, 102, 0);">;</span><span class="pln"> </span></div><p style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-bottom: 0px;"></p>
【Linux开发】如何更改linux文件的拥有者及用户组(chown和chgrp)的更多相关文章
- 如何更改linux文件的拥有者及用户组(chown和chgrp)
http://blog.csdn.net/hudashi/article/details/7797393 一.基本知识 在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户.该文件用 ...
- 更改linux文件的拥有者及用户组(chown和chgrp)
.使用chown命令更改文件拥有者 在 shell 中,能够使用chown命令来改变文件全部者.chown命令是change owner(改变拥有者)的缩写.须要要注意的是,用户必须是已经存在系统中的 ...
- 嵌入式Linux开发教程:Linux常见命令(上篇)
摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...
- Linux 拷贝有更改的文件
cp -Ruv /home/username/trunk_new/app/* /data/httpdocs/wwwroot/app/
- 【菜鸟玩Linux开发】在Linux中使用VS Code编译调试C++项目
最近项目需求,需要在Linux下开发C++相关项目,经过一番摸索,简单总结了一下如何通过VS Code进行编译调试的一些注意事项. 关于VS Code在Linux下的安装这里就不提了,不管是CentO ...
- 小白自制Linux开发板 三. Linux内核与文件系统移植
上一篇完成了uboot的移植,但是想要愉快的在开发板上玩耍还需要移植Linux内核和文件系统. 1.Linux内核 事实上对于F1C100S/F1C200S,Linux官方源码已经对licheepi ...
- 小白自制Linux开发板 八. Linux音频驱动配置
不知不觉小白自制开发板系列已经到第八篇了,本篇要配置的是音频驱动,也算是硬件部分的最后一片了,积攒的文章也差不多全放完了,后续更新可能会放缓,还请见谅. 对于F1C200s是自带了多媒体处理功能的,所 ...
- Linux中文乱码 - - 更改Linux字符集
查看当前系统默认采用的字符集: # locale 在RedHat/CentOS系统下,记录系统默认使用语言的文件是/etc/sysconfig/i18n,如果默认安装的是中文的系统,i18n的内容如 ...
- 如何更改linux文件的拥有者及用户…
本文整理自: http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/ http://ydlmlh.iteye.c ...
随机推荐
- canvas在高倍屏下变模糊的处理办法
因为canvas不是矢量图,而是像图片一样是位图模式的.如果不做Retina屏适配的话,例如二倍屏,浏览器就会以2个像素点的宽度来渲染一个像素,该canvas在Retina屏幕下相当于占据了2倍的空间 ...
- Okhttp拦截器统一异常处理并多次读取response.body().string()
参考:https://blog.csdn.net/a624806998/article/details/73863606 引言: 写这篇文章,因为在自己编写实现Http日志拦截器的时候,在拦截器中使用 ...
- 随机发送n位数字+字母的验证码
''' 随机发送n位数字+字母的验证码 ''' import random def get_verified(length): code = '' for i in range(length): nu ...
- SpringMVC @RequestParam
案例来说明 @RequestMapping("user/add") public String add(@RequestParam("name") String ...
- python类库32[多进程通信Queue+Pipe+Value+Array]
多进程通信 queue和pipe的区别: pipe用来在两个进程间通信.queue用来在多个进程间实现通信. 此两种方法为所有系统多进程通信的基本方法,几乎所有的语言都支持此两种方法. 1)Queue ...
- day02 计算机基础部分作业题
1. 简述执行Python程序的两种方式以及他们的优缺点: 交互式: 优点:在cmd窗口环境下,运行Python解释器,执行一行代码打印一行,执行速度快,立马显示结果: 缺点:关闭窗口,被执行的代码和 ...
- ASP教程:gb2312和utf-8乱码问题解决
文章为转载:https://www.xp.cn/b.php/31663.html 尊重作者版权 今天做网站的时候,客户要一个博客,于是就利用了本博客所用的程序pjblog.经常做网站的人都知道,在同一 ...
- ps -aux显示信息COMMAND不全
ps -aux结果: ps -auxwww结果:
- es之批量提交操作
1:批量查询操作 1):插入测试数据 PUT /costumer/doc/1{ "name": "zhangsan", "age": 20} ...
- Mysql中 BLOB字段转String的方法
转:https://www.cnblogs.com/renjie0520/p/5242350.html 1.通过sql直接转换 select CONVERT (*** USING utf8) AS u ...