安全加固

目录

1.文件锁定管理

2.设置用户账户有效期

3.查看并清除命令历史记录

4.设置用户超时登出时间

5.用户切换

6.用户提权

7.禁用重启热键Ctrl+Alt+Del

8.设置单用户模式密码

9.调整BIOS引导设置

10.禁止root用户从本地登录:

11.禁止root用户通过sshd登录:

12.禁止普通用户以本地及ssh登录:

13.检查系统中特权用户及是否存在空口令用户

14.弱口令检测

15.sshd服务防止暴力破解

1.文件锁定管理 

Linux chattr命令用于改变文件属性。

-R 递归处理,将指定目录下的所有文件及子目录一并处理。

+<属性> 开启文件或目录的该项属性。

-<属性> 关闭文件或目录的该项属性。

=<属性> 指定文件或目录的该项属性。

属性:

a:只能给文件添加内容,但是不能删除。

i:不得任意更改文件或目录。

# chattr +i /etc/passwd //锁定用户文件

# chattr +i /etc/shadow //锁定密码文件

# chattr +a /var/log/messages //设置不能清除日志文件

# lsattr  /etc/shadow /etc/passwd //查看锁定状态,权限中有i 表示已锁定

----i--------e- /etc/shadow

----i--------e- /etc/passwd

# useradd zhangsan //在已锁定状态下创建用户将会报错。

useradd: cannot open /etc/passwd

2.设置用户账户有效期

对于即将要新添加的用户设置有效期时间,可在配置文件中修改时间,在创建用户时将会生效

# vim /etc/login.defs //打开用户账户策略配置文件

PASS_MAX_DAYS   30 //将此项参数修改为30天

关于defs配置文件中其他选项的作用

PASS_MAX_DAYS   99999 //密码最大有效期

PASS_MIN_DAYS   0 //两次修改密码的最小间隔时间

PASS_MIN_LEN    5 //密码最小长度,对于root无效

PASS_WARN_AGE   7 //密码过期前多少天开始提示

UID_MIN                   500 //创建用户开始的第一个UID

UID_MAX                 60000 //最大的用户UID

GID_MIN                   500 //创建组的第一个GID

GID_MAX                 60000 //最大的组GID

CREATE_HOME     yes //是否创建用户的宿主目录

对于已添加的用户设置有效期

# chage -M 30 zhangsan //设置用户张三的有效期为30天,passwd shadow文件必须为解锁状态才可执行此命令

通过以下命令设置用户张三下次登录系统时需要修改密码,

# chage -d 0 zhangsan //设置张三用户下次登录系统时需要修改密码

3.查看并清除命令历史记录

查看系统所执行的命令记录

# history

# history -c //清空所有命令历史记录,也可将此命令添加至用户的.bash_logout,文件中,用户注销后将会自动清除历史记录

# rm -rf ~/.bash_history

history中默认记录1000条记录,可在配置文件中修改记录条数

# vim /etc/profile

HISTSIZE=1000 //默认为1000条,可修改为其他值

4.设置用户超时登出时间

# vim /etc/profile

export TMOUT=600 //加入此行,定义变量,600表示秒数,

经过以上设置后,在用户登录系统后十分钟为操作,将会退出登录

5.用户切换

# su

默认情况下所有用户均可使用su 进行切换,为了安全,可以设置个别用户才能使用su

设置用户张三能够使用su命令:

# gpasswd -a zhangsan wheel //将用户zhangsan加入wheel组

# vim /etc/pam.d/su

auth            required        pam_wheel.so use_uid //去掉此行的开的#,使此行生效

以上配置设置完成后,使用用户zhangsan进行使用su可以进行切换,但使用其他普通用户将无法使用su进行切换,将会提示密码不正确

6.用户提权

# sudo //用户提权

对于普通用户要提升的权限可在配置文件/etc/sudoers中配置

例如,普通用户无法使用ifconfig命令进行修改主机IP地址,

如果有需求普通用户修改主机IP地址,则可为普通用户授权使用ifconfig命令进行修改IP地址

注意:命令路径必须写绝对路径,不可写相对路径

# visudo

第一列为用户账号,第二列的ALL意思是登录来源,如localhost,第三列等号右边小括号中的ALL是代表可以切换的身份,第四列ALL是可执行的命令。

zhangsan ALL=(ALL) /sbin/ifconfig //添加此行

