企业做网站需要什么资料,wordpress怎么把category,云服务器可以放几个网站,深圳华强北网站建设su 切换用户或以指定用户运行命令。 使用su可以指定运行命令的身份(user/group/uid/gid)。 为了向后兼容#xff0c;su默认不会改变当前目录#xff0c;且仅设置HOME和SHELL这两个环境变量(若目标用户非root#xff0c;则还设置USER和LOGNAME环境变量)。推荐使用--login选项… su 切换用户或以指定用户运行命令。 使用su可以指定运行命令的身份(user/group/uid/gid)。 为了向后兼容su默认不会改变当前目录且仅设置HOME和SHELL这两个环境变量(若目标用户非root则还设置USER和LOGNAME环境变量)。推荐使用--login选项(即-选项)避免环境变量混乱 -c command使用-c选项传递要指定的命令到shell上执行。使用-c执行命令会为每个su都分配新的会话环境 -, -l, --login 启动shell作为登录的shell模拟真正的登录环境。它会做下面几件事: 1.清除除了TERM外的所有环境变 量 2.初始化HOME,SHELL,USER, LOGNAME,PATH环境变量 3.进入目标用户的家目录 4.设置argv[0]为-以便设置shell 作为登录的shell使用--login的su 是交互式登录。不使用--login的 su是非交互式登录(除不带任何 参数的su外 (1). 若su没有给定任何参数将默认以root身份运行交互式的shell(交互式所以需要输入密码)即切换到root用户但只改变HOME和SHELL环境变量。 (2). su - username是交互式登录要求密码会重置整个环境变量它实际上是在模拟真实的登录环境。 (3). su username是非交互登录不会重置除HOME/SHELL外的环境变量 -m, -p, --preserve-environment保留整个环境变量(不会重新设置HOME,SHELL,USER和LOGNAME)保留环境的方法是新用户shell上执行原用户的各配置文件如~/.bashrc。当设置了--login时将忽略该选项-s SHELL 运行指定的shell而非默认shell选择shell的顺序优先级如下 1.--shell指定的shell 2.如果使用了--preserve-environment选择SHELL环境变量的shell 3.选项目标用户在passwd文件中指定的shell 4./bin/sh sudo -b (background)该选项告诉sudo在后台执行指定的命令。 注意如果使用该选项将无法使用任务计划(job)来控 制维护这些后台进程需要交互的命令应该考虑是否真的要后台因为可能会失败 -l[l] [command]当单独使用-l选项时将列出(list)用户可执行和被禁止的命令。 当配合command时且该command是被允许执行的命令将列出命令的全路径及该命令参数。 如果command是不被允许执行的则sudo直接以状态码-1退出。 可以指定多个字母l来显示更详细的格式 -n 使得sudo变成非交互模式但如果安全策略是要求输入密码的则sudo将报错 -S (stdin)该选项使得sudo从标准输入而非终端设备上读取密码给定的密码必须在尾部加上换行符 -s [command] (shell)指定要切换到的shell如果给定command则在此shell上执行该命令 -U user (other user)配合-l选项来指定要列出哪个用户的权限信息 -u user (user)该选项明确指定要以此处指定的用户而非root来运行command。 若使用uid的方式指定用户则需要使用#uid但很多时候可能需要对#使用\转义即使用\#uid -E (environment)该选项告诉sudo在执行命令时保留自己的环境变量保留环境变量的方式是执行环境配置文件。 但因为跨了用户所以很可能某些家目录下的环境配置文件会因为无权限而执行失败此时sudo将报错 -k [command] 当单独使用-k选项时sudo将使得用户的认证缓存失效。下次执行sudo命令需要输入密码。 当配合command时-k选项将忽略用户的缓存所以sudo将要求用户输入密码但这次输入密码不会更新认证缓存 但执行-k选项本身不需要密码 -K (sure kill)类似于-k选项但它会完全移除用户的认证缓存且不会配合command执行-K本身不需要密码 -v (validate)该选项使得sudo更新用户认证缓存 -- 暗示sudo命令行参数到此结束 sudo -k 认证信息失效必须输入密码,sudo输入密码默认时长5分钟 sudo -l 列出当前用户所有的可以使用的sudo命令 sudo -h 列出使用方法退出。 sudo -V 显示版本信息并退出。 sudo -u 以指定用户的身份执行命令可以是用户名也可以是#uid。 sudo -p Prompt 可以更改询问密码的提示语其中%u会代换为使用者帐号名称%h会显示主机名称。 sudo -e file 不是执行命令而是修改文件相当于命令sudoedit。 1. sudo能够限制指定用户在指定主机上运行某些命令。 2. sudo可以提供日志记录每个用户使用sudo做了些什么在配置文件/etc/syslog.cnf添加修改。 3. sudo为系统管理员提供配置文件允许系统管理员集中地管理用户的使用权限和使用的主机。它默认的存放位置 4.sudo命令使用必须输入当前用户密码密码有效期为5分钟。超时以后用户必须重新输入密码。 5. 支持别名 遵循EBNF描述性语言字母必须全部大写别名可以嵌套别名可以取反必须先定义 是/etc/sudoers用visudo命令修改一个sudo条目 用户 ALL主机(root)以身身份执行 NOPASSWD 命令 , PASSWD命令 !命令 test linux(test1,test2) /bin/ls 用sudo -u指定用户运行 Defaults:test runas_defaulttest1 默认以test1运行Defaults后面如果有冒号是对后面用户的默认如果没有则是 对所 有 用户的默认 ①用户名可以用组只需在组名前加个百分号%表示。 ②主机名表示该用户可以在哪些主机上运行sudo可以用hostname也可以用ip指定。 ③可切换的用户身份即指定执行命令的用户也可以用组。 ④权限和命令允许执行和不允许执行的命令(多个命令间用逗号分隔)和特殊权限命令可以带其选项及参数。命令要写绝对路径。不允许执行的命令需要在命令前加上!来表示。可以使用标签如NOPASSWD标签表示切换或以指定用户执行该标签后的命令时不需要输入密码。一行写不下时可使用\续行 who User_alias USER_ADMIN 用户名组名%引导 which host Host_Alias主机名、ip地址、其他主机别名 runas Run_Alias用户名、%组名其他的别名 command Cmd_Alias命令路径目录其他别名 7.SUID、SGID、STICK SUID 以执行文件所属主身份运行chmod us 文件 如果原来有执行权限其他位为s否则为S
8 facl利用文件扩展保存额外的访问控制权限 文件属性后面有号 对于一个文件的访问 ower-----》facl ower-----》group-----》facl group》other setfacl -m 设定 u uid -m u:test:rw 文件 前面加d,为目录设置目录中创建的文件自动继承目录权限 g gid -m g:group:rw 文件 --mask -x取消设定 getfacl