Linux基础软件-selinux&库文件&swap

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维。讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解:

Linux基础软件-软件安装

Linux基础软件-yum(一)

Linux基础软件-yum(二)

Linux基础软件-ntp

Linux基础软件-chrony

Linux基础软件-dns(一)

Linux基础软件-dns(二)

Linux基础软件-nfs

Linux基础软件-lvm

Linux基础软件-Selinux&库文件&swap(本章节)

本小节主要介绍Linux里面的几个概念,虽然在很多时候,这些并不会在日常使用关注到,但是还是有了解的意义。

SELinux

SELinux(Security-Enhanced Linux)是一种安全增强型的Linux安全子系统,由美国国家安全局(NSA)开发,旨在增强Linux系统的安全性。它通过实施强制访问控制(MAC)来提供高级的安全保护机制。

具体来说,SELinux引入了一种额外的安全层,不同于传统的自由访问控制(DAC)。在DAC中,每个文件、进程或用户可以自行设定权限,并且用户可以超越其他用户拥有更高权限。这可能导致安全漏洞,因为任何一个受损的进程都可以访问系统上的任何资源。

虽然SElinux很安全,但是在实际运维中,除了特殊要求,一般都会关闭selinux。因为如果要使用Selinux,软件或者应用程序需要很复杂的配置才可以。

#临时关闭,重启失效
setenforce 0
#修改配置文件,重启以后生效
#也可以通过vi进行修改
sed -i 's/enforcing/disabled/' /etc/selinux/config

库文件

我们在介绍如何让Docker镜像最小化的时候,有提过以下这个库文件,在平时使用也是不容易感知到这个库文件的。在Linux基本目录介绍的时候,也说过有2个目录:/lib /lib64是库文件目录,存放系统动态链接库和内核模块。

在Linux的哲学里面一切皆文件里面,我们对Linux的操作实际上就是对文件进行增删查改,这些基础功能底层逻辑就是各种函数,相当于系统把这些功能封装在各种函数里面,供应用程序去调用。

文件读写函数:如 fopen、fclose、fread、fwrite 等,用于打开、关闭、读取和写入文件。

终端输入输出函数:如 printf、scanf、fgets、fputs 等,用于从终端读取输入和输出结果。

系统调用函数:如 read、write 等,用于直接与文件描述符进行交互,提供更底层的文件操作能力。

这些上面的函数都集成在系统的库文件里面如果我们自己开发的程序能力,就需要使用到这些库文件,这就是动态库,供操作系统的程序调用。和动态库对应的就是静态库。所以静态库,就不只依赖自己,完全不依赖系统自带的库文件。

#动态库
[root@localhost ~]# ldd /usr/bin/python
  linux-vdso.so.1 =>  (0x00007ffd632ce000)
  libpython2.7.so.1.0 => /lib64/libpython2.7.so.1.0 (0x00007f96125a0000)
  libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9612384000)
  libdl.so.2 => /lib64/libdl.so.2 (0x00007f9612180000)
  libutil.so.1 => /lib64/libutil.so.1 (0x00007f9611f7d000)
  libm.so.6 => /lib64/libm.so.6 (0x00007f9611c7b000)
  libc.so.6 => /lib64/libc.so.6 (0x00007f96118ad000)
  /lib64/ld-linux-x86-64.so.2 (0x00007f961296c000)
 
#静态库
[root@localhost ~]# ldd /usr/bin/cd
  不是动态可执行文件

SWAP

Swap是计算机系统中用于暂时存放内存数据的一种技术。它通常指的是交换空间(swap space),是一种虚拟内存的扩展,用于在物理内存不足时将不活动的内存页从RAM(随机存取存储器)移动到硬盘上的一部分空间。这样,RAM中可以腾出空间来加载当前需要的数据和程序。

目前来说,对于动辄几百G,甚至上T的内存面前,swap已经基本没有使用的必要了,但是在互联网早期,内存都很低的情况,swap是提高系统性能的一种重要方法。而且在centos7安装的时候无论默认的lvm还是标准分区,都会单独拿一块分区出来用作swap。只是随着内存的提高,就算开启了swap也会关闭swap功能,而且k8s这个软件在某些版本里面默认情况下,如果有swap还无法启动成功。

1.关闭swap

#关闭swap,他会主备把swap的数据清空
swapoff -a
#注释fstab的开机启动,避免开机再次启动swap功能

2.开启swap

#创建一个文件,大小,路径,名字都可以自定义
dd if=/dev/zero of=/swapfile bs=1M count=1024
#设置权限,保证安全
chmod 600 /swapfile
#标记为swap文件
mkswap /swapfile
#启动swap
swapon /swapfile

#如果要永久启用,需配置fstab
/swapfile   none    swap    sw    0   0

图片

总结

1.selinux如果不使用,一般都需要在系统进行初始化或者制作通用模板的时候就把永久关闭掉。

2.库文件一般只有在进行某些软件的编译安装的时候会涉及到库文件因为版本不对导致异常的清空。

3.swap,如果没开则不需要管,如果开启了,也可以在初始化的时候进行关闭,看swap是否正常,其实主要看他的动态变化,如果变化大,说明内存和磁盘在进行大量数据交换,会影响性能。如果变化很小或者几乎没有变化,则说明使用不频繁则不会有啥问题。

4.在内核里面还有个参数,可用于swap的介入程度,数字越小,就是让swap介入越低。

[root@localhost ~]# cat /proc/sys/vm/swappiness 
30

关注微信公众号《运维小路》获取更多内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值