SaltStack系统初始化

历史记录优化history

设置终端超时时间

配置yum源

安装各种agent pkg.installed 、file.managed、service.running

基础用户 、用户审计、sudo权限设置

常用基础命令、命令别名

用户登录提示、PS1设置

状态文件目录结构

=======================================================================

[root@master ~]# cd /srv/salt/base/

[root@master base]# tree init/

init/

├── chrony

│ ├── files

│ │ └── chrony.conf

│ └── main.sls

├── firewalld

│ └── main.sls

├── history

│ └── main.sls

├── kernel

│ ├── files

│ │ ├── limits.conf

│ │ └── sysctl.conf

│ └── main.sls

├── sshd

│ ├── files

│ │ ├── sshd_config

│ └── main.sls

├── salt-minion

│ ├── files

│ │ └── minion.j2

│ └── main.sls

├── user

│ └── main.sls

├── selinux

│ ├── files

│ │ └── config

│ └── main.sls

├── timeout

│ └── main.sls

├── yum

│ ├── files

│ │ ├── centos-7.repo

│ │ ├── centos-8.repo

│ │ ├── epel-7.repo

│ │ ├── epel-8.repo

│ │ ├── salt-7.repo

│ │ └── salt-8.repo

│ └── main.sls

└── zabbix-agentd

├── files

│ ├── zabbix-5.4.4.tar.gz

│ ├── zabbix_agentd.conf.j2

│ └── zabbix.sh

└── main.sls

15 directories, 23 files

selinux


[root@master init]# cd selinux/

[root@master selinux]# ls

files main.sls

[root@master selinux]# cat main.sls

/etc/selinux/config:

file.managed:

  • source: salt://init/selinux/files/config

  • user: root

  • group: root

  • mode: ‘0644’

‘setenforce 0’:

cmd.run

[root@master selinux]# cat files/config

This file controls the state of SELinux on the system.

SELINUX= can take one of these three values:

enforcing - SELinux security policy is enforced.

permissive - SELinux prints warnings instead of enforcing.

disabled - No SELinux policy is loaded.

SELINUX=disabled

SELINUXTYPE= can take one of these three values:

targeted - Targeted processes are protected,

minimum - Modification of targeted policy. Only selected processes are protected.

mls - Multi Level Security protection.

SELINUXTYPE=targeted

防火墙


[root@master firewalld]# cat main.sls

firewalld.service:

service.dead:

  • enable: false

chrony时间同步


[root@master chrony]# cat files/chrony.conf

Use public servers from the pool.ntp.org project.

