linux系统 修改文件权限
1.修改文件权限
命令格式:
chmod [数字组合] 文件名
chmod [数字组合] 目录名 -R参数可递归生效(该目录下所有文件或子目录一起改变)
chmod的数字方法的说明:
r 4
w 2
x 1
- 0
例如:
rwxr-xr-x 755 目录默认权限
rw-r--r-- 644文件默认权限
chmod | 用户类型 | 操作字符 | 权限字符 | 文件和目录 |
U(user) | +(增加) | r | ||
G(group | - | |||
O(others) | -(减少) | w | ||
A(all) | =(设置) | x |
2.修改文件所属组合用户
当用户对某文件夹没有操作权限时,可以将文件夹的用户修改为当前账号
命令:
chown -R 用户名 文件夹
chgrp -R 用户名 文件夹
3.更加详细的设置文件权限
setfacl 设置一个文件的详细权限
命令例子:setfacl -R -m u:root:rwx file
getfacl 获取一个文件的详细权限
命令例子:getfacl file
详细参数:
-b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留。
-k,--remove-default:删除缺省的acl规则。如果没有缺省规则,将不提示。
-n,--no-mask:不要重新计算有效权限。setfacl默认会重新计算ACL mask,除非mask被明确的制定。
--mask:重新计算有效权限,即使ACL mask被明确指定。
-d,--default:设定默认的acl规则。
--restore=file:从文件恢复备份的acl规则(这些文件可由getfacl -R产生)。通过这种机制可以恢复整个目录树的acl规则。此参数不能和除--test以外的任何参数一同执行。
--test:测试模式,不会改变任何文件的acl规则,操作后的acl规格将被列出。
-R,--recursive:递归的对所有文件及目录进行操作。
-L,--logical:跟踪符号链接,默认情况下只跟踪符号链接文件,跳过符号链接目录。
-P,--physical:跳过所有符号链接,包括符号链接文件。
--version:输出setfacl的版本号并退出。
--help:输出帮助信息。
--:标识命令行参数结束,其后的所有参数都将被认为是文件名
-:如果文件名是-,则setfacl将从标准输入读取文件名。
用户或者用户组:
[d[efault]:] [u[ser]:]uid [:perms] 指定用户的权限,文件所有者的权限(如果uid没有指定)。
[d[efault]:] g[roup]:gid [:perms] 指定群组的权限,文件所有群组的权限(如果gid未指定)
[d[efault]:] m[ask][:] [:perms] 有效权限掩码
[d[efault]:] o[ther] [:perms] 其他的权限
4.文件共享服务--sambd
开启sambd服务,命令:
sudo /etc/init.d/smbd start
关闭sambd服务,命令:
sudo /etc/init.d/smbd stop
重启sambd服务,命令:
sudo /etc/init.d/smbd restart
设置共享文件信息,命令
vim /etc/samba/smb.conf
文件权限的设置,示例:
#文件夹名MIB3
[MIB3]
#设置共享文件夹的路径
path=/mnt_devices/sda/MIB3
#设置文件夹是否可以浏览
browseable=yes
#设置文件夹是否可写
writable=yes
#设置共享文件的管理员 rwx
admin users=root,Integrator
#设置允许访问共享文件的用户 r-x
valid users=root,Developer,Partaker,Innovator,Increment,Incremental,Integrator
#设置禁止访问的用户
invalid users=RcTool
#允许写入该共享的用户
write list=root,Integrator
#设置该共享文件夹是否允许guest用户访问
public=no
available=yes
create mask = 0777
directory mask = 0777
# FTP
创建用户useradd ftpadmin -s /sbin/nologin –d /www(其他目录)
passwd xXXXX
(二)增加用户
root用户执行
useradd -d /ftp_data -g ftp -s /sbin/nologin ftp_test1
passwd ftp_test1 --设置密码
ftp_data是ftp_test1用户的主目录
ftp_test1是ftp用户
(三)配置/etc/vsftpd/chroot_list
增加ftp_test1 代表 这个用户不被限制主目录内
vi /etc/vsftpd/chroot_list
ftp_test1
(四)配置允许访问的用户
vi /etc/vsftpd/user_list
增加允许访问的用户ftp_test1
(五)重启ftp 服务
service vsftpd restart
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix