- 博客(71)
- 资源 (3)
- 收藏
- 关注
原创 Linux之ext文件系统(附面试题)
一、目录结构 boot 系统启动相关文件 home 普通用户家目录 root root用户家目录 dev 设备文件,常用的有 /dev/nul --垃圾桶 /dev/zero 生产500M的大文件:dd if=/dev/zero of=BIGFILE bs=1M count=50 bin 普通...
2020-05-05 10:28:58
1738
原创 虚拟机没有显示ip地址
之所以写这篇博客是因为有个同学刚搭建完虚拟机但没有IP地址。为了帮助那个同学和回顾知识,所以有了这篇博客。而且网上大部分博客都没提到networkmanager的问题,所以这边就记录一下一、检查网络连接模式是否为NAT模式在VMware中将目标虚拟机关机,点击网络适配器-->切换为NAT模式二、检查网卡是否正常在电脑中搜索服务-->检查图中的VMware相关...
2019-07-11 15:02:52
21899
9
原创 Jenkins插件安装及配置
1、插件安装系统管理-->管理插件-->可选插件 有个查找框,输入查找然后点击安装即可安装Maven Integration 安装SonarQube Scanner for Jenkins Publish Over SSH --发布到远程服务器2、系统配置系统管理-->全局工具配置 (1)配置jdk,jdk的信息可以在虚拟机中查找(前提...
2019-06-01 23:46:52
2689
原创 持续集成工具Jenkins安装及Jenkins离线状态解决
使用的虚拟机是centos61、前置条件虚拟机已安装jdk和Tomcat,这里只介绍安装Tomcat,安装jdk网上版本很多,大家可以自行查阅2、安装Tomcat(1)下载地址: https://tomcat.apache.org/download-90.cgi(2)解压Tomcat压缩包tar -zxvf apache-tomcat-9.0.8.tar.gz -C /u...
2019-06-01 22:50:01
6042
1
原创 centos6安装代码质量管理平台sonarqube
1、前置依赖mysql 5.6 or 5.7 jdk 1.82、下载官网地址:https://www.sonarqube.org/3、安装解压yum install unzip unzip sonarqube-6.7.4.zip mv sonarqube-6.7.4 /usr/local/4、MySQL新增数据库CREATE DATABASE ...
2019-06-01 17:48:50
177
原创 CentOS6安装nexus并配置开机自启
1、下载https://www.sonatype.com/download-oss-sonatype选择合适版本2、解压tar -zxvf nexus-3.12.1-01-unix.tar.gz -C /usr/local/注意-C一定要加,不然会报错3、(可选)修改端口号nexus默认端口是8081,如果和自己的端口使用有冲突的话,可以修改vim /usr/loc...
2019-05-26 23:16:05
733
原创 gitlab配置邮件服务(QQ邮箱)图解教程
一、配置邮箱服务的用途当有合并请求时,账号注册,修改密码时,可通过邮件通知 ,邮件验证 ,邮件修改实现二、配置步骤1、开启QQ邮箱的SMTP服务设置-->账户-->smtp-->密保验证-->验证成功后返回授权码。保存好授权码2、修改gitlab配置(1)进入配置文件vim /etc/gitlab/gitlab.rb(2)修改...
2019-05-25 09:29:36
12348
6
原创 centos7安装gitlab并更改端口IP地址
1、在防火墙里开放http跟ssh端口yum install curl openssh-server openssh-clients postfix cronie -y service postfix start chkconfig postfix on systemctl enable postfixfirewall-cmd --add-service=http --pe...
2019-05-25 00:22:07
2088
原创 Git常用命令
归档 命令 用途 Git入门命令 git --help 调用git帮助文档 git +命令 --help 查看某个命令的帮助文档 git --version ...
2019-05-24 16:16:50
217
原创 windows与Linux环境安装Git
一、Windows下安装Git1、进入Git官网https://git-scm.com/选择合适版本2、下载完成后选择默认安装即可,安装完成后,鼠标右键,选择Git Bash Here,输入命令查看是否安装成功git --version二、Linux环境安装Git1、yum方式安装yum install gityum install查看版本我们可以发...
2019-05-24 10:03:44
270
原创 虚拟机安装软件的几种方式:yum/epel方式/源码编译方式/Ubuntu配置apt源方式
目录:一、yum本地仓库配置并以安装bind为例二、配置epel仓库并以安装Nginx为例三、源码编译安装Nginx四、Ubuntu配置清华apt源并以下载安装wireshark为例==================================================================================================...
2019-05-16 10:29:23
1850
原创 Linux所有目录内容及目录下常见文件与功能介绍
一、FHS定义FHS定义了两层规范,第一层是/根目录下应该要放什么文件数据(例如/etc应放置设置文件);第二层则是针对/usr与/var这两个目录的子目录来定义(例如/var/log放置系统登录文件)二、目录内容介绍可用命令(ls/)列出目录下的各个目录存放什么内容的文件,并列出目录下常用的文件及用法/根目录内容 定义 该目录下的文件与功能 bin ...
2019-04-17 15:56:27
1910
原创 IPv4、IPv6、UDP、TCP数据报首部格式分析
一、IPv4首部格式(图片来源《图解TCP/IP》)通过wireshark抓QQ的数据报,IPV4的数据报格式和上面的一致,现在进行分析(相对重要的会红色标记) (1)版本(version):由4比特构成,表示标识IP首部的版本号,如上是版本号为4(2)首部长度(IHL):由4比特构成,表明IP首部的大小,当没有可选项时,首部长度为2...
2019-04-10 15:46:49
5242
原创 Linux网络配置静态IP(Centos7/Ubuntu)
LINUX的网络配置一、前言1、准备工作,安装好VMware WorkSstation,Centos7和Ubuntu,可以参考这篇文章Centos7/Ubuntu/Centos6安装图解详细教程2、虚拟机网络模式分类:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式) 3、 NAT模式将地址设置为静...
2019-04-09 20:58:35
1771
原创 Centos6/Centos7/Ubuntu操作系统安装图解教程
一、工作准备(1)镜像文件下载官网下载地址:https://www.centos.org/download/。选择DVDISO,根据需要下载对应的版本(2)VMwore WorkStation 下载(需要激活,可以去某宝购买激活码,当然,我们要支持正版)个人选择的镜像文件如下:(3)下面图片较多,如果看不清楚的话可以按Ctrl+滚轮放大浏览器页面查看,安装好系统后,可以查看...
2019-04-09 20:43:02
1385
原创 shell内建命令分析
输入命令man cdalias:查看别名bg:在后台恢复每个暂停的工作jobspec,类似于以&开始的bind:给套接字绑定一个地址 break:跳出循环 builtin:执行shell builtin caller:返回当前子例程调用的上下文 cd:改变工作目录,将目前工作目录改变到指定的目录下 command:执行简单命令或显示有关命令的信息 compgen:命令...
2019-04-09 20:18:02
180
原创 Linux与shell脚本编程:运算符计算与常见的条件判断
一、运算符计算(1)注意只能整数:先让变量a,b分别为12,6加:expr 12 + 6 expr $a + $b 注意一定要加空格,不然就相当于字符串 echo $[12 + 6] echo $[a + b] echo $((12 + 6)) echo $((a + b)) ...
2019-04-02 21:06:03
279
原创 Linux与shell脚本编程:shell的变量与常见符号
一、常见变量不同于其它语言需要先声明变量,shell的变量直接使用,eg:a=15 echo $a (该命令可提出出a的值)调用变量的话 $a 或者 ${a}。${a} 可实现字符串拼接 $? #判断上一条命令执行的是否成功,执行成功返回0,失败返回1$0 #返回脚本的文件名称$1-$9 #返回对应的参数值$* #返回...
2019-04-02 19:48:14
293
原创 Linux与shell脚本编程:远程连接软件CRT与shell脚本相关知识(解释器,vi编辑器,文件权限与执行方法)
一、远程连接软件个人使用的是CRT,提供给大家下载 提取码:oxx2,解压完成后,选择对应的32/64位下载,双击标注的exe安装,使用界面如图二、vi编辑器Vim编辑器的三种模式:命令模式,输入模式,末行模式命令模式:控制光标移动,可对文本进行复制,粘贴,删除和查找等工作x # 删除一个字符dd # 删除一整行...
2019-03-29 00:46:54
888
原创 Linux与shell脚本编程:Linux常用的30条命令
一、Linux命令的格式命令名称 [命令参数] [命令对象](中间用空格键分割)----命令对象一般指要处理的文件,目录,用户等资源----命令参数可用长格式(完整的选项名称)或短格式(单个字母的缩写),两者分别用--与-作为前缀,长格式和长格式之间不能合并,长格式和短格式之间也不能合并,但短格式和短格式之间是可以合并的,合并后仅保留一个-(减号)即可。如...
2019-03-29 00:22:41
273
原创 数据结构与算法Java(十)深度优先(DFS)广度优先(BFS)
一、广度优先搜索(BFS) 先查找离起始顶点最近的,然后是次近的,一次往外搜索时间复杂度:O(边的个数)空间复杂度:O(顶点的个数)public void bfs(int s, int t) { //s表示起始顶点;t表示终止顶点 if (s == t) return;//visited用来记录已经被访问的顶点,用来避免顶点被重复访问 boolean...
2019-03-28 19:59:39
264
原创 数据结构与算法(九)红黑树
1、平衡二叉树(AVL):指二叉树中任意一个节点的左右子树的高度相差不能大于1 2、红黑树:近似平衡,高度近似为节点要么为红色,要么为黑色。同时,必须满足如下要求根节点是黑色的 每个叶子节点都是黑色的空节点(NIL),即叶子节点不保存数据 任何相邻的节点不能同时为红色,即红色节点是被黑色节点隔开的 每个节点,从该节点到达其可达叶子节点的所有路径,都包含相同数目的黑色...
2019-03-28 19:54:30
156
原创 数据结构与算法java(八):二叉树基础(下)增加删除查找操作
一、二叉查找树二叉查找树也叫二叉搜索树,支持动态数据集合的快速插入,删除,查找操作。要求在树中的任意一个节点,其左子树中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值平衡二叉树的插入、删除、查找操作时间复杂度是O(logn)二、查找操作:在二叉树中查找一个节点,我们先取根节点,如果他等于我们要找的数据,就返回;如果要查找的数据比根节点小,在左子树递归查找;...
2019-03-23 18:37:34
402
原创 数据结构与算法Java(七):二叉树基础(上)
一、树相关节点关系:A是B的父节点;B是A的子节点;BCD是兄弟节点;E是根节点;没有子节点的节点叫做叶子节点或叶节点,如GHIJKL节点的高度(从下往上)= 节点到叶子节点的最长路径(边数)节点的深度(从上往下)= 根节点到这个节点所经历的边的个数节点的层数= 节点的深度 + 1树的高度= 根节点的高度二、二叉树1、满二叉树:叶子节点全都在最底层,除叶子结...
2019-03-23 18:30:28
168
原创 数据结构与算法Java(六):哈希算法
一、定义:将任意长度的二进制值串映射为固定长度的二进制值串,这个映射规则就是哈希算法二、设计要求:从哈希值不能反推出原始数据 对输入数据非常敏感,数据修改后的哈希值与原来大不相同 散列冲突的概率要尽可能小 执行效率要尽可能高三、应用:安全加密:常用的加密算法有MD5和SHA,DES,AES 唯一标识:搜索时可通过唯一标识加快速度,比如可以从图片的二进制码串开头,中间,末尾...
2019-03-23 18:10:32
227
原创 数据结构与算法Java(五):散列表(哈希表)与HashMap底层实现(面试题)
一、概述散列表是数组的一种扩展,用的是数组支持随机访问数据的特性,key-value的形式散列冲突:指不同key,产生了相同的value解决方法:1)开放寻址法:当散列冲突发生时,重新探测一个空闲的位置,将其插入。一般是在数据量比较小,装载因子小时采用。用装载因子表示空位的多少:散列表的装载因子 = 填入表中的元素个数 / 散列表的长度线性探测的方式(从当前位置出发,依次往后查找)...
2019-03-23 18:06:34
449
原创 数据结构与算法Java(四)跳表
1、定义:链表加多级索引的结构,提高查找效率,类似于二分查找时间复杂度:查询,插入,删除都是O(logn)空间复杂度:O(n)图解:2、问题:插入数据过多时,可能出现某2个索引结点之间的数据非常多,极端情况下,跳表会退化成单链表跳表的解决方式是通过随机函数来维护平衡性。比如随机函数生成了值K,那我们就将这个节点添加到第一级到第k级索引中3、思考题:为什么Redis要...
2019-03-23 18:01:57
766
原创 数据结构与算法Java(三) 二分查找
1、定义:二分查找针对的是一个有序的数据集合,查找思想类似于分治思想,每次都通过与区间的中间元素对比,将待查找的区间缩小为之前的一半,直到找到要查找的元素,或者区间被缩小为0.时间复杂度:O(logn)例如查找19这个元素2、实现方式:(1)循环实现(最简单的情况:有序数组中不存在重复元素)public int bsearch(int[] a, int n, int ...
2019-03-23 17:55:53
175
原创 数据结构与算法Java(二)栈和队列
先用一张图片概览栈和队列一、栈1、特点:先进后出,后进先出;只允许在一端插入和删除入栈push(),出栈pop()操作的空间复杂度是O(1);时间复杂度是O(1)2、实现方式:用链表实现--链式栈;用数组实现--顺序栈// 基于数组实现的顺序栈public class ArrayStack { private String[] items; // 数组 pr...
2019-03-23 17:04:45
161
原创 数据结构与算法Java(一) 数组与链表
一、 数组定义:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。特点:支持随机访问,根据下标随机访问的时间复杂度为O(1);插入删除操作的平均时间复杂度为O(n)。注意点:警惕数组的访问越界问题,在java中,会做越界检查,越界时会报java.lang.ArrayIndexOutOfBoundsExceptionArrayList与数组...
2019-03-23 16:52:44
222
原创 java虚拟机基础知识(八):晚期(运行期)优化
即时编译器(JIT编译器):运行时,虚拟机将会把热点大吗编译成与本地平台相关的机器码,并进行各种层次的优化一、Hotspot虚拟机内的即时编译器1)解释器与编译器共存的架构:当程序需要迅速启动和执行的时候,解释器可以首先发挥作用,省去编译的时间,立即执行;在程序运行后,编译器把越来越多的代码编译成本地代码,可以获取更高的执行效率;内存资源限制较大—使用解释执行节约内存,反之用编译执行提升效...
2019-03-08 00:20:35
202
原创 java虚拟机基础知识(七):早期(编译期)优化
一、概述编译期:1)前端编译器:*.java文件转变为*.class文件 2)后端运行期编译器(JIT):字节码转变为机器码 3)静态提前编译器(AOT):*.java文件编译成本地机器代码二、 javac编译器编译过程的3个过程:1)解析与填充符号表过程(词法语法分析;输入到符号表)...
2019-03-08 00:03:12
128
原创 java虚拟机基础知识(六):虚拟机字节码执行引擎
一:概述 执行引擎:输入的是字节码文件,处理过程是字节码解析的等效过程,输出的是执行结果二: 运行时栈帧结构 栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构 栈帧存储了局部变量表,操作栈,动态连接,返回地址等1) 局部变量表 局部变量表是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量,最小单位是变量槽(...
2019-03-07 23:56:46
184
原创 java虚拟机基础知识(五):虚拟机类加载过程详解与类加载器
一、概述1、类加载机制: 虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验,转换解析和初始化(三者都在程序运行期间完成),最终形成可以被虚拟机直接使用的java类型2 、类加载的过程类从被加载到内存到卸载出内存的生命周期:加载,验证,准备,解析(统称为连接),初始化,使用和卸载二、类加载过程详解1、加载 加载阶段虚拟机完成的事情:1)通过一个...
2019-03-07 23:45:17
475
原创 java虚拟机基础知识(四):类文件结构与字节码指令简介
一、Class类文件的结构Class文件是一组以8位字节为基础单位的二进制流,整个Class文件中存储的内容几乎全部是程序运行的必要数据,采用一种类似于C语言结构体的伪结构来存储数据,这种伪结构只有两种数据类型:无符号数和表。----无符号数属于基本的数据类型----表是由多个无符号数或者其他表作为数据项构成的复合数据类型=============下图来源《深入理解java虚拟机》...
2019-03-07 22:49:01
239
原创 java虚拟机基础知识(三):垃圾收集算法与垃圾收集器
一、垃圾收集算法 1)标记-清除算法:标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象 ----主要不足:一个是效率问题,标记和清除两个过程的效率都不高;另一个是空间问题,标记清除之后会产生大量不连续的内存碎片 2)复制算法:将可用内存容量分为大小相等的两块,每次只使用其中一块。当这一块的内存用完了,就将还存活的对象复制到另外一块上面,...
2019-03-07 12:32:04
118
原创 java虚拟机基础知识(二):对象存活判断与引用分类
一、对象是否存活1、判断方法1)引用计数算法:给对象添加一个引用计数器,每当有一个地方引用它时,计数器值加1;当引用失效时,计数器值减1;任何时刻计数器为0的对象就是不可能再被使用的。存在问题:很难解决对象间相互循环引用的问题2)可达性分析算法:通过一系列的称为“GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有...
2019-03-07 12:26:38
185
原创 java虚拟机基础知识(一):运行时数据区分析与虚拟机对象分配,布局,访问过程
一、运行时数据区域线程共享数据区:方法区,堆线程隔离数据区:虚拟机栈,本地方法栈,程序计数器1、程序计数器【线程私有】:可看作是当前线程所执行的字节码的行号指示器。----当线程执行的是java方法,计数器记录的是正在执行的虚拟机字节码指令的地址----当线程执行的是Native方法,计数器值则为空此内存区域是唯一一个在java虚拟机规范中没有规定任何OutOfM...
2019-03-07 12:17:47
155
原创 网络协议基础(八):网络安全与HTTPS访问图解
一、网络安全构成要素:1)防火墙:放行符合安全策略的数据包----种类:如专门过滤(不过滤)特定数据包的包过滤防火墙,数据到达应用以后由应用处理并拒绝非法访问的应用网关----举例:通过监控TCP包首部的SYN和ACK标志位来实现内网连接(具体为丢弃SYN=1,ACK=0的包)2)IDS(入侵监测系统)----设置形式:一般在防火墙或DMZ等边界设备上进行设置----功能:...
2019-03-05 17:41:11
283
原创 网络协议基础(七):应用协议(文件传输、电子邮件、WWW)
应用协议定义:为了实现某种应用而设计和创造的协议。一、远程登录:主要使用TELNET和SSH两种协议 1)TELNET:方式:利用TCP的一条连接,通过向这一条连接向主机发送文字命令并在主机上执行。基本服务分类:仿真终端功能和协商选项机制行模式:每从键盘输入一个换行,就将该行的数据最为一整行发送给服务端B透明模式:客户端A每输入一个字符都要发送给服务端B...
2019-03-05 17:37:57
2923
广东工业大学数电试卷(部分附答案).zip
2019-05-19
广东工业大学模电试卷(部分附答案).zip
2019-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人