Please consider joining the pool (http://www.pool.ntp.org/join.html).

pool time1.aliyun.com iburst #修改时间同步服务器地址

Record the rate at which the system clock gains/losses time.

driftfile /var/lib/chrony/drift

[root@master chrony]# cat main.sls

include:

  • init.yum.main

chrony:

pkg.installed:

/etc/chrony.conf:

file.managed:

  • source: salt://init/chrony/files/chrony.conf

  • user: root

  • group: root

  • mode: ‘0644’

chrony.service:

service.running:

  • enable: true

文件描述符与内核优化


[root@master kernel]# cp /etc/security/limits.conf files/

[root@master kernel]# cp /etc/sysctl.conf files/

[root@master kernel]# vim files/limits.conf

#ftp hard nproc 0

#@student - maxlogins 4

  •            soft    nofile         65535  	#添加
    
  •            hard    nofile         65535  	#添加
    

[root@master kernel]# cat files/sysctl.conf

For more information, see sysctl.conf(5) and sysctl.d(5).

net.ipv4ip_forward = 1 #末尾添加这句

[root@master kernel]# cat main.sls

/etc/security/limits.conf:

file.managed:

  • source: salt://init/kernel/files/limits.conf

  • user: root

  • group: root

  • mode: ‘0644’

/etc/sysctl.conf:

file.managed:

  • source: salt://init/kernel/files/sysctl.conf

  • user: root

  • group: root

  • mode: ‘0644’

cmd.run

  • name: sysctl -p

SSH服务优化


[root@master sshd]# vim main.sls

sshd-config:

file.managed:

  • name: /etc/ssh/sshd_config

  • source: salt://init/sshd/files/sshd_config

  • user: root

  • gourp: root

  • mode: 0600

service.running:

  • name: sshd

  • enable: True

  • reload: True

  • watch:

  • file: sshd-config

[root@master sshd]# cat files/sshd_config

semanage port -a -t ssh_port_t -p tcp #PORTNUMBER

Port 83 #自定端口

#AddressFamily any

history历史记录


[root@master history]# cat main.sls

/etc/profile:

file.append:

  • test: ‘export HISTTIMEFORMAT=“%F %T whoami”’

设置终端超时时间


[root@master timeout]# cat main.sls

/etc/profile:

file.append:

  • test: ‘export TMOUT=300’

配置yum源


yum源

https://mirrors.aliyun.com/repo/Centos-7.repo

https://mirrors.aliyun.com/repo/Centos-8.repo

sed -i -e ‘/mirrors.cloud.aliyuncs.com/d’ -e ‘/mirrors.aliyuncs.com/d’ *.repo

yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm

sed -i ‘s|^metalink|#metalink|’ epel.repo

sed -i ‘s|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|’ epel.repo

wget http://mirrors.aliyun.com/repo/epel-7.repo

curl -fsSL https://repo.saltproject.io/py3/redhat/7/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo

curl -fsSL https://repo.saltproject.io/py3/redhat/8/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo

[root@master yum]# ls files/

centos-7.repo centos-8.repo epel-7.repo epel-8.repo salt-8.repo salt-8.repo

[root@master yum]# cat main.sls

{% if grains[‘os’] == ‘RedHat’ %}

/etc/yum.repos.d/centos-{{ grains[‘osmajorrelease’] }}.repo:

file.managed:

  • source: salt://init/yum/files/centos-{{ grains[‘osmajorrelease’] }}.repo

  • user: root

  • group: root

  • mode: ‘0644’

{% endif %}

/etc/yum.repos.d/epel-{{ grains[‘osmajorrelease’] }}.repo:

file.managed:

  • source: salt://init/yum/files/epel-{{ grains[‘osmajorrelease’] }}.repo

  • user: root

  • group: root

  • mode: ‘0644’

/etc/yum.repos.d/salt-{{ grains[‘osmajorrelease’] }}.repo:

file.managed:

  • source: salt://init/yum/files/salt-{{ grains[‘osmajorrelease’] }}.repo

  • user: root

  • group: root

  • mode: ‘0644’

基础命令安装


[root@master basepkg]# cat main.sls

include:

  • init.yum.main

install-base-pkgages:

pkg.installed:

  • pkgs:

  • screen

  • tree

  • psmisc

  • openssl

  • openssl-devel

  • telnet

  • iftop

  • iotop

  • sysstat

  • wget

  • dos2unix

  • unix2dos

  • lsof

  • net-tools

  • vim-enhanced

  • zip

  • unzip

  • bzip2

  • bind-utils

  • gcc

  • gcc-c++

  • glibc

  • make

  • autoconf

安装各种agent ,安装salt-minion、zabbix-agent


  • salt-minion

[root@master salt-minion]# cp /etc/salt/minion ./files/minion.j2

[root@master salt-minion]# vim files/minion.j2

resolved, then the minion will fail to start.

#master: salt

master: {{ pillar[‘salt_master_ip’] }} #定义变量

//定义变量值

[root@master base]# pwd

/srv/pillar/base

[root@master base]# vim salt-minion.sls

[root@master base]# cat salt-minion.sls

salt_master_ip:192.168.129.134

[root@master salt-minion]# cat main.sls

include:

  • init.yum.main

salt-minion

pkg.installed

/etc/salt/minion:

file.managed:

  • source: salt://init/salt-minion/files/minion.j2

  • user: root

  • group: root

  • mode: ‘0644’

  • template: true

salt-minion.service:

service.running:

  • enable: true
  • zabbix-agent

[root@master zabbix-agentd]# ls

files main.sls

[root@master zabbix-agentd]# cat main.sls

include:

  • init.yum.main
分数阶傅里叶变换(Fractional Fourier Transform, FRFT)是对传统傅里叶变换的拓展,它通过非整数阶的变换方式,能够更有效地处理非线性信号以及涉及时频局部化的问题。在信号处理领域,FRFT尤其适用于分析非平稳信号,例如在雷达、声纳和通信系统中,对线性调频(Linear Frequency Modulation, LFM)信号的分析具有显著优势。LFM信号是一种频率随时间线性变化的信号,因其具有宽频带和良好的时频分辨率,被广泛应用于雷达和通信系统。FRFT能够更精准地捕捉LFM信号的时间和频率信息,相比普通傅里叶变换,其性能更为出色。 MATLAB是一种强大的数值计算和科学计算工具,拥有丰富的函数库和用户友好的界面。在MATLAB中实现FRFT,通常需要编写自定义函数或利用信号处理工具箱中的相关函数。例如,一个名为“frft”的文件可能是用于执行分数阶傅里叶变换的MATLAB脚本或函数,并展示其在信号处理中的应用。FRFT的正确性验证通常通过对比变换前后信号的特性来完成,比如评估信号的重构质量、信噪比等。具体而言,可以通过计算原始信号与经过FRFT处理后的信号之间的相似度,或者对比LFM信号的关键参数(如初始频率、扫频率和持续时间)是否在变换后得到准确恢复。 在MATLAB代码实现中,通常包含以下步骤:首先,生成LFM信号模型,设定其初始频率、扫频率、持续时间和采样率等参数;其次,利用自定义的frft函数对LFM信号进行分数阶傅里叶变换;接着,使用MATLAB的可视化工具(如plot或imagesc)展示原始信号的时域和频域表示,以及FRFT后的结果,以便直观对比;最后,通过计算均方误差、峰值信噪比等指标来评估FRFT的性能。深入理解FRFT的数学原理并结合MATLAB编程技巧,可以实现对LFM信号的有效分析和处理。这个代码示例不仅展示了理论知识在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值