%wheel  ALL=(ALL)       NOPASSWD: ALL //wheel组在任何终端登录都不需要密码即可执行所有命令

关于wheel组需要注意,一旦将用户加入了wheel组,则默认表示该用户拥有执行所有命令的权限,因为在visudo中默认有以下配置:

%wheel  ALL=(ALL)       ALL

# visudo

zhangsan ALL=(ALL) /sbin/ifconfig,/sbin/route //表示张三除了sbin下的ifconfig、route能执行以外,其他所用命令均不可执行

# visudo

Defaults logfile = "/var/log/secure" //添加此项,表示记录sudo使用日志,默认该功能已生效。

对于已授权用户进行执行命令的方法:

$ sudo ifconfig ens33 1.1.1.1/24 //回车后需要输入当前用户密码进行验证,验证通过即可执行命令

$ sudo -l //查看当前用户的授权信息

# cat /var/log/secure //root用查看sudo执行记录

当使用相同授权的用户过多,或者授权的命令较多可使用别名方式进行定义:

# visudo

User_Alias USER=zhangsan,lisi //定义用户张三李四给别名 USER

Host_Alias HOST=localhost //定义主机给HOST

Cmnd_Alias CMND=/bin/cat,/bin/cp //定义命令给CMND

USER HOST=CMND //代表用户zhangsan lisi能够在 本地主机上执行 cat cp命令

7.禁用重启热键Ctrl+Alt+Del

避免因用户误操作导致重启

CentOS 7:

# mv /usr/lib/systemd/system/ctrl-alt-del.target{,.back}

CentOS 6:

# vim /etc/init/control-alt-delete.conf

#start on control-alt-delete //注释

#exec /sbin/shutdown -r now "Control-Alt-Delete pressed" //注释

8.设置单用户模式密码

实现用户从单用户模式进入系统时需密码验证:

CentOS 7:

# grub2-mkpasswd-pbkdf2

# vim /etc/grub.d/00_header //末尾新增行增加以下内容:  "cat<<EOF也必须增加"

cat <<EOF

set superusers='root'

password_pbkdf2 root grub.pbkdf2.sha512.10000.15699E16E86D79C3084AA969626337FB3A8000B84FC03D9DAB9FDBA6F95DB69A14EB85F100A221D6C396AD465820FF5FD8726E4CC8D5151433D7CC437B5440C5.797A64272FE6F595D07496730DEA2C304670322FA7473DC3BA18DD4C55533B9166E7023B619E8114C04B93590405DBFCD82774B7334D8CF450270B8E497C628E

EOF

# grub2-mkconfig -o /boot/grub2/grub.cfg //重新配置文件

也可以直接设置明文密码:

cat <<EOF

set superusers='root'

password root 123456

EOF

# grub2-mkconfig -o /boot/grub2/grub.cfg //重新配置文件

CentOS 6:

# grub-md5-crypt //生成加密密码字符串

Password:

Retype password:

$1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/

# vim /boot/grub/grub.conf

splashimage=(hd0,0)/grub/splash.xpm.gz //在此项下加入以下行,保存退出

password --md5 $1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/ //添加此行,表示设置密码

9.调整BIOS引导设置

将第一引导设备设为当前系统所在硬盘

禁止从其他设备(光盘、U盘、网络)引导系统

将安全级别设为setup,并设置管理员密码

10.禁止root用户从本地登录:

# vim /etc/securetty //只对root生效

#tty1 //注释登录终端

#tty2

....

11.禁止root用户通过sshd登录:

# vim /etc/ssh/sshd_config

PermitRootLogin no //将此项#号去掉,并修改参数为no,

# systemctl restart sshd //重启生效

12.禁止普通用户以本地及ssh登录:

touch /etc/nologin

允许普通用户登录:

rm -rf /etc/nologin

13.检查系统中特权用户及是否存在空口令用户

查看是否存在特权用户

通过判断uid是否为0来查找系统是否存在特权用户,使用命令awk即可:

# awk -F: '$3==0 {print $1}' /etc/passwd

查看是否存在空口令用户

安全起见,在/etc/passwd中用户的密码是被保护的状态,即使用了*号来隐藏。而实际的密码内容是加密后,保存在/etc/shadow文件中,我们确认是否存在空口令的用户就确认该文件中密码对应字段的长度是否为0,如果为0则证明该用户密码为空。

新建用户并且将用户密码设置为空:

# useradd lisi

# passwd -d lisi

