0x00 背景小米平板5开始支持了键盘与鼠标,终于离生产力工具越来越近了。因此,从入手小米平板5开始,就想着怎么安装一个linux系统,可以在里面安装vscode,以便使用pad开发代码。 图片图片0x02 在Termux中安装linux系统Termux是一个Android上的终端模拟器,可以免root模拟linux环境,同时提供了大量linux上的软件供安装使用,但它本质上还是一个Android 使用以下命令安装预期的linux系统:$ proot-distro install ubuntu由于我这里需要桌面系统,在尝试了多个系统之后,最终选择了Fedora。 安装之后使用以下命令进入linux终端环境:$ proot-distro login fedoraLast login: Wed Sep 1 16:39:52 UTC 2021 on pts/5[root XSDL窗口中很快就看到linux桌面了。图片虽说系统界面谈不上特别美观,但至少够用了,基本的使用应该没啥问题(要啥自行车!)。
Linux 系统与数据库安全 目录 1. 帐号安全 1.1. Shell 安全 1.2. .history 文件 2. 临时文件安全 3. 其他安全问题 4. 防火墙配置 5. 数据库程序安全 5.2. 数据库客户端安全 5.3. mysqldump 安全 5.4. crontab 定时备份脚本于安全 5.5. 数据库归档文件 5.6. Shell 安全 需求:限制用户权限,仅提供一些linux常用命令,用户监控linux系统于网络运行情况,不允许用户ssh登录后随意运行linux命令 用户不能进入到Shell环境 例如普通用户一旦登录 web服务器可以看到web程序中的数据库配置 用户可以了解OS工作状态如内存,cpu,网络等等 例如:ping, tracepath, top, free, netstat 可以查看系统部分日志 例如: 稍加修改即可用于oracle等服务器 DBA 没有系统SSH帐号,只有数据库帐号 系统管理员只能有SSH系统帐号,没有数据库帐号 DBA 可备份数据库,还原数据库指定的备份文件,但是接触不到备份文件 DBA
前言: 上文我们讲到了文件系统【Linux系统】详解Ext2,文件系统-CSDN博客 本文我们来讲讲动静态库的制作 库 【Linux】编译器gcc/g++及其库的详细介绍 -l myc hyc@hyc-alicloud:~/linux/动静态库的制作/new$ ./test 0 1 2 3 4 5 6 7 8 9 链接完成,形成可执行程序! /test 0 1 2 3 4 5 6 7 8 9 当头文件并不在当前目录或系统中,就想要 -I选项 -I:表示去哪里找头文件。 只需要将头文件、库拷贝至系统文件下的默认路径,以后调用就只需要指明库名字即可。 解决方法: 1.将我们写的库直接拷贝到操作系统中 2.建立软连接:在操作系统中新建一个同名库,并将其与我们自己的库建立软连接 3.创建/修改环境变量:LD_LIBRARY_PATH
与静态库不同,它们支持运行时加载,能有效减少内存占用。例如Linux系统的标准C库就是/lib/x86_64-linux-gnu/libc.so.6。 具体工作流程如下: 程序启动时,操作系统首先加载程序的可执行文件到内存 动态链接器(ld-linux.so)读取程序的动态段(.dynamic section),获取需要加载的共享库列表 操作系统为每个共享库分配地址空间 ,节省内存 库的更新不需要重新编译主程序 通过延迟绑定技术提高程序启动速度 地址随机化提高了系统安全性 现代操作系统如Linux、Windows和macOS都广泛采用这种动态链接机制,它是支撑现代软件生态的基础技术之一 将main的返回值作为进程退出状态返回给操作系统 动态链接器详解 主要功能 动态链接器(如Linux上的ld-linux.so)是程序运行时加载的核心组件,负责: 解析程序中的动态库依赖(DT_NEEDED : 操作系统加载器负责将动态库映射到进程地址空间 加载时根据实际加载地址调整所有相对地址 在Windows中称为"重定位",在Linux中称为"位置无关代码"(PIC) 平坦内存模型: 现代操作系统都采用平坦内存模型
Linux 系统与数据库安全 目录 1. 帐号安全 1.1. Shell 安全 1.2. .history 文件 2. 临时文件安全 3. 其他安全问题 4. 防火墙配置 5. 数据库程序安全 5.2. 数据库客户端安全 5.3. mysqldump 安全 5.4. crontab 定时备份脚本于安全 5.5. 数据库归档文件 5.6. Shell 安全 需求:限制用户权限,仅提供一些linux常用命令,用户监控linux系统于网络运行情况,不允许用户ssh登录后随意运行linux命令 用户不能进入到Shell环境 例如普通用户一旦登录 web服务器可以看到web程序中的数据库配置 用户可以了解OS工作状态如内存,cpu,网络等等 例如:ping, tracepath, top, free, netstat 可以查看系统部分日志 例如: 稍加修改即可用于oracle等服务器 DBA 没有系统SSH帐号,只有数据库帐号 系统管理员只能有SSH系统帐号,没有数据库帐号 DBA 可备份数据库,还原数据库指定的备份文件,但是接触不到备份文件 DBA
Linux系统下如何新建一个MySQL数据库?本篇文章将为大家演示一下Linux系统新建MySQL数据库的具体方法, 下面一起来看一下Linux系统新建MySQL数据库具体步骤。 //注意别漏了“;”分号哦 这下就新建了一个数据库 mynewdatabase 我们来查看一下: show databases; 在列表中可以找到自己刚刚创建的名为mynewdatabase的数据库 如果要删除数据库可以用命令: drop database mynewdatabase; //删除名为mynewdatabase的数据库 总结一下: //创建数据库 create database [database name]; //查看数据库 show databases; //删除数据库 drop database [database name]; 至此关于Linux系统创建MySQL 数据库的教程分享结束。
防火墙配置 5. 数据库安全 5.3.1. 数据备份 5.3.2. 数据库程序安全 5.2. 数据库客户端安全 5.3. mysqldump 安全 5.4. crontab 定时备份脚本于安全 5.5. 数据库归档文件 5.6. Shell 安全 需求:限制用户权限,仅提供一些linux常用命令,用户监控linux系统于网络运行情况,不允许用户ssh登录后随意运行linux命令 用户不能进入到Shell环境 例如普通用户一旦登录 web服务器可以看到web程序中的数据库配置 用户可以了解OS工作状态如内存,cpu,网络等等 例如:ping, tracepath, top, free, netstat 可以查看系统部分日志 例如: 稍加修改即可用于oracle等服务器 DBA 没有系统SSH帐号,只有数据库帐号 系统管理员只能有SSH系统帐号,没有数据库帐号 DBA 可备份数据库,还原数据库指定的备份文件,但是接触不到备份文件 DBA
Linux命令行提供了一种比图形界面使用更简单更轻松、跨版本的方法来完成常见的任务。今天我们与您分享12个让您震撼的Linux终端命令。 1、有用的命令行快捷键 常见的Linux键盘快捷键 以下快捷键很有用,可以节省你的时间: CTRL+U: 从光标处删除文本直到行首。 CTRL+K: 从光标处删除文本直到行尾。 4、在特定时间运行Linux命令 通过Linux终端使用at命令调度任务,假设您要在特定的时间点运行同一命令。 使用at命令可以做到这一点。 5、使用htop查看和管理进程 你用哪个命令找出电脑上正在运行的进程的呢?通常是使用‘ps’命令并在其后加不同的参数来得到你所想要的不同输出。不过我建议你安装htop吧。
一个项目的基础便是数据库,但是可能因为某些原因会导致数据丢失,或数据库结构变化,严重一点的或造成数据库删除。 为了以防万一,这时候就需要我们定时进行数据库备份,但是如果人来操作的话会是一个比较麻烦的工程,这时我们可以使用mysqldump写个脚本,由Linux的crontab来定时执行。 假如在我的数据库中有一个emp的数据库。 1.在linux系统中自定义一个文件夹,在我的服务器上我放在了/zhb/backup 2.在/zhb/backup下面建一个bkemp.sh的脚本文件 3.使用vi命令 vi . backup/emp$_(date +%Y%m%d_%H%M%S).sql.gz 上面的一句是生成一个sql文件,下面一句是生一个sql的压缩包 4.给脚本文件授权:chmod +777 bkemp.sh 5.
@TOC一、PostgreSQL介绍1.PostgreSQL简介PostgreSQL (也叫 Postgres) 是一个自由的对象 - 关系数据库服务器 (数据库管理系统),它在灵活的 BSD - 风格许可证下发行 它提供了相对其他开放源代码数据库系统 (比如 MySQL 和 Firebird),和对专有系统比如 Oracle、Sybase、IBM 的 DB2 和 Microsoft SQL Server 的一种选择 2.PostgreSQL特点它是ORDBMS(面向对象的关系数据库管理系统)。 外键引用完整性用户自定义的类型表的继承性视图、规则、子查询多版本并发控制(MVCC)复杂的锁定机制异步复制流式复制(从9.0开始)嵌套事务(保存点)二、本次实践介绍1.本次实践介绍从小白视角,以最快速度在LInux 系统上部署一个简单的PostgreSQL数据库。
一、首先查询系统是否安装了MySQL rpm -qa | grep -i mysql 输出结果表示,我安装的MySQL Server,Client都是5.6.44的,因为我系统支持的版本是要5.7+ ev删除对应组件即可): rpm -ev mysql-community-common-5.6.44-2.el7.x86_64 rpm -ev mysql-community-release-el7-5. by (installed) postfix-2:2.10.1-7.el7.x86_64 解决方法就是在 rpm -ev 加上--nodeps: --nodeps就是安装时不检查依赖关系 五、删除系统中
COMMIT :wq保存退出 3、下载安装Mongodb cd进入/usr/local/src cd /usr/local/src wget下载 wget https://fastdl.mongodb.org/linux /mongodb-linux-x86_64-2.6.0.tgz tar解压 tar zxvf mongodb-linux-x86_64-2.6.0.tgz 将解压文件移动到安装目录 mv mongodb-linux-x86 logpath=/usr/local/mongodb/logs/mongodb.log --logappend& 检查 netstat -lanp | grep "27017" 进入mongodb数据库控制台 使配置文件立即生效 source /etc/profile 然后就可以全局使用mongodb命令了 进入mongodb控制台 mongo #进入MongoDB控制台 show dbs #查看默认数据库 use admin #切换到admin数据库 exit #退出MongoDB控制台
一、MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗下产品。 MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之一 MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 2022 4、安装MySQL服务器 输入如下命令进行安装MySQL服务器: [root@bigdata uploads]# yum install -y mysql-community-server 5、 四、基本使用方法 1、在Linux中启动MySQL数据库 [root@bigdata zhc]# systemctl start mysqld.service [root@bigdata zhc]# mysql
教你Linux系统命令迁移MySQL数据库为了迁移数据库,有如下三个步骤: 第一步 - 执行MySQL转储 在将数据库文件传输到新的VPS之前,我们首先需要使用mysqldump命令在原始虚拟服务器上备份它 mysqldump -u root -p --opt [database name] > [database name].sql 执行转储后,即可准备传输数据库。 第二步 - 复制数据库 SCP帮助您复制数据库。 如果使用上一个命令,则将数据库导出到主文件夹。 [username]@[servername]:path/to/database/ 样本传输可能如下所示: scp newdatabase.sql user@example.com:~/ 连接后,数据库将传输到新的虚拟专用服务器 第三步:导入数据库 一旦数据已传输到新服务器,您可以将数据库导入MySQL: mysql -u root -p newdatabase With that, your transfer via SCP
数据库系统开发流程 所谓数据库系统(database system),就是指让用户和数据库信息之间进行有效交互的计算机系统。其典型的框架如下图所示: ? 另外前端程序的实际实现涉及到和数据库之间交互,因此这一步的最终完成在数据库建模之后。 5. 数据库部署 顾名思义,这一步就是部署数据库系统的软硬件环境。 数据库系统管理 数据库系统发行后,控制权便从数据库设计、实现、部署的团队移交给了数据库管理员(database administrator, DBA),并由他们来对系统进行管理。 但对于数据库的开发员和使用者来说,也多多少少要知道一点,比如写Hive语句的时候需要灵活设置分区,避免数据倾斜等。这些具体环境的优化方案,本文篇幅有限就不一一讲解了。 5. 比如某关系中昨天存货量字段+当天进货量字段-当天销售量字段不等于当天存活量,否则就可能是数据质量有问题; 5. 及时性 及时性要求数据库系统中的数据"保鲜"。比如当天的购买记录当天就要入库; 6.
目录 排查用户相关的信息 排查进程端口相关的信息 查找恶意程序并杀掉 斩草除根 判断入侵方式,修复漏洞 当我们被告知一台Linux服务器被黑客入侵,黑客利用该服务器进行挖矿 w #显示已经登陆系统的用户列表,并显示用户正在执行的指令 users #显示当前登录系统的所有用户的用户列表 last #查看最近登录成功的用户及信息 当使用下面命令查找恶意进程的可执行程序时,发现恶意进程的可执行程序被删了,可知该木马是个无文件内存木马 ls -l /proc/18176/exe 查看该进程打开的文件,有时候,恶意程序会打开一些隐藏的字典库, #查看爆破用户名字典 总的来说,黑客入侵主机有下列几种情况: 通过 redis 未授权漏洞入侵(好多挖矿程序是通过这个) ssh 弱口令暴力破解 Web 程序漏洞入侵 参考文章: 记一次Linux 木马清除过程 相关文章:Redis未授权访问漏洞 Linux挖矿病毒的清除与分析 Linux下性能监控、守护进程与计划任务管理 来源:
relatime 0 0/proc/bus/usb /proc/bus/usb usbfs rw,relatime 0 0devpts /dev/pts devpts rw,relatime,gid=5, relatime 0 0/dev/sdb1 /media/android ext4 rw,relatime,barrier=1,data=ordered 0 0[root@T-bagwell ~]# 到这里文件系统的注册和磁盘的挂载完成
一些可选功能包括:文件排序不同的视图模式本地化痕迹导航树视图自定义页眉和页脚文件过滤器和搜索文件夹大小自动刷新打包下载二维码缩略图文件预览二、本地环境介绍2.1 本地环境规划本次实践为个人测试环境,操作系统版本为 hostname本地P地址 操作系统版本 内核版本 node版本jeven192.168.3.166 centos 7.63.10.0-957.el7.x86_64v16.17.02.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本检查本地操作系统版本[root@jeven ~]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core)3.2 检查系统内核版本检查系统内核版本[root@jeven ~]# uname -r3.10.0-957.el7.x86_64四、安装httpd软件4.1 检查yum仓库如果没有镜像源, epel/x86_64 Extra Packages for Enterprise Linux
comm="mysql" exe="/usr/bin/mysq l" key="command" type=EXECVE msg=audit(1603800704.305:5304075): argc=5 忽略指定的工具路径, 只能通过 never 实现, exe 为执行工具的路径, 需要设置其绝对值, 这点没有 snoopy 的 exclude_comm 方便. eBPF 记录方式 eBPF 在较新版本的 Linux 内核中实现,提供了动态追踪的机制,可以阅读之前的文章 Linux 系统动态追踪技术介绍了解更多动态追踪相关的知识。 值得注意的是,eBPF 仅适用于 Linux 4.1+ 的版本,以 eBPF 开发的进度的来看,eBPF 在 kernel-4.10 之后的支持才相对全面,线上在使用的时候尽量选择较高内核版本的发行版( 来源:http://blog.arstercz.com/how-to-audit-linux-system-operation/
在Linux系统中,我们可以通过指令readelf来查看ELF格式文件的这几个部分的内容。 动态库 动态链接,简单来说就是将可执行程序和库产生关联,然后在程序运行时再加载动态库; 这也是我们在动态链接我们自己的库,生成可执行,在运行时还需要让系统找到我们的库的原因。 动态链接器:负责在程序运行时加载动态库 可以看到这里程序都依赖ld-linux-x86-64.so.2这一个库。 也就是动态链接器库 在程序启动时,动态链接器就会解析程序中的动态库依赖,并将这些库加载到内存中; Linux系统通过环境变量(LD_LIBRARY_PATH)/配置文件(etc/ld.so.conf)来指定动态库的搜索路径 缓存文件: 为了提高动态库的加载效率,Linux系统会维护一个/etc/ld.so.cache的缓冲文件; 该文件保存了系统中所有已知动态库的路径和相关信息,动态链接器在加载动态库时会优先搜索这个缓冲文件