更新时间:2022-01-20 09:10:49浏览次数:500+次
以下为你详细解释seq、seinfo、sendmail、semanage命令的用法。
Linux seq命令的用法及解释
Linux seq命令用于产生从某个数到另外一个数之间的所有整数。
1、语法
seq [选项]... 尾数
seq [选项]... 首数 尾数
seq [选项]... 首数 增量 尾数
2、选项
-f, --format=格式 使用printf 样式的浮点格式
-s, --separator=字符串 使用指定字符串分隔数字(默认使用:\n)
-w, --equal-width 在列前添加0 使得宽度相同
3、实例
-f选项:指定格式
#seq -f"%3g" 9 11
9
10
11
%后面指定数字的位数 默认是%g,%3g那么数字位数不足部分是空格。
#sed -f"%03g" 9 11
#seq -f"str%03g" 9 11
str009
str010
str011
这样的话数字位数不足部分是0,%前面制定字符串。
-w选项:指定输出数字同宽
seq -w 98 101
098
099
100
101
不能和-f一起用,输出是同宽的。
-s选项:指定分隔符(默认是回车)
seq -s" " -f"str%03g" 9 11
str009 str010 str011
要指定/t做为分隔符号:
seq -s"`echo -e "/t"`" 9 11
指定\n作为分隔符号:
seq -s"`echo -e "\n"`" 9 11
19293949596979899910911
得到的是个错误结果,不过一般也没有这个必要,它默认的就是回车作为分隔符。
Linux seinfo命令的用法及解释
Linux seinfo命令是用来查询SELinux的策略提供多少相关规则,一个主体进程能否读取到目标文件资源的重点是在于SELinux的策略以及策略内的各项规则,然后再通过该规则的定义去处理各项目标文件的安全上下文,尤其是“类型”部分。SELinux的策略与规则管理相关命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令。
1、语法
seinfo(选项)
2、选项
-A:列出SELinux的状态、规则布尔值、身份识别、角色、类型等所有信息。
-t:列出SELinux所有类型(type)的种类。
-r:列出SELinux所有角色(role)的种类。
-u:列出SELinux所有身份识别(user)的种类。
-b:列出所有规则的种类(布尔值)。
3、实例
列出与httpd有关的规则:
seinfo -b | grep httpd
Linux sendmail命令的用法及解释
Linux sendmail命令是一款著名的电子邮件传送代理程序,也就是平常说的电子邮件服务器,sendmail基于标准的简单邮件传输协议(SMTP)。
1、语法
sendmail(选项)
2、选项
-bd:以守护进程方式运行指令;
-bD:以前台运行方式运行;
-bi:初始化别名数据库;
-bm:以常规发送电子邮件;
-bp:显示邮件的发送队列;
-C:指定配置文件;
-D:将调试的输出信息保存到日志文件,而不显示在标准输出设备上;
-F:指定邮件发送者全名;
-n:禁止使用邮件别名功能;
-f:指定发件人的名字;
-q:设置处理邮件队列中邮件的时间间隔。
Linux semanage命令的用法及解释
Linux semanage命令是用来查询与修改SELinux默认目录的安全上下文。SELinux的策略与规则管理相关命令:seinfo命令、sesearch命令、getsebool命令、setsebool命令、semanage命令。
1、语法
semanage {login|user|port|interface|fcontext|translation} -l
semanage fcontext -{a|d|m} [-frst] file_spec
2、选项
-l:查询。
fcontext:主要用在安全上下文方面。
-a:增加,你可以增加一些目录的默认安全上下文类型设置。
-m:修改。
-d:删除。
3、实例
查询一下/var/www/html的默认安全性本文的设置:
semanage fcontext -l
SELinux fcontext type Context
....(前面省略)....
/var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
....(后面省略)....
如上面例子所示,我们可以查询的到每个目录的安全性本文!而目录的设定可以使用正则表达式去指定一个范围。那么如果我们想要增加某些自定义目录的安全性本文呢?举例来说,我想要色设置/srv/samba成为 public_content_t的类型时,应该如何设置呢?
用semanage命令设置/srv/samba目录的默认安全性本文为public_content_t:
mkdir /srv/samba
ll -Zd /srv/samba
drwxr-xr-x root root root:object_r:var_t /srv/samba
如上所示,默认的情况应该是var_t的。
semanage fcontext -l | grep '/srv'
/srv/.* all files system_u:object_r:var_t:s0
/srv/([^/]*/)?ftp(/.*)? all files system_u:object_r:public_content_t:s0
/srv/([^/]*/)?www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
/srv/([^/]*/)?rsync(/.*)? all files system_u:object_r:public_content_t:s0
/srv/gallery2(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
/srv directory system_u:object_r:var_t:s0 //看这里!
上面则是默认的/srv底下的安全性本文资料,不过,并没有指定到/srv/samba。
semanage fcontext -a -t public_content_t "/srv/samba(/.*)?"
semanage fcontext -l | grep '/srv/samba'
/srv/samba(/.*)? all files system_u:object_r:public_content_t:s0
cat /etc/selinux/targeted/contexts/files/file_contexts.local
# This file is auto-generated by libsemanage
# Please use the semanage command to make changes
/srv/samba(/.*)? system_u:object_r:public_content_t:s0 #写入这个档案
restorecon -Rv /srv/samba* #尝试恢复默认值
ll -Zd /srv/samba
drwxr-xr-x root root system_u:object_r:public_content_t /srv/samba/ #有默认值,以后用restorecon命令来修改比较简单。
semanage命令的功能很多,这里主要用到的仅有fcontext这个选项的用法而已。如上所示,你可以使用semanage来查询所有的目录默认值,也能够使用它来增加默认值的设置。
相关资讯