shadows文件的结构:

"root:"后面的即为加密后的密码内容,新建用户由于密码未设置则会出现“!!”,且无法登录系统,密码字段为“*”为系统用户,也无法登录系统。

通过命令来查找是否存在该字段长度为0的用户

# awk -F: 'length($2)==0 {print $1}' /etc/shadow

14.弱口令检测

# cd

# tar zxf john-1.8.0.tar.gz

# cd john-1.8.0/src

# make clean linux-x86-64 //32位 Intel平台

# cp /etc/shadow /root/shadow.txt

# cd /root/john-1.8.0/run/

# ./john /root/shadow.txt //执行暴力破解

Press 'q' or Ctrl-C to abort, almost any other key for status

123456           (root) //已破解用户root 密码为123456

按CTRL+C可终止破解

查看已破解的账户列表:

# ./john --show /root/shadow.txt

通过其他字典进行破解

# :>john.pot //清空破解信息

# ./john --wordlist=./password.lst /root/shadow.txt //指定其他字典进行破解

15.sshd服务防止暴力破解

防止暴力破解的两种方法:

方法一、配置安全的sshd服务

  1. 密码足够的复杂,密码的长度要大于8位最好大于20位。密码的复杂度是密码要尽可能有数字、大小写字母和特殊符号混合组成
  2. 修改默认端口号
  3. 不允许root账号直接登陆,添加普通账号,授予root的权限

是否可以禁止root身份登录?

不行,因为有些程序需要使用root身份登录并运行。另外判断一个用户是不是超级管理员,看的是用户的ID是否为0。

4、不允许密码登陆,只能通过认证的秘钥来登陆系统

方法二:通过防护软件来避免暴力破解

简单、灵活、功能强大

技术1、fail2ban

实战背景:

最近公网网站一直被别人暴力破解sshd服务密码。虽然没有成功,但会导致系统负载很高,原因是在暴力破解的时候,系统会不断地认证用户,从而增加了系统资源额外开销,导致访问公司网站速度很慢。

fail2ban可以监视你的系统用户登录日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是防火墙),而且可以发送e-mail通知系统管理员,很好、很实用、很强大!

#ban (bæn)禁令

简单来说其功能就是防止暴力破解。工作的原理是通过分析一定时间内的相关服务日志,将满足动作的相关IP利用iptables加入到dorp列表一定时间。 

注:重启iptables服务的话,所有DORP将重置。

下载软件包:

http://www.fail2ban.org/wiki/index.php/Downloads

安装:

解压查看readme文件

# tar -zxf fail2ban-0.8.14.tar.gz

# cd fail2ban-0.8.14 

# vim README.md  #查看以下内容

需要安装python开发环境,并且版本要大于2.4

查看当前系统中python的版本:

# python -V

安装:

# cd fail2ban-0.8.14

# python setup.py install

相关主要文件说明:

/etc/fail2ban/action.d //动作文件夹,内含默认文件。iptables以及mail等动作配置

/etc/fail2ban/fail2ban.conf    //定义了fai2ban日志级别、日志位置及sock文件位置

/etc/fail2ban/filter.d                     //条件文件夹,内含默认文件。过滤日志关键内容设置

/etc/fail2ban/jail.conf     //主要配置文件,模块化。主要设置启用ban动作的服务及动作阀值

生成服务启动脚本:

# pwd

/root/fail2ban-0.8.14

# cp files/redhat-initd /etc/rc.d/init.d/fail2ban   

# chkconfig --add fail2ban   //开机自动启动

怎么知道要复制这个文件? 一个新的软件包,后期怎么可以知道哪个文件是启动脚本文件?

这就要找服务器启动脚本文件中有什么特点,然后过滤出来对应的文件名。

# grep chkconfig ./* -R --color

./files/redhat-initd:# chkconfig: - 92 08

启动脚本里都包含chkconfig 字段

应用实例

设置条件:ssh远程登录5分钟内3次密码验证失败,禁止用户IP访问主机1小时,1小时该限制自动解除,用户可重新登录。

因为动作文件(action.d/iptables.conf)以及日志匹配条件文件(filter.d/sshd.conf )安装后是默认存在的。基本不用做任何修改。所有主要需要设置的就只有jail.conf文件。启用sshd服务的日志分析,指定动作阀值即可。

实例文件/etc/fail2ban/jail.conf及说明如下:

# vim /etc/fail2ban/jail.conf

