Linux 基础知识
张小小浩
曾意气 一马过凉州
曾笑游 载花同载酒
曾盛名 才高有八斗
展开
-
网卡高可用-配置bound
经过查看有四块网卡未使用,分别为 ens36 ens37 ens38 ens 39。现打算将ens36和ens37做一个bound,分配ip为:10.123.123.123。ens38和ens39做一个bond,分配ip为10.122.122.122,并且在此bound上虚拟出来一个ip地址为:10.122.122.123。原创 2024-01-03 15:15:43 · 463 阅读 · 0 评论 -
写写内网环境下如何通过ntp同步父时间服务器的时间
假设服务器分别为:1.1.1.2 1.1.1.3。原创 2023-11-29 14:54:31 · 134 阅读 · 0 评论 -
写写gaussdb中的事务
read uncommitted:读未提交隔离级别,GaussDB(DWS)不支持read uncommitted,如果设置了read uncommitted,实际上使用的是read committed。repeatable read:可重复读隔离级别,仅仅能看到事务开始之前提交的数据,不能看到未提交的数据,以及在事务执行期间由其它并发事务提交的修改。事务隔离级别,决定多个事务并发操作同一个对象时的处理方式。read committed:读已提交隔离级别,只能读到已经提交的数据,而不会读到未提交的数据。原创 2023-11-29 14:34:45 · 184 阅读 · 0 评论 -
gaussdb中的存储过程
存储过程是一个可重用的、批处理的SQL语句代码块,可以包含多条SQL语句,通常用于执行复杂的数据操作、提高数据库的性能和安全性,以及简化数据库应用程序的开发和维护。在GaussDB中,存储过程的使用可以使数据库应用程序更具灵活性、数据完整性更高、执行速度更快。原创 2023-11-22 16:50:44 · 446 阅读 · 0 评论 -
自定义数据类型
【代码】自定义数据类型。原创 2023-11-22 11:00:55 · 43 阅读 · 0 评论 -
gaussdb中的sql标准,表与sql语句
gaussdb中的sql标准,表与sql语句。原创 2023-11-21 14:45:02 · 291 阅读 · 0 评论 -
写写gaussdb中的模式
GaussDB 的模式是对数据库做一个逻辑分割。所有的数据库对象都建立在模式下面。GaussDB 200的模式和用户是弱绑定的,所谓的弱绑定是指虽然创建用户的同时会自动创建一个同名模式,但用户也可以单独创建模式,并且为用户指定其他的模式。原创 2023-11-20 16:02:07 · 159 阅读 · 0 评论 -
gaussdb的用户与权限
系统权限对象权限1.数据库databasesconnect 允许用户连接到指定的数据库create 允许在数据库中创建新的模式2.模式 SCHEMACREATE 允许在模式中创建新的对象USAGE 允许访问包含在指定模式中的对象,若没有该权限,则只能看到这些对象的名字3.函数 FUNCTIONEXECUTE允许使用指定的函数,以及利用这些函数实现的操作符4.表空间 TABLESPACE。原创 2023-11-15 15:43:14 · 805 阅读 · 0 评论 -
写下逻辑内存管理模块
逻辑内存管理模块是操作系统中的重要组成部分,它为应用程序提供了一种虚拟的内存视图,简化了应用程序对内存的管理和访问。不同的操作系统和体系结构可能有不同的内存管理模块实现方式,但其核心目标是为应用程序提供可靠、高效的内存管理功能。逻辑内存管理模块是操作系统中的一个组件,负责管理应用程序在逻辑上使用的内存空间。内存分配和释放:逻辑内存管理模块负责在应用程序请求内存时进行分配,并在不需要时释放已分配的内存。内存映射和共享:逻辑内存管理模块可以支持内存映射和共享机制,使多个应用程序或进程可以共享同一块内存区域。原创 2023-11-14 10:34:11 · 44 阅读 · 0 评论 -
浅谈通信库
在计算机中,通信库指的是一组函数、类或模块,用于在计算机程序中实现各种通信协议和通信功能。通信库提供了一种编程接口,使开发人员能够在应用程序中进行网络通信、串口通信、进程间通信等操作。通信库通常包含了各种通信协议的实现,例如TCP/IP、HTTP、FTP、SMTP等。它们提供了一系列函数或方法,使开发人员能够轻松地与其他计算机或设备进行通信。通信库隐藏了底层通信细节,简化了通信操作,使开发人员能够更专注于应用程序的逻辑。通信库通常提供了发送和接收数据的功能,以及处理连接、错误处理、数据解析等功能。原创 2023-11-14 10:18:45 · 90 阅读 · 0 评论 -
执行apt-get update报错 the public key is not available: NO_PUBKEY B53DC80D13EDEF05解决方案
其中B53DC80D13EDEF05为报错中的PUBKEY。原创 2023-09-30 10:22:06 · 474 阅读 · 0 评论 -
整理下top命令的使用技巧
这些技巧和命令选项可以帮助你更好地使用top命令来监视和分析系统的资源使用情况。你可以根据需要结合使用这些选项,以获取所需的信息。执行命令:在top命令的交互界面中,可以执行一些命令来获取更多的系统信息或进行其他操作。实时刷新频率:默认情况下,top命令每隔3秒刷新一次。排序方式:按照不同的资源指标对进程进行排序。进程过滤:通过命令行选项或交互式界面进行进程过滤。原创 2023-09-12 09:57:31 · 698 阅读 · 0 评论 -
简单的写写java应用占满cpu怎么排查
将""替换为Java进程的进程ID。这将生成一个名为"thread_dump.txt"的文件,其中包含Java应用程序的线程堆栈信息。将"“替换为Java进程的进程ID,”<线程ID>"替换为CPU使用率较高的线程ID。根据线程堆栈信息中的方法调用关系,定位可能导致高CPU使用率的代码段或方法。通过以上命令和步骤,可以获取Java应用程序的CPU使用情况、线程堆栈信息和内存使用情况,帮助定位和解决导致高CPU的问题。这将显示Java堆内存中各个类的实例数目,帮助确定是否存在内存泄漏或过度使用的情况。原创 2023-09-12 09:51:10 · 161 阅读 · 0 评论 -
如何对linux系统进行性能的分析和优化
优化磁盘性能:使用工具如iostat、iotop来查看磁盘的使用情况,识别磁盘I/O瓶颈。检查系统日志:查看系统日志(如/var/log/syslog、/var/log/messages)以及应用程序日志,寻找异常和错误信息,了解系统运行状况。优化内存管理:通过工具如free、vmstat来监控内存使用情况。可以考虑调整内核参数,如调整内存分配策略、使用swap分区、配置适当的内存缓存等。监控系统资源:使用系统监控工具如top、htop、sar、vmstat等来查看CPU、内存、磁盘和网络的使用情况。原创 2023-09-09 10:22:34 · 39 阅读 · 0 评论 -
写写哪些年我的mysql配置,mysql配置、用户管理、防火墙、备份恢复与优化
如果需要远程访问MySQL数据库,编辑配置文件并更改绑定地址(bind-address)为合适的IP地址或注释掉该行(不推荐)。配置防火墙和安全性:根据你的需求和安全要求,配置防火墙规则以允许MySQL的网络连接,并采取其他安全措施,如限制远程访问、设置复杂的密码、定期备份等。编辑配置文件:MySQL的配置文件通常是my.cnf(Unix/Linux)。配置MySQL:根据需求,对MySQL进行一些配置。是指连接MySQL时使用的用户名,是要备份或恢复的特定表名称,而。是要备份或恢复的数据库名称,原创 2023-09-09 10:01:04 · 41 阅读 · 0 评论 -
apache虚拟主机配置转发weblogic12C
【代码】apache虚拟主机配置转发weblogic12C。原创 2023-09-06 17:50:09 · 109 阅读 · 0 评论 -
简单的写写 透明代理
通过先经过7层代理再经过4层代理的方式,可以实现更细粒度的请求处理和更高级的功能。4层代理是在传输层(TCP、UDP等)对请求进行代理和处理,主要关注网络连接、IP和端口等信息。在某些情况下,可能会选择只使用7层代理或只使用4层代理,或者使用其他更复杂的代理组合。7层代理是在应用层(HTTP、HTTPS等)对请求进行代理和处理,可以实现更高级的功能,如内容路由、负载均衡、SSL终止、会话保持等。一般情况下,服务请求代理的顺序是先经过7层代理(应用层代理)再经过4层代理(传输层代理)。原创 2023-08-15 02:18:49 · 78 阅读 · 0 评论 -
maven编译的时候报错 expected http 101 response but was 500
Maven 代理设置:如果使用了代理服务器来进行网络访问,确保 Maven 的代理设置正确。服务器问题:如果其他网页或服务可以正常访问,但仅在与特定服务器进行通信时出现问题,那么可能是服务器本身出现了故障或配置问题。依赖项或配置问题:检查你的项目的依赖项和配置是否正确设置。特别注意与服务器通信相关的配置,例如 URL、端口、协议等。而 HTTP 500 是服务器内部错误的状态码,表示服务器在处理请求时遇到了问题。网络连接问题:请确保你的网络连接正常,并且能够访问所需的服务器。原创 2023-08-10 15:05:17 · 504 阅读 · 0 评论 -
写写k8s中的pod的yaml结构
上述示例定义了一个名为my-pod的Pod,其中包含一个名为my-container的容器,映像为nginx:latest,容器端口为80。使用kubectl describe pod pod-name命令查看Pod的详细信息和事件。spec字段:包含Pod的规范,定义了Pod中容器的映像、端口、环境变量、资源限制等。使用kubectl delete pod pod-name命令删除Pod。metadata字段:包含Pod的元数据,例如名称、标签和注释。resources:定义容器的资源限制和请求。原创 2023-08-08 16:29:57 · 108 阅读 · 0 评论 -
写写python中的requests模块
是Python中常用的一个HTTP客户端库,它提供了简洁且易于使用的API,可以轻松地发送HTTP请求并处理响应。模块可以实现HTTP GET、POST、PUT、DELETE等请求,以及设置请求头、请求体、代理等功能。模块可以方便地处理HTTP请求和响应,是Python中非常实用的一个模块。模块还提供了许多其他的函数和方法,例如设置请求头、请求体、代理等。:获取HTTP响应的内容,以字节流形式返回。:获取HTTP响应的内容,以字符串形式返回。:发送HTTP GET请求,并返回一个。原创 2023-07-11 10:28:51 · 59 阅读 · 0 评论 -
写写python的random模块
模块生成的随机数是伪随机数,即它们是根据特定算法生成的,而不是真正随机的。因此,在某些情况下,如果需要高度安全的随机性,可能需要使用其他更复杂的方法。是Python内置的一个模块,它提供了生成随机数的函数和方法。:从population中随机选择k个元素,返回一个新的列表。:生成一个a到b之间的随机浮点数,包括a和b。:生成一个a到b之间的随机整数,包括a和b。:生成一个0到1之间的随机浮点数。:从序列seq中随机选择一个元素。:将序列seq中的元素随机打乱。原创 2023-07-11 10:16:58 · 105 阅读 · 0 评论 -
写写python中 raise
在Python中,raise关键字用于抛出异常。在上述代码中,我们定义了一个名为MyException的自定义异常,并在try语句块中使用raise语句抛出该异常。在except语句块中,我们捕获了该自定义异常,并输出了该异常的错误信息。需要注意的是,如果在程序执行过程中没有针对该异常的处理代码,程序将会抛出未处理的异常,导致程序中断。raise语句可以抛出系统内置的异常,例如ValueError、TypeError、ZeroDivisionError等,也可以自定义异常对象,并抛出自定义异常。原创 2023-07-07 16:17:36 · 56 阅读 · 0 评论 -
python获取函数中的指定返回值
在 Python 中,如果函数返回多个值,可以使用索引或切片的方式获取其中一个返回值。由于函数返回的是一个元组对象,因此可以像访问元组一样访问其中的元素。然后,我们可以使用索引或切片的方式获取其中一个返回值。函数获取列表中的最大值和最小值,并将返回值赋值给。例如,在下面的代码中,我们定义了一个函数。获取前两个返回值,即最大值和最小值。获取第一个返回值,即最大值;获取第二个返回值,即最小值;在这个例子中,我们首先调用。原创 2023-07-05 10:26:24 · 640 阅读 · 0 评论 -
写一个日志打包备份的脚本
【代码】写一个日志打包备份的脚本。原创 2023-07-05 09:42:24 · 157 阅读 · 0 评论 -
写写python中shutil模块
模块是 Python 标准库中用于执行高级文件操作的模块,它提供了许多用于复制、移动、删除文件和目录的函数。函数会删除指定路径的目录及其中的所有文件和子目录,如果操作不当可能会造成数据丢失。模块的一些函数在执行时具有破坏性,因此在使用之前应该仔细考虑。以下是一个简单的示例,演示了如何使用。在这个例子中,我们首先导入。原创 2023-07-05 09:35:59 · 37 阅读 · 0 评论 -
写写python中shutil模块
模块是 Python 标准库中用于执行高级文件操作的模块,它提供了许多用于复制、移动、删除文件和目录的函数。函数会删除指定路径的目录及其中的所有文件和子目录,如果操作不当可能会造成数据丢失。模块的一些函数在执行时具有破坏性,因此在使用之前应该仔细考虑。以下是一个简单的示例,演示了如何使用。在这个例子中,我们首先导入。原创 2023-07-05 09:32:33 · 29 阅读 · 0 评论 -
写写python中tarfile模块
模块提供了创建、打开、读取和写入 tar 文件的函数和类。文件是一种存档文件格式,可以将多个文件和目录打包成一个文件,便于传输和存储。模块是 Python 标准库中用于创建和操作 tar 文件的模块。目录中的所有文件和子目录添加到 tar 文件中。创建一个压缩的 tar 文件。模块还支持压缩和解压缩 tar 文件,可以使用。以下是一个简单的示例,演示了如何使用。的 tar 文件,并将其赋值给变量。在这个例子中,我们首先导入。原创 2023-07-05 09:34:04 · 326 阅读 · 0 评论 -
简单写写grep和egrep的区别
的作用都是在文件中搜索匹配指定模式的文本,并将匹配的行输出到标准输出。它们的区别在于所支持的正则表达式语法不同。因此,如果需要使用更多的正则表达式语法来进行文本匹配,可以使用。如果只需要基本的语法就可以完成匹配任务,可以使用。例如,下面的命令将在文件。例如,下面的命令将在文件。原创 2023-05-24 09:54:26 · 1265 阅读 · 0 评论 -
如何使用 AppArmor 来保护应用程序和敏感数据
例如,可以为 Apache Web 服务器创建 AppArmor 策略文件,限制 Apache 进程访问敏感文件和目录的权限。要了解和配置 AppArmor 策略,可以使用命令 aa-genprof 和 aa-logprof 等,可以根据应用程序的需求来定制策略。AppArmor 是一种应用级别的访问控制(ACL)工具,可以限制进程访问文件和目录的权限,从而保护应用程序和敏感数据的安全。使用 AppArmor 可以提供更强的安全保护,但也需要谨慎配置和使用,以免影响系统的正常运行。原创 2023-05-10 12:50:35 · 685 阅读 · 0 评论 -
浅谈 如何使用 SELinux 来增强文件系统的安全性
在 Linux 系统中,可以使用命令 getenforce 来查询 SELinux 的状态,如果输出为 Enforcing,表示 SELinux 已启用,如果输出为 Permissive,表示 SELinux 处于警告模式,不会阻止任何访问。SELinux(Security-Enhanced Linux)是 Linux 操作系统中的一个安全模块,可以提供强制访问控制(MAC)功能,可以阻止未经授权的进程访问敏感文件和目录,从而增强文件系统的安全性。SELinux 可以通过修改策略来增强文件系统的安全性。原创 2023-05-10 12:48:54 · 451 阅读 · 0 评论 -
浅谈 如何使用特殊权限,包括setuid、setgid和sticky位等
这个特殊权限通常用于需要以特定用户权限运行的程序,如 passwd 等,这些程序需要使用 root 权限来执行一些特殊的操作。使用这些特殊权限可以让文件和目录拥有更多的访问权限和保护措施,但也需要谨慎使用,以免引起安全问题。其中,数字 4 表示设置 setuid 权限,4755 表示设置文件的权限为 rwsr-xr-x,其中 s 表示 setuid 权限。其中,数字 2 表示设置 setgid 权限,2755 表示设置目录的权限为 rwxr-sr-x,其中 s 表示 setgid 权限。原创 2023-05-10 12:45:55 · 454 阅读 · 0 评论 -
浅谈 如何查看文件的权限,包括使用ls命令、stat命令和getfacl命令
常用的 ls 命令选项包括 -l 和 -a,其中 -l 选项以长格式列出文件信息,包括文件权限、所有者、用户组、大小、创建日期等,-a 选项包括隐藏文件。使用 getfacl 命令可以查看文件的访问控制列表(ACL),ACL 可以对文件的访问权限进行更细粒度的控制。在 Linux 中,可以使用多种命令来查看文件的权限,包括 ls 命令、stat 命令和 getfacl 命令。使用 stat 命令可以查看指定文件的详细信息,包括文件权限、所有者、用户组、大小、修改时间等。原创 2023-05-10 12:43:33 · 3273 阅读 · 0 评论 -
浅谈 如何保护文件系统的安全,包括使用文件权限、SELinux、AppArmor 等机制
SELinux:SELinux(Security-Enhanced Linux)是Linux系统中的一个安全模块,可以提供强制访问控制(MAC)功能,可以阻止未经授权的进程访问敏感文件和目录。AppArmor:AppArmor是一种应用级别的访问控制(ACL)工具,可以限制进程访问文件和目录的权限。通过设置文件的所有者、用户组和权限等级,可以控制文件的读、写和执行权限,从而保护文件不被非授权用户访问、修改或执行。在Linux系统中,可以使用chmod、chown和chgrp等命令来设置文件权限和所有者。原创 2023-05-10 12:39:51 · 326 阅读 · 0 评论 -
谈谈 LVM技术,包括物理卷、卷组、逻辑卷等概念
物理区域(Physical Extent,PE):物理区域是指LVM中物理卷和逻辑卷的最小存储单元,通常是4MB或8MB。在LVM中,物理卷可以被分配到一个或多个卷组中,卷组中的物理卷可以动态地添加、删除或合并,从而方便地进行存储容量的管理。物理卷(Physical Volume,PV):物理卷是指LVM中的物理存储设备,如硬盘或分区。逻辑卷(Logical Volume,LV):逻辑卷是指LVM中的逻辑存储设备,它是由卷组中的物理卷动态分配而来。原创 2023-05-10 12:37:39 · 962 阅读 · 0 评论 -
小小对比 RAID 0、RAID 1、RAID 5、RAID 6
总的来说,RAID 0 适用于需要高性能但不需要数据冗余的场景,RAID 1 适用于需要高可靠性和数据冗余的场景,RAID 5 和 RAID 6 适用于需要平衡存储效率、读取性能和数据冗余保护的场景。RAID 5 提供了更高的存储效率和读取性能,但写入性能较低,特别是在大量随机写入的情况下。RAID 6 在 RAID 5 的基础上增加了一份奇偶校验数据,以提供更高的冗余保护能力。RAID 0 可以通过增加硬盘数量来提高性能,但是它没有冗余保护,如果其中一个硬盘故障,所有数据都会丢失。原创 2023-05-10 12:33:09 · 1274 阅读 · 0 评论 -
RAID 6 的优点缺点和应用场景
需要在成本和性能之间平衡的应用:RAID 6提供了较高的数据安全性和存储容量,相对于其他RAID级别,其实现较为复杂,成本相对较高,适合于需要在成本和性能之间平衡的应用。需要高容量和数据安全性的应用:RAID 6提供了更高的数据安全性和存储容量,适合于需要高容量和数据安全性的应用,例如大型数据中心、高速网络存储、大型数据库存储等。提供了更高的数据安全性:RAID 6将数据和两个独立的校验信息分散存储在多个磁盘上,即使其中两个磁盘损坏,也可以从校验信息和其他磁盘上的数据进行恢复。原创 2023-05-10 12:31:15 · 2109 阅读 · 0 评论 -
浅谈 RAID 5 的优点缺点和应用场景
需要高容量和数据安全性的应用:RAID 5将数据和校验信息分散存储在多个磁盘上,提供了更高的数据安全性和存储容量,适合于需要高容量和数据安全性的应用,例如文件存储、多媒体存储等。需要在成本和性能之间平衡的应用:RAID 5提供了较高的数据安全性和存储容量,相对于其他RAID级别,其实现较为简单,成本相对较低,适合于需要在成本和性能之间平衡的应用。对于读取操作比较多的应用:RAID 5可以将数据存储在多个磁盘上,可以提高读取操作的性能,适合于一些读取操作比较多的应用,例如Web服务器、文件服务器等。原创 2023-05-09 14:01:11 · 4961 阅读 · 0 评论 -
RAID 1 的优点缺点和应用场景
对于读取操作比较多的应用:RAID 1可以将数据存储在多个磁盘上,可以提高读取操作的性能,适合于一些读取操作比较多的应用,例如Web服务器、文件服务器等。需要快速数据恢复的应用:当RAID 1中的一块磁盘损坏时,可以快速地从备份磁盘上恢复数据,适合于需要快速数据恢复的应用,例如在线数据库、实时交易系统等。提供了更高的数据安全性:RAID 1将数据完全镜像在多个磁盘上,即使其中一个磁盘损坏,数据也可以从其他磁盘上进行恢复,提供了更高的数据安全性。原创 2023-05-09 13:59:37 · 2397 阅读 · 0 评论 -
浅谈 RAID 0 的优点缺点和应用场景
对数据安全性要求不高的应用:由于RAID 0的数据安全性差,不适合存储重要数据,但对于一些不重要的数据,例如缓存、临时文件等,使用RAID 0可以提高性能和容量。需要大容量的存储:RAID 0将多个磁盘组合成一个逻辑卷,可以提供大容量的存储空间,适合于需要大容量存储的应用,例如媒体存储、大型应用程序等。需要高性能的应用:RAID 0的读写性能非常高,适合于需要大量数据读写的高性能应用,例如视频编辑、数据库等。提高磁盘阵列的读写性能:RAID 0将数据块分散到多个磁盘上,可以并行地读写数据,从而提高了性能。原创 2023-05-09 13:58:25 · 2463 阅读 · 0 评论 -
浅谈 如何设置和管理磁盘配额,以限制用户对磁盘空间的使用
在Linux系统中,可以使用磁盘配额来限制用户对磁盘空间的使用,防止磁盘被某个用户或进程占满而导致系统故障。需要注意的是,磁盘配额只能对本地文件系统进行限制,无法对NFS文件系统进行限制。在使用磁盘配额时,需要谨慎操作,以免对系统运行造成不良影响。你可以设置磁盘空间配额、文件数量配额、以及磁盘软配额和硬配额等。分区上的配额限制,用户在超出限制时将会收到警告信息。启用磁盘配额需要在文件系统的挂载选项中添加。选项表示分别对用户和组进行配额管理。选项表示创建新的配额数据库,分区上的配额使用情况。原创 2023-05-09 13:55:37 · 1251 阅读 · 0 评论