自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 收藏
  • 关注

原创 C++语言图形编程基本函数

文章目录说明工具及环境基本图形绘制生成图形窗口绘制点绘制线绘制矩形绘制圆文字输出贴图操作声明 IMAGE 类型变量载入图片输出图片说明    C++语言图形编程最基本的几个函数,简略代码,仅介绍函数及参数,并举例说明。非常简单,适合新人查阅。  工具及环境平台:Windows VS2013主要头文件:graphics.h   (百度EasyX安装依赖的库文件)  基本图形绘制...

2020-03-08 18:34:32 12351 3

原创 TCP三次握手与四次断开的状态转换说明

    TCP主要针对 C/S 模型中端到端面向连接的协议,发起连接请求和断开连接请求的可以是服务端,也可以是客户端(通常是客户端)。但此处不指定谁主动发起请求、谁被动接收请求,统一用A,B两主机来表示它们之间建立连接与断开连接的过程。三次握手1、A发起连接请求(SYN=1,seq=x),从 CLOSED 进入 SYN_SENT 状态;2、B收到请求,回复响应报文(SYN=1,seq=y...

2019-11-17 17:25:09 226

原创 Linux环境下使用C语言实现TCP协议下精简的 客户端/服务端 程序

基本图示    本文是在 Linux 环境下使用 C 语言实现 TCP 协议的 C/S 精简模型的相关笔记,以下是基本模型示意图。基本环境: CentOS 7.4,GCC 4.8.5 (使用C99标准),VIM文本编辑器<图片预留>  服务端代码注:为了首次接触网络编程能够更好的理解各个步骤在做什么,所以以下代码在某些地方违背了C语言的编写规则,在不同的环境下直接编译可能...

2019-11-16 20:28:08 573

原创 RAID基本概念及配置(软件实现)

前言    磁盘是计算机存储设备中读写能力最慢的一环,能利用有限的成本提高磁盘读写能力这一技术尤为重要。特别是在当下大数据环境下,磁盘的读写能力以及可靠性越来越受到重视。    RAID(Redundant Arrays of Independent Disks)是解决这一问题的重要技术之一,它是由美国加利福尼亚大学伯克利分校于1988年在一篇名为 “A Case for Redundant ...

2019-11-03 17:04:35 725

原创 零散的C++笔记

访问修饰符public:类外可见,结构体内成员默认为publicprotected:类内可见,友元及子类可见private:类内可见,友元可见,类内成员默认为private 子类    子类继承父类属性(父类中的 public、protected 修饰的成员),可以使用父类中的某些成员。class CFather //父类{public: ...protected: .....

2019-10-11 17:18:46 158

原创 C语言实现日历打印小程序

说明    这是一个功能简单的日历打印程序(显然没什么卵用),它可以打印1900年至2500年间的日期信息。本程序没有设置退出条件(你想要退出请使用Ctrl C),也没有加入更为复杂的输入判定(如果你输入非法类型数据,可能发生死循环等情况),所以请善待它。设计思路:    程序以1900年的1月1日为基准(这天是星期一),当你输入某一日期(年份加月份,如:1949 10)后,程序进行简单的日...

2019-10-06 15:16:58 1930

原创 一个实现gcc编译器编译源代码并自动执行程序的Shell脚本工具

说明    该脚本实现的功能是:利用gcc编译器自动编译C/C++源代码生成可执行文件,并自动执行该程序。值得注意的是,编译后生成的可执行文件名以源代码文件名命令(不包含后缀),如果有多个源代码文件,生成的文件以第一个源代码文件名为准。    源代码文件必须是.c(c源码)或.cpp(c++源码)结尾,如果包含的多个源文件既包含.c结尾,又包含.cpp结尾,则以第一个源文件的格式为标准选择c或...

2019-10-06 11:20:21 2216

原创 MySQL主从复制

简介    在现实生产环境中现有的服务器往往不能满足需求的服务量,于是出现向上扩展和向外扩展两种手段提升服务能力。向上扩展则是使用性能更好的服务器替换现有的服务器,但是新服务器带来的效益与成本不成正比,更换后的服务器又会很快到达瓶颈;向外扩展则是使用更多的服务器,将任务分摊至各个服务器共同完成,实现负载均衡,效果比较理想。    MySQL的主从复制正是利用向外扩展的负载均衡效果。由于数据库的...

2019-08-17 19:30:14 111

原创 MySQL数据库备份与恢复

简介    人为误操作、软硬件故障等这些不可预计的事故都可能会导致数据丢失,此时数据库备份显得尤为重要。而在面对特大量数据时则不会选择将完整数据备份,综合考虑可接受的丢失数据量、数据备份资源消耗,数据恢复所需时长等因素,选择合适的备份方案及方法。备份类型按备份数据量分为:完全备份: 备份整个数据集部分备份: 仅备份部份数据以某时间点为基础,每次备份的数据量分为:完全备份: 每一...

2019-08-15 22:41:14 148

原创 MySQL事务与日志

编译安装MariaDB1、编译源码:# yum install cmake# useradd -r mysql# tar# cd# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/data \ -DSYSCONFDIR=/etc \ -DWITH_INNOBASE_STORAGE_E...

2019-08-11 18:48:53 343

原创 MySQL基础及补充命令

基础命令MySQL相关:1、客户端命令行命令:mysql -p [OPTIONS]选项: -u USER:登录用户,默认为root -p PASSWORD:登录密码,不输入密码则在交互模式下提示输入密码,登录必须选项 -h HOST:主机,默认为localhost -P PORT:指明与mysql服务端通信的客户端端口 -S /SOCKET_FILE...

2019-08-09 18:49:29 302

原创 常见网络工具的使用

tcpump    tcpdump是一个著名的网络嗅探工具,它可以捕捉到发往本机、本地网络广播的数据报文。并支持指定表达式对报文进行分析过滤,保留所期望的数据包信息。用法tcpdump OPTION EXPRESSION选项: -i INTERFACE 指定网络接口 -w /FILE 将捕捉的数据报文信息保存于文件 -r /FILE 从指定文件读取抓取的数据包,常...

2019-08-06 13:24:29 853

原创 Tomcat基础配置

简介    Tomcat是一个轻量级的web应用服务器,用于处理动态页面(JAVA)程序。Tomcat内建支持HTTP服务,可以独立作为一个web服务器接收用户请求并处理、响应(处理静HTML静态内容性能不如Apache)。同样Tomcat也可以仅作为应用程序服务器,通过反向代理处理JSP程序并返回结果。Tomcat核心组件:Catalina: Servlet Container,提供运行S...

2019-08-05 08:36:55 146

原创 DHCP基础配置及基于网络自动化安装系统

简介    DHCP(Dynamic Host Configuration Protocol)用于实现对某一或多个网段内主机进行IP分配、DNS服务器指向等作用,监听在UDP的67号端口。DHCP由于引入租约时间的机制,所以可以将少数的可用IP最大化利用。    客户端想要获取动态获取IP,就必须联系上DHCP服务器请求分配。又由于客户端此时无IP,并不知道谁是DHCP服务器,于是均使用广播的...

2019-07-26 20:45:47 503

原创 HTTP协议及编译安装LAMP

URL基本语法<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag> params:参数,根据用户传递给URL的参数返回页面特定内容 query:结合页面程序,向数据库发起对应查询操作 fra...

2019-07-25 15:10:39 291

原创 Nginx反向代理及缓存等应用

反向代理    客户端将HTTP请求发往反向代理服务器,由反向代理服务器重新将数据包封装发往对应的与其关联的后端服务器。反向代理可以将用户不同请求送往不同服务器,此时的后端服务器可以部署在局域网内,因此也可以在一定程度上减小后端服务器的安全威胁。反向代理配置:反向代理服务器IP:172.27.100.1后端web服务器IP:172.27.100.2注:实际上反向代理服务器对外应该为公网I...

2019-07-23 19:47:40 193

原创 Nginx基础及基本配置

Nginx介绍及相关概念    Nginx是HTTP、SMTP、POP3协议的实现工具之一,可作为反向代理、缓存、负载均衡服务器。其中主要用于实现HTTP协议较多,相比Apache其有显著的优势,但是在某些功能上不足于Apache,因此还无法完全取代Apache。Nginx优势:1、模块化设计,扩展性较强2、可靠性较高,由master主进程生成多个worker子进程对用户请求进行响应3...

2019-07-19 22:11:26 231

原创 iptables与NAT

简介    在日常使用环境中,不会为每台 主机/服务器 单独分配IP地址,一是没有足够多的IP地址(IPv4)供我们使用,二是出于安全角度考虑(不会直接暴露在互联网上),它们通常被部署在局域网内。但是局域网内与外部的通信成为了一大问题,NAT(Network Address Translation)技术是解决局域网与外部通信的一种好方法。其实在早期,它的出现是为了隐藏内部主机,即出于安全角度而设...

2019-07-08 12:17:40 723

原创 防火墙基础及iptables命令

简介    包过滤型防火墙是在数据包流入流出 主机/网络 时通过某些事先定义好的规则来匹配数据包的各种信息(如IP,PORT等信息),进而对数据包的流向做出相应的处理动作,根据其工作的位置又分为主机防火墙和网络防火墙。以    在 Linux 2.4/2.6 上的主机防火墙由 iptables、netfilter 两部分组成。netfilter这个框架工作于内核空间,随内核启动而启动,它提供了...

2019-07-03 00:13:45 185

原创 系统日志基础及rsyslog配置

简介    Linux在日常运作中大量服务处理的事务信息需要记录下来,以便于对服务的监控及排错。CentOS 6 专门提供了一个日志处理服务——rsyslogd,它可以将程序产生的日志信息进行过滤、处理并存储到指定 文件/服务器 中,通过编辑其配置文件 /etc/rsyslog.conf 进行一些全局或者日志规则的定义。rsyslog基本配置/etc/rsyslog.conf 配置内容主要...

2019-07-01 00:16:53 938

原创 samba基本配置

    samba是一个运行在 Linux/Unix 平台上的开源网络文件共享工具,基于CIFS(Common Internet File System)协议可以在Linux、Unix、Windows平台上进行文件共享。samba提供三种服务nmbd(NetBIOS协议),smbd(CIFS协议)和winbindd。samba提供的文件系统可以通过命令行(类FTP)或挂载至本地两种形式访问共享文件...

2019-06-28 23:33:26 745

原创 Linux逻辑卷管理

逻辑卷技术    早期我们在分配磁盘分区容量时,很可能无法预测未来需要存储的数据量大小,或者是条件有限,对一些分区分配的存储空间有限,随后想要扩展尤为困难,于是逻辑卷技术很好解决了这个难题,这对生产环境不断变化的数据量的存储有至关重要的作用。    逻辑卷技术是通过软件技术将多个块设备组成一个逻辑设备——卷组(Volume Group,VG),再在卷组上创建一个或多个“分区”——逻辑卷(Log...

2019-06-25 23:16:29 141

原创 SELinux基础

简介    在Linux的安全机制中,通过文件权限来限定某些用户是否对该资源具有某种能力,这种访问控制称为自主访问控制(Discretionary Access Control,DAC)。一个程序能否被启动成为进程取决于发起者是否对该程序有执行权限。当该程序成为进程后,该进程的属主则不再是程序文件的属主,而是这个进程发起者。而该程序对Linux系统其他资源的访问能力,则取决于该进程的属主(进程发...

2019-06-24 20:32:27 194

原创 Linux任务计划

单次任务计划    指在未来某个时间点执行一次预定的任务,在Linux上用到的工具为at。执行任务后将任务结果以邮件形式发送到执行该任务的用户本地邮箱。邮件相关操作:# mailx -s "Hello" root@localhost #回车后进入交互式界面,输入邮件内容,Ctrl+d发送 -s "STRING":邮件标题,可省略 注:可使用标准输入流指定文件内容发送, 也可以使用管道符...

2019-06-24 00:01:15 120

原创 Systemd介绍及服务管理

Systemd介绍    在Linux启动流程的最后阶段,系统加载完根文件系统(rootfs)后随后会启动第一个用于管理用户空间资源的服务程序。在CentOS 5上称之为SysV init,在CentOS 6上则为Upstart init。而对于CentOS 7来说,全新的Systemd不同于早期的init程序,它有自己的管理机制,并且更高效、易于管理。    Systemd的核心是unit,...

2019-06-23 01:05:39 589

原创 Linux进程管理工具

进程查看工具(静态)静态进程查看工具是将某一时刻的进程状态打印在屏幕上pstree: 显示进程树# pstree #以层级关系显示进程间关系ps: 进程状态查看工具aux组合:用法: ps aux选项说明: a:与终端相关的进程,即从终端启动的进程 u:以用户为中心显示进程状态,显示进程属主、cpu、内存占用等更多详细信息 x:与终端无关的进程,开机自启的系统服务、内核相关的...

2019-06-21 22:14:28 191

原创 sudo的使用

简介在生产环境中,通常不会以root用户身份直接登录服务器进行配置管理。但是对于某些内容配置时,非管理员的身份限制了我们的某些操作,于是可以通过一个策略,让某个或某些用户能够以其他用户的身份去运行某些程序、管理某些文件。sudo的使用及配置这个策略被定义在:/etc/sudoers 文件中su和sudo命令:su -l USER #切换到某用户su -l USER -c 'C...

2019-06-14 19:58:07 1691

原创 shell脚本--函数及其他补充

一、函数#function f_name { #函数体}#f_name() { #函数体} #注:如果函数中要使用的局部变量与脚本中的本地变量同名时, #必须在函数体中使用 local varName 事先声明表示这是一个局部变量二、配置文件...

2019-06-11 22:09:23 148

原创 MariaDB基本命令

数据库表单数据类型及修饰符整型:INT:基本整型数据,4字节长度(包含正负数,以下均如此)TINYINT:范围更小的整形数据,1字节BIGINT:8字节长度整形数据浮点型:FLOAT:单精度浮点型,4字节DOUBLE:双精度浮点型,8字节字符型:CHAR(#):长度为#的字符串,不区分大小写BINARY(#):长度为#的字符产。区分大小写VARCHAR(#):最大长度为#的变...

2019-06-11 21:21:12 1248

原创 LAMP环境下搭建wordpress个人站点

基本环境CentOS 7 (Kernel:3.10.0-957)httpd:2.4.6php:5.4.16php-mysql:5.4.16mariadb:5.5.60mariadb-server:5.5.60部署介绍及基本流程宿主机充当客户机,linux虚拟机作为服务器,其防火墙均已关闭。基本流程:1、安装所需环境2、配置好基本的http环境3、获取WordPress,...

2019-06-07 23:22:18 404

原创 httpd-2.2基础配置

使用Basic认证访问网页# mkdir /var/www/html/admin # 需要认证访问的目录基于用户认证<Directory "/var/www/html/admin/index.html"> Options None AllowOverride None AuthType Basic # 认证模式 AuthName "admin page" # 用户...

2019-05-31 19:59:06 199

原创 搭建私有CA及证书的申请与授权

基本概念当我们访问一个网站时,如何确保所访问的站点是真实有效的而不是别人任意伪装的?即如何信任对方正式我们所需要访问的站点。CA就是一个对站点进行认证的签证机构。当我们对某个网站发起请求时,该站点服务器就会将其CA证书发送给我们的客户机,客户机则会核实该证书是否是由客户机信任的CA机构所签发,签名是否真实有效,证书是否过期等。CA的签署其本质是将客户的提供的公钥进行授权,保存在自己存储中。 ...

2019-05-11 23:49:25 840

原创 openSSH基础

一、openSSHopenSSH是ssh协议的一种开源实现方式,目前使用的最多的版本是V2版本。ssh工作模式不同于telent,telent是在远程管理时信息是明文传送的。ssh可以基于口令认证和密钥认证。口令认证: 用户使用用户名与密码登录远端主机,其信息任然是加密的。密钥认证: 最初,客户机生成一对密钥,并将公钥存放于对应用户家目录~/.ssh/目录下。当以后再次登录时,远端主机通...

2019-05-11 18:02:08 195

原创 脚本--二进制程序克隆脚本

应用场景: 当我们要将一个二进制程序复制到另一系统的根或者其他位置时,我们要做的是将其二进制程序和其依赖的库文件一并复制到目标对应目录下,但是如果某一二进制程序所依赖的库文件较多,那么手动复制就不是一个明智的选择。这个脚本可以帮助你快速的复制一个二进制程序至其他目录。用法:aibto Binary_Path Root_Path例子:aibto /bin/bash /mnt/sysroot说...

2019-05-08 03:20:17 385

原创 bind基础应用

一、认识BINDbind:Bekerley Internat Name Domainbind是一个dns服务器配置管理工具,其二进制程序叫做named。所需程序包:bind,bind-libs,bind-utils子域的授权,是在其上级域解析库中添加相应的资源记录,如 . 授权.com域:.com IN NS ns1.com.ns1.com IN A 1.1.1.1因此,二级域的授...

2019-05-07 19:03:17 407

原创 DNS基础

一、openSSL介绍及常用命令

2019-05-06 15:43:11 267

原创 CentOS安装过程及自动安装

一、anaconda程序介绍

2019-05-05 23:55:56 704

原创 grub legacy修复(CentOS6)

测试环境:CentOS 6.6 (kernel:2.6.32-504.el6.x86_64)一、系统正常运行情况下损坏情况1: stage1 (即MBR) 或stage2损坏使用grub-install命令:grub-install --root-directory=/ /dev/sda #安装grub,我的boot分区在磁盘sda上,请根据自己情况指定 情况2: grub.con...

2019-05-04 20:47:04 509

原创 基于CentOS配置一个仅有bash的系统

测试环境:CentOS 6.6 (kernel:2.6.32)一、准备工作为当前虚拟机创建一块虚拟磁盘,我这里是/dev/sdb 8GB创建基本的分区结构:/dev/sdb1:boot分区,大小200MB/dev/sdb2:root分区,使用全部剩余大小  二、格式化并挂载分区分区完成后# partx -a /dev/sdb #内核重读分区# mkfs -t ext4 /d...

2019-05-03 18:26:50 236

原创 grep、sed、gawk的常见用法

一、grepgrep [选项] ‘模式’ 文件选项:-o:仅显示匹配到的行-v:仅显示未匹配到的行-q:静默模式,不输出信息-i:忽略大小写匹配-A #:多匹配后#行-B #:多匹配前#行-C #:多匹配前后#行-E:使用扩展正则表达式--color=auto:匹配到的内容自动着色模式:单个字符匹配: .:单个任意字符 []:范围内的字符,如[a-z],[0-9]等...

2019-05-03 15:06:22 337

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除