[DEFAULT]               #全局设置

ignoreip = 127.0.0.1/8       #忽略的IP列表,不受设置限制

bantime  = 600             #屏蔽时间,单位:秒

findtime  = 600             #这个时间段内超过规定次数会被ban掉

maxretry = 3                #最大尝试次数

backend = auto            #日志修改检测机制(gamin、polling和auto这三种)

[ssh-iptables]               #单个服务检查设置,如设置bantime、findtime、maxretry和全局冲突,服务优先级大于全局设置。

enabled  = true             #是否激活此项(true/false)修改成 true

filter   = sshd              #过滤规则filter的名字,对应filter.d目录下的sshd.conf

action   = iptables[name=SSH, port=ssh, protocol=tcp]             #动作的相关参数,对应action.d/iptables.conf文件

sendmail-whois[name=SSH, dest=you@example.com, sender=fail2ban@example.c

om, sendername="Fail2Ban"]#触发报警的收件人

logpath  = /var/log/secure   #检测的系统的登陆日志文件。这里要写sshd服务日志文件。 默认为logpath  = /var/log/sshd.log

#5分钟内3次密码验证失败,禁止用户IP访问主机1小时。 配置如下

bantime  = 3600   #禁止用户IP访问主机1小时

findtime  = 300    #在5分钟内内出现规定次数就开始工作

maxretry = 3    #3次密码验证失败

启动服务:

# systemctl start fail2ban

# systemctl enable fail2ban

测试:

# > /var/log/secure  #清日志。 从现在开始

# systemctl restart fail2ban

Stopping fail2ban:                                         [  OK  ]

Starting fail2ban:                                         [  OK  ]

# iptables -L -n

会多生成一个规则链。

测试:故意输入错误密码3次,再进行登录时,会拒绝登录

# ssh 192.168.1.63

root@192.168.1.63's password:

Permission denied, please try again.

root@192.168.1.63's password:

Permission denied, please try again.

root@192.168.1.63's password:

Permission denied (publickey,password).

# ssh 192.168.1.63

ssh: connect to host 192.168.1.63 port 22: Connection refused

# iptables -L |tail -4

Chain fail2ban-SSH (1 references)

target     prot opt source               destination

DROP       all  --  192.168.7.142        anywhere

RETURN     all  --  anywhere             anywhere

# fail2ban-client status#配置好之后我们检测下fail2ban是否工作。

Status

|- Number of jail: 1

`- Jail list: ssh-iptables

#具体看某一项的状态也可以看,如果显示被ban的ip和数目就表示成功了,如果都是0,说明没有成功。

# fail2ban-client status ssh-iptables

Status for the jail: ssh-iptables

|- filter

|  |- File list: /var/log/secure

|  |- Currently failed: 0

|  `- Total failed: 3

