更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 鸿蒙开发Linux命令 > Linux seq、seinfo、sendmail、semanage命令的用法及解释

Linux seq、seinfo、sendmail、semanage命令的用法及解释

更新时间: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来查询所有的目录默认值,也能够使用它来增加默认值的设置。