![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux菜鸟之路
文章平均质量分 62
NetRookieX
若能力无法承载野心,就静下心来学习吧!
展开
-
Bloom Filter布隆过滤器
简介本质上布隆过滤器是一种数据结构,比较巧妙的概率型数据结构(probabilistic data structure),特点是高效地插入和查询,可以用来告诉你 “某样东西一定不存在或者可能存在”。相比于传统的 List、Set、Map 等数据结构,它更高效、占用空间更少,但是缺点是其返回的结果是概率性的,而不是确切的。背景HashMap 的问题:HashMap可以在 O(1) 的时间复杂度内返回结果,效率奇高。但是 HashMap 的实现也有缺点,例如存储容量占比高,考虑到负载因子的存原创 2022-01-02 01:09:17 · 461 阅读 · 0 评论 -
LVS详解
LVS简介LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。LVS名词解释DS:director server,即负载均衡器,根据一定的负载均衡算法将流量分发到后端的真实服务器上.RS:real server 真实的提供服务的server,可被DS划分到一个或多个负载均衡组.BDS:backup director server,为了保证负载均衡器的高可用衍生转载 2022-01-01 22:48:33 · 3142 阅读 · 5 评论 -
CentOS安装python-dev,python-devel
说明安装Python-dev,但是在centos上面没有该包.[root@master audiotools-3.0]# yum install python-dev已加载插件:fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.163.com * extras: centos.ustc.edu.cn * updates: mirrors.163.com没有可用软件包 python-dev。原原创 2020-12-13 12:24:50 · 3205 阅读 · 1 评论 -
Linux信号量
查看信号量[root@localhost ~]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR111) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SI原创 2021-02-15 22:46:50 · 2314 阅读 · 6 评论 -
vsftpd服务
FTP状态码110 重新启动标记应答。120 服务在多久时间内ready。125 数据链路端口开启,准备传送。150 文件状态正常,开启数据连接端口。200 命令执行成功。202 命令执行失败。211 系统状态或是系统求助响应。212 目录的状态。213 文件的状态。214 求助的讯息。215 名称系统类型。220 新的联机服务ready。221 服务的控制连接端口关闭,可以注销。225 数据连结开启,但无传输动作。226 关闭数据连接端口,请求的文件操作成功。227 进入p原创 2020-12-24 20:34:09 · 191 阅读 · 1 评论 -
Centos编译加载toa模块
什么是toa模块toa模块是为了让后端的realserver能够看到真实的clientip而不是lvs的dip安装步骤安装依赖包yum -y install kernel-devel gcc make git更新内核yum -y update kernelreboot #重启进入新内核安装toa模块cd /usr/local/src/git clone https://github.com/huaweicloud/elb-toa.gitcd elb-toa/srcm原创 2020-12-18 22:08:31 · 861 阅读 · 2 评论 -
CentOS安装Jenkins
文章目录安装步骤安装jdk安装git安装jenkins放行端口配置Jenkins启动JenkinsJenkins配置文件安装步骤安装jdk请参照我的另一篇博客:Linux下轻松jdk安装安装gityum -y install git安装jenkins方法1:wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.reporpm --import https://pkg.jenki原创 2020-11-07 11:33:47 · 1514 阅读 · 0 评论 -
2>&1解释
场景/root/test.sh > runoob.log 2>&1那2>&1是什么意思?解释将标准错误 2 重定向到标准输出 &1 ,标准输出 &1 再被重定向输入到 runoob.log 文件中。0 – stdin (standard input,标准输入)1 – stdout (standard output,标准输出)2 – stderr (standard error,标准错误输出)关注我,京城郭少...原创 2020-10-12 17:28:57 · 634 阅读 · 0 评论 -
shell脚本获取函数返回值
方式1原理:return返回的值可以通过$?得到。缺点:return只能返回整数#!/bin/sh function test() { return 100}testecho $?方式2原理:函数内部使用echo输出,调用函数时将输出结果捕获。缺点:只能输出与返回值相关的内容,且所有使用到的命令(如grep)一定要记得2>&1输出到空设备。#!/bin/sh function test() { echo 100 }echo $(tes原创 2020-09-28 23:52:26 · 5342 阅读 · 0 评论 -
echo输出带颜色的字
文章目录格式格式\033[A;F;Bm #放在文本的左边,可以影响后面所有字体的样式解释:F代表字体颜色值(Font),颜色编号30~37。B代表背景颜色值(Background),颜色编号40~47。A代表加粗、下划线等样式。编号:0~8。A、B、F之间用分号隔开,顺序可以任意。如果不想有某样式,省略即可。特殊的:\033[0m表示没有样式。这样可以避免被前面的样式影响。所有颜色:F B 颜色30 40 黑色31 41 红色32 42 绿色33 43 黄色原创 2020-09-26 23:11:37 · 688 阅读 · 0 评论 -
Linux中的环境变量PS1,打造你的专属终端
文章目录介绍PS1的格式设置字体样式举例介绍好看的终端是怎么做的呢?通过PS1这个环境变量!PS1的格式PS1='[\u@\h \w]\$ '样式:解释:[是普通字符\u代表用户@是普通字符\h是主机名(只取第一个名字)\w是完整的工作目录名称。家目录会以 ~代替]是普通字符\$是提示字符,如果是root时,提示符为:# ,普通用户则为:$最后应有一个空格,提高可读性。所有转义字符:\d :代表日期,格式为weekday month date,例如:"Mon Aug原创 2020-09-26 17:34:17 · 1335 阅读 · 0 评论 -
Linux/Unix-stty命令详解
文章目录介绍stty命令的使用方法stty的参数我常用的选项所有选项介绍stty用于查询和设置当前终端的配置。如果你的终端回车不换行、输入命令不显示等各种奇葩问题,那么stty命令可以帮助你stty命令的使用方法stty -echo #关闭此选项stty echo #打开此选项stty的参数stty -a #显示当前配置(-号表示此选项关闭,否则此选项被设置)我常用的选项stty -echo #关闭回显。即输入的字符不显示(可用作输入密码)。原创 2020-09-26 11:26:08 · 1995 阅读 · 0 评论 -
linux下后台运行程序
文章目录背景nohup命令setsid命令pm2背景后台运行程序的时候,如果退出当前的终端(session),你运行的所有程序(包括后台程序),都将被关闭。原因是:你运行的程序都是你的终端进程的子进程,父进程gg了,子进程也会被干掉。nohup、setsid和pm2可以帮助我们。nohup命令使用方法:nohup ping baidu.com &作用:所有的输出将会被重定向到当前目录的nohup.txt文件下,可以用tail -f nohup.txt来跟踪输出结果原创 2020-09-13 14:45:59 · 291 阅读 · 0 评论 -
nginx 信号量
nginx支持的信号量TERM, INT fast shutdownQUIT graceful shutdownHUP changing configuration, keeping up with a changed time zone (only for FreeBSD and Linux), starting new worker processes with a new configuration, graceful shutdown of old worker processesUS原创 2020-09-12 15:47:14 · 193 阅读 · 0 评论 -
yum安装Gitlab
环境CentOS7步骤安装依赖包yum install -y policycoreutils-python openssh-serversystemctl enable sshdsystemctl start sshd安装邮件服务yum -y install postfixsystemctl enable postfixsystemctl start postfix安装扩展源wget https://packages.gitlab.com/install/repositori原创 2020-09-06 18:40:21 · 497 阅读 · 0 评论 -
nginx中的break和last
示例1-无break和last请求:访问/1.html结果:最终会匹配到b.html执行顺序:连续执行两次rewrite后,匹配到location /3.html,最终匹配到b.htmlserver{ listen 80; server_name test.com; root /tmp; location / { rewrite /1.html /2.html; rewrite /2.html /3.html; }原创 2020-09-06 10:52:58 · 1737 阅读 · 0 评论 -
docker中安装数据库mariadb
背景一般情况下,我们直接拉取mysql的镜像即可。但是如果需要在centos的镜像里安装并启动mysql,那么这篇文章将会给你帮助。既然可以在容器中安装mysql,本教程同样适用于CentOS中。安装rpm -ivh http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql57-community-release-el7-10.noarch.rpm //安装扩展源yum install mysql-community-se原创 2020-09-06 01:13:41 · 264 阅读 · 0 评论 -
20-Docker镜像制作
查看镜像构建的历史docker image history 26a5 #查看镜像26a5的构建历史使用commit命令构建镜像使用commit命令可以将容器构建成镜像。将容器webserver制作为镜像nginx:v2docker commit \ --author "Tao Wang <twang2218@gmail.com>" \ #...原创 2020-03-22 11:32:29 · 327 阅读 · 0 评论 -
19-Docker数据持久化
什么是Docker数据持久化容器在运行时会在镜像层上加上一层:可写层。当删除容器时,可写层就会一起被删除,数据丢失。数据持久化就是就是将数据持久化保存,删除容器之后,数据仍然存在。方法1-挂载本地目录到容器中挂载方法docker run -d -p 8080:80 -v /html:/usr/share/nginx/html nginx #-v参数将本地的/html挂...原创 2020-03-22 10:14:39 · 229 阅读 · 0 评论 -
18-Docker资源限制
背景若容器使用的计算机资源不加限制,那么,可能会耗光整个计算机资源。如代码里有bug,出现了死循环,且创建了很多线程。在Docker中,可以使用Cgroup技术限制CPU、Block IO、RAM命令docker container run -it -c 512 centos -c --cpu-shares #设置CPU使用份额(默认1024) --cpuset-c...原创 2020-03-21 16:34:18 · 990 阅读 · 0 评论 -
17-Docker镜像和容器操作
镜像拉取镜像(下载镜像)镜像是层次型的,拉取的时候会按照各层分别拉取。每一个镜像都有自己的散列值,用来唯一标记一层镜像,可以用来判断本地是否已经拉取过此镜像层,如果已经拉取,则直接使用。docker image pull centos:7 #拉取镜像centos:7输出:7: Pulling from library/centos #ab5ef0e58194...原创 2020-03-21 16:22:25 · 421 阅读 · 0 评论 -
16-Docker核心概念
Docker镜像Docker 镜像类似于操作系统镜像,可以将它理解为一个只读的模板。例如,一个镜像可以包含一个基本的操作系统环境,里面仅安装了Apache应用程序,可以把它称为一个Apache镜像。Docker镜像和操作系统的iso文件镜像非常相似。Docker镜像有些特别:Docker镜像中只包含应用(如apache)依赖的文件,其他的都会被删掉。这也是Docker轻量的原因。...原创 2020-03-21 11:57:55 · 277 阅读 · 0 评论 -
15-容器简介与Docker安装
传统企业应用构建应用被直接部署在操作系统之上,并且操作系统直接安装于硬件之上应用被操作系统绑定操作系统被硬件绑定缺点部署非常慢(启动应用的速度非常慢)成本非常高(原有服务器的操作系统不支持这个应用,就需要再买一台服务器)资源浪费难于迁移和扩展(因为应用只能支持某个操作系统,如CAD不支持mac)被限定硬件厂商(很多应用只能运行在x86 CPU上)虚拟化应用部署既然传...原创 2020-03-21 11:31:58 · 173 阅读 · 0 评论 -
14-LNMP搭建
介绍LNMP: Linux + Nginx + Mysql/Mariadb + PHP借助LNMP,我们就能搭建一个动态的网页。安装Nginx详细nginx教程:https://blog.csdn.net/NetRookieX/article/details/104736601安装Mariadb详细Mariadb教程:https://blog.csdn.net/NetRookieX...原创 2020-03-21 10:30:17 · 336 阅读 · 0 评论 -
13-nginx
关于nginxnginx是提供http服务的中间件。这里推荐学习nginx的博客:朱双印的博客安装nginx的版本主线版本(Mainline version) #最新版,不稳定稳定版本(Stable version)历史版本(Legacy version)安装方式yum安装(方便简单)源码安装(可以安装不同的模块)yum安装的方式yum -y in...原创 2020-03-08 17:29:58 · 283 阅读 · 0 评论 -
12-CentOS7安装与管理数据库mariadb
关于MariadbMariadb和MySQL是同一个制作团队,命令几乎一样。安装yum -y install mariadb mariadb-serverfirewall-cmd --add-service=mysql #临时放行mysql服务firewall-cmd --add-service=mysql --per #永久放行mysql服务sys...原创 2020-03-08 15:50:17 · 331 阅读 · 0 评论 -
11-DNS域名解析服务
背景我们都知道,用ip可以唯一标识互联网上的主机。从前,互联网的主机非常的少。我们都可以记住每台Server的ip。就像是大哥大时期,电话非常少,电话号码也就非常少,我们都能记住某个人的电话。后来,互联网变得非常大,ip非常多,我们记不住。所以就出现了DNS域名解析服务。我只需要记住某个Server的名字,然后去找提供DNS服务的Server,询问它这个域名对应的ip。就像是,手机里...原创 2020-03-08 14:45:53 · 239 阅读 · 0 评论 -
10-文本三剑客
简介文本三剑客:grep、sed和awk。它们在Linux做文本处理非常强大,如文本的匹配、过滤和替换。grepgrep主要做的是字符串的匹配和过滤。grep匹配规则按行匹配。从第一行匹配到最后一行。只将匹配的行输出。grep不改变文件内容。示例grep "root" /etc/passwd #匹配字符串"root"输出:root:x:0:0:roo...原创 2020-03-08 10:39:48 · 302 阅读 · 0 评论 -
09-CentOS软件包管理
简介CentOS7使用rpm和yum来管理软件包。CentOS 8附带YUM包管理器v4.0.4版本,该版本现在使用DNF (Dandified YUM)技术作为后端。DNF是新一代的YUM,新的操作系统版本允许您同时使用这两种工具来管理包RPMRPM全称为Red-Hat Package Manager。是CentOS和RedHat拥有的包管理工具。查看rpm -ql http...原创 2020-03-07 17:37:41 · 364 阅读 · 0 评论 -
08-Linux计划任务
什么是计划任务周期性或者定时执行某个命令或者脚本。crontab安装yum install crontabs #安装crontabssystemctl enable crond #开机启动添加计划任务vim /etc/crontab #分 时 日 月 周几 * 3 * * * root /usr/local/mycommand.sh ...原创 2020-03-07 15:58:12 · 163 阅读 · 0 评论 -
07-Linux文件权限管理
文件的类型Linux的哲学思想:一切皆文件。Linux的文件分为多种类型。可以通过ll命令查看文件的类型:ll#输出:-rw-------. 1 root root 1266 2月 29 11:42 anaconda-ks.cfg#解释:第一个字段中的第一个字符表示文件的类型:这里为-,表示这是普通文件。Linux常见的文件类型:- #普通文件(如.tx...原创 2020-03-07 15:09:31 · 392 阅读 · 0 评论 -
06-Linux用户和组管理
关于用户和组的知识家目录用户都有家目录:root用户家目录为/root。其他用户的家目录在/home/,如user1的家目录为/home/user1当我们创建用户时,系统就会自动创建该用户的家目录。家目录用~表示。cd ~表示移动到家目录中。用户用户的信息被保存在/etc/passwd。该文件保存了用户名、用户id、用户所在的组id和shell等信息。用户都拥有id号。...原创 2020-03-07 13:57:13 · 370 阅读 · 0 评论 -
05-CentOS防火墙
概述CentOS中的防火墙有很多,如SELinux、Firewall、TCP Wrappers、iptables/netfilter。每种防火墙都有各自擅长的地方。这里主要讲两种:SELinux和Firewall。SElinux为什么需要SElinux?Linux中的程序不能拥有过大的权限,否则就会侵入我们的系统,获取我们的数据(比如数据库文件),随意安装程序(比如后门)。这...原创 2020-03-07 10:28:23 · 230 阅读 · 0 评论 -
04-使用vim修改网卡配置
基础知识Linux会为每一块网卡分配一个网卡的配置文件。通过修改这个配置文件,我们就能对网络进行修改。比如ip,dns服务器等。ip命令ip address #输出每块网卡的信息解释:有两块网卡:lo和ens33.lo是环回接口,所以地址为127.0.0。1通过输出,我们可以看到ip,mac地址,子网掩码,广播地址,带宽等信息。修改网卡配置CentO...原创 2020-03-01 17:31:49 · 4193 阅读 · 0 评论 -
03-vi和vim编辑器的使用
背景vim是一个类似于vi的著名的功能强大、高度可定制的文本编辑器.vim在vi的基础上改进和增加了很多特性。如今vi已经是最受IT届欢迎的编辑器之一。不止在Linux中,主流IDE都支持vi.vim的三大模式vi和vim能够如此受欢迎,得益于它的三大模式:命令模式,编辑模式和末行模式三大模式之间的切换进入vim后就默认进入命令行模式。在命令模式中:输入i等命令...原创 2020-03-01 16:23:06 · 222 阅读 · 0 评论 -
02-CentOS7基础
基础知识介绍shellshell俗称壳,它包裹在内核的外面,是用户命令的翻译官。作用:接收用户的命令,翻译后(处理一下)交给Linux内核处理。命令 -> shell -> 内核 -> CPU目前,CentOS默认的shell叫bash。还有其他的shell,如zsh,fish,csh。不同的shell的命令会有所差别,这就是Ubuntu和CentOS等不同操作系统...原创 2020-03-01 15:07:17 · 698 阅读 · 1 评论 -
01-Linux系统介绍、安装与入门
关于Linux背景最先出现的是Unix操作系统,这种操作系统收费,而且适用于大型机上面。Linus想做一个免费的,传播自由的操作系统。他就仿照Unix的操作,做了一个类Unix系统:Linux内核。注意:Linux不是一个操作系统,只是一个内核。Linux衍生版本Linux只是一个内核,但在内核外面做封装后就可以成为一个操作系统。UbuntuRedhat/CentOSS...原创 2020-02-29 16:15:19 · 376 阅读 · 0 评论