`- action

   |- Currently banned: 1

   |  `- IP list: 192.168.1.64

   `- Total banned: 1

#查看fail2ban的日志能够看到相关的信息

# tail /var/log/fail2ban.log

2019-08-03 19:40:00,233 fail2ban.actions[12111]: WARNING [ssh-iptables] Ban 192.168.1.64

需要注意:

1、如果做错了,想清空一下记录,还原:

# > /var/log/secure

# systemctl restart fail2ban

2、另外如果后期需要把iptables清空后或iptables重启后,也需要把fail2ban重启一下。

技术2、通过pam 模块来防止暴力破解ssh

# vim /etc/pam.d/sshd

在第一行下面添加一行:

auth    required    pam_tally2.so    deny=3    unlock_time=600 even_deny_root root_unlock_time=1200

说明:尝试登陆失败超过3次,普通用户600秒解锁,root用户1200秒解锁

手动解除锁定:
例如,查看work用户的错误登陆次数:
pam_tally2 --user work
例如,清空 work 用户的错误登陆次数,
pam_tally2 --user work --reset 

技术3、通过shell脚本来防止暴力破解ssh

通过自定义的shell脚本来防护安全

技术4、denyhosts 软件防护

当我们的服务器对外提供服务的时候,难免的会受到其他用户的扫描和试图登录的操作,以侵入服务器,这样不仅会浪费系统的资源,有可能还会被其他用户进行N多次尝试后登录系统,对系统造成破坏影响业务系统的正常运行。DenyHosts是一个使用python编写的脚本文件,通过运行这个脚本(可以通过命令行运行、计划任务或者是作为服务运行)可以有效的阻止对SSH服务器的攻击。DenyHosts具有如下特性:

1. /var/log/secure日志文件进行分析,查找所有的登录尝试,并且过滤出失败和成功的尝试。

2.记录下所有失败的登录尝试的用户名和主机,如果超过阀值,则记录主机。

3.保持对每一个登录失败的用户(存在系统中或不存在系统中的用户)的跟踪

4.对每一个可疑的登录进行跟踪。(虽然登录成功,但是有很多次登录失败的记录)

5.将可疑地址的主机加入到/etc/hosts.deny文件中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/608812.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【算法刨析】完全背包

完全背包与01背包的区别 01背包对于一个物品只能选择一次&#xff0c;但是完全背包可以选择任意次&#xff1b; 思路 和01背包类似&#xff0c;01背包我们只需要判断选或不选&#xff0c;完全背包也是如此&#xff0c;不同的是&#xff0c;对于这个物品我们在判断选后在增加一…

【考试100】2023年监理《目标控制(土建)》真题及答案精选

​来源&#xff1a;考试100 一、单项选择题 1、工程建设与使用中&#xff0c;保证人身和环境免受危害&#xff0c;是建设工程质量特性中的&#xff08; &#xff09;要求。A .适用性 B .耐久性 C .安全性 D .可靠性 参考答案&#xff1a;C 解析&#xff1a;安全性&…

2024 全自动ai生成视频MoneyPrinterTurbo源码

只需提供一个视频 主题 或 关键词 &#xff0c;就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐&#xff0c;然后合成一个高清的短视频。 源码下载&#xff1a;https://download.csdn.net/download/m0_66047725/89208288 更多资源下载&#xff1a;关注我。

AGV与智能仓储系统集成的实践与优化

agv 根据相关研究报告指出&#xff0c;储存、装卸、等待及运送等程序&#xff0c;几乎占了整个生产制程95%的时间&#xff0c;因此导致工厂中的再制品及物料无法有效降低&#xff0c;耗损大量人工等问题&#xff0c;早已是制造业者在经营上的痛点。而智慧工厂中的AGV无人搬运车…

Gitee 码云与Git 交互

优质博文&#xff1a;IT-BLOG-CN 一、进入码云官方网站&#xff0c;注册用户 码云(Gitee.com)是一个类似于GitHub的在线代码托管平台。 码云提供了包括版本控制、代码托管、协作开发和代码分享等功能&#xff0c;基于Git开发&#xff0c;支持代码在线查看、历史版本查看、Fo…

《系统架构设计师教程(第2版)》第10章-软件架构的演化和维护-06-大型网站系统架构演化实例

文章目录 第一阶段&#xff1a;单体架构第二阶段&#xff1a;垂直架构第三阶段&#xff1a;使用缓存改善网站性能第四阶段&#xff1a;使用服务集群改善网站并发处理能力第五阶段&#xff1a;数据库读写分离第六阶段&#xff1a;使用反向代理和CDN加速网站响应第七阶段&#xf…

CommandLineRunner和ApplicationRunner接口实现类中run方法发生异常导致spring程序关闭

今天其他组的一个程序在k8s中启动报错&#xff0c;启动之后立马就关闭了。我去看日志&#xff0c;发现最后面报了一个UnknownHostException异常&#xff0c;感觉是这个原因导致的&#xff0c;然后查看异常栈。定位到一个CommandLineRunner接口实现类&#xff0c;这个实现类里面…

乡村振兴的文化旅游融合:整合乡村文化资源与旅游资源,发展文化旅游产业,提升美丽乡村的文化内涵和旅游吸引力

一、引言 随着城市化进程的加速和人们精神文化需求的日益增长&#xff0c;乡村旅游逐渐成为旅游市场的新热点。乡村振兴战略的提出&#xff0c;为乡村旅游的发展提供了新的契机。在这一背景下&#xff0c;如何整合乡村文化资源与旅游资源&#xff0c;发展文化旅游产业&#xf…

搜维尔科技:光学动作捕捉系统用于城市公共安全智慧感知实验室

用户名称&#xff1a;西安科技大学 主要产品&#xff1a;Optitrack Priime41 光学动作捕捉系统&#xff08;8头&#xff09; 在6米8米的空间内&#xff0c;通过8个Optitrack Priime41光学动作捕捉镜头&#xff0c;对人体动作进行捕捉&#xff0c;得到用户想要的人体三维空间坐…

synchronized关键字和ReentrantLock锁区别

synchronized关键字和ReentrantLock锁是Java中用于同步的两个重要机制&#xff0c;它们在很多方面有所不同&#xff1a; 1. **锁定范围**: synchronized关键字只能在方法的执行过程中提供锁定&#xff0c;而ReentrantLock可以锁定任何对象&#xff0c;包括方法、代码块和对象。…

认养小游戏功能介绍

认养小游戏通常模拟了真实的农业生产过程&#xff0c;让玩家能够在线上体验种植、养殖的乐趣。以下是一些常见的认养小游戏功能介绍&#xff1a; 选择认养的农产品&#xff1a;首先&#xff0c;玩家可以从游戏中提供的多种农产品中选择自己想要认养的种类&#xff0c;如蔬菜、…

容器化Jenkins远程发布java应用(方式二:自定义镜像仓库远程拉取构建)

1.创建maven项目 2.配置git、maven 3.阿里控制台>容器镜像服务>镜像仓库>创建镜像仓库 4.执行shell脚本&#xff08;推送镜像到阿里云镜像仓库&#xff09; 使用到登录阿里云仓库命令 #!/bin/bash # 服务名称 SERVER_NAMEplanetflix-app # 镜像tag IMAGE_TAG1.0.0-SN…

JavaWeb之过滤器(Filter)与监听器(Listener)

前言 过滤器(Filter) 1.什么是过滤器 2.过滤器的语法格式 3.使用场景 3.1.如何防止用户未登录就执行后续操作 3.2.设置编码方式--统一设置编码 3.3.加密解密(密码的加密和解密) 3.4.非法文字筛选 3.5.下载资源的限制 监听器(Listener) 1.什么是监听器 2.监听器分类…

5G工业路由器实现驾考科目三实时监控与远程控制

5G驾考路由器的应用主要体现在智能驾考系统中&#xff0c;其优势包括提高考试安全性、效率和规范性&#xff0c;同时杜绝违规行贿作弊的行为。 在驾考系统中&#xff0c;5G工业路由器是数据传输的桥梁设备。车载设备如摄像头、定位系统、硬盘录像机、传感器等&#xff0c;通过串…

DetCLIPv3:面向多功能生成开放词汇的目标检测

DetCLIPv3:面向多功能生成开放词汇的目标检测 摘要IntroductionRelated worksMethod DetCLIPv3: Towards Versatile Generative Open-vocabulary Object Detection 摘要 现有的开词汇目标检测器通常需要用户预设一组类别&#xff0c;这大大限制了它们的应用场景。在本文中&…

07 常用工具集

本课时主要介绍常用的工具&#xff0c;将会讲解三个知识点&#xff1a; JVM 相关工具的作用和适用场景&#xff1b; Git 常用命令和工作流&#xff1b; Linux 系统中常用分析工具。 常用工具汇总 常用工具汇总如下图所示。 说明&#xff1a;这里列出的都是一些相对独立的工…

Edge视频增强功能

edge://flags/#edge-video-super-resolution 搜索Video查找 Microsoft Video Super Resolution 设置为Enabled

Linux操作系统中管理磁盘的另外一种操作方式。即LVM——逻辑卷管理操作

在Linux操作系统中管理磁盘的一种方法名称——LVM&#xff0c;这种管理磁盘的优势。 1.使用LVM去管理磁盘可以在不影响原来数据的前提下去扩容磁盘空间或者是缩减磁盘空间。 在LVM中除了上层逻辑券可以扩容&#xff0c;下层的券组也可以扩容。 2.使用LVM管理的磁盘支持快照功…

TriCore: 从RTOS内核的角度看CSA

今天尝试从RTOS内核的角度来看看 TriCore 的 CSA。 CSA的细节信息可以参考前一篇文章 TriCore User Manual 笔记 1-CSDN博客 CSA 的全称是 Context Save Area&#xff0c;顾名思义就是专门用来保存上下文的一块存储区域。 既然是上下文使用&#xff0c;那必然要求低延迟&…

【Leetcode每日一题】 分治 - 交易逆序对的总数(难度⭐⭐⭐)(74)

1. 题目解析 题目链接&#xff1a;LCR 170. 交易逆序对的总数 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 归并排序的基本思路 归并排序将数组从中间分成两部分&#xff0c;在排序的过程中&#xff0c;逆序对的来…
最新文章