• [Linux/Unix] tcp协议必知必会 2020-12-26 19:49:03

    TCP的意思是传输控制协议,它是网络和其他应用(如电子邮件)的基础。 TCP在1981年的RFC793中定义,是互联网最古老的支柱之一。 TCP位于互联网协议(IP)之上,构建了一个基础系统,HTTP、FTP、IMAP等应用级协议就是在这个基础上产生的。 TCP与IP和UDP相反,是面向连接的。 在通过TCP进行传输之前,必须建立一个连接。数据是以小包的形式发送的,当通信结束时,连接就会关闭。 当数据通过TCP传输的时候,必须发生一个比较复杂的工作流程,叫做握手。 在这里我就不详细介绍了,但是这

  • [Linux/Unix] docker 运行postgresql 2020-12-26 19:32:16

    以Mac 或者Linux为例,讲解如何利用docker运行postgresl. 请先安装好docker的最新版本,然后确保能联网,因为要从网络下载软件镜像, 先建立目录 cd $HOME mkdir develop/pgdata -p cd develop/pgdata 接下来执行运行命令创建postgres的实例, 注意改一下密码,换成你自己的 docker run -d \ --name pg \ -p 5432:5432 \ -e POSTGRES_PASS

  • [Linux/Unix] Ubuntu Nvidia tensorflow安装指南 2020-12-26 19:27:12

    文介绍了在ubuntu下安装nvidia 驱动和tensorflow gpu加速版本。 下载安装官方ubuntu 18.04.5 64位,其他版本不行, 然后按照下面的指南安装 # Add NVIDIA package repositories wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb sudo

  • [Linux/Unix] Linux fq-pie 流控算法 2020-12-26 19:25:13

    Linux 内核 流量包调度算法 fq-pie是 Mohit P Tahiliani 和他的团队研发的。已经被Linux 开发团队接受,合并到Linux 内核5.6当中。该算法又名为:"Flow Queue Proportional Integral controller Enhanced (FQ-PIE)". 它最小化网络数据包的延时队列。 FQ-PIE 被称作 Linux 5.6 最佳的特性. 开发设计工作由以下人员完成 Gautam Ramakrishnan, Sai Charan, Mohi

  • [Linux/Unix] ubuntu 和debian安装xanmod 内核 2020-12-26 19:24:20

    xanmod是一个为ubuntu或者debian设计的 自定制linux内核版本。 可以把它理解为一个汽车的发动机,这个是加强版的。   特性有:   Preemptive Full Tickless Kernel at 500Hz w/ Tuned CPU Core Scheduler.【更快的cpu调度】 RCU Boost for better responsiveness and lower overall system latency.【更低的系统延

  • [Linux/Unix] 优化Linux 流控协议 2020-12-26 19:17:06

    简介 本文介绍Linux 流控协议算法,以及优化的一些基础知识 tc 介绍 tc , Linux Advanced Routing & Traffic Control, Linux高级路由和流量控制的名词,qdisc,queuing discipline 是数据包的排队规则 实时查看当前的排队规则 /proc/sys/net/core/default_qdisc 对应的sysctl设置 net.core.default_qdisc   默认的排队规则是:pfifo

  • [Linux/Unix] 利用curl 抓取接口延时数据 2020-12-26 19:15:43

    简介 做接口开发,有时候会遇到投诉接口响应缓慢的场景。一般客户端投诉会比较多。这个时候我们需要分析一下具体慢在哪个环节。 好在我们可以用curl工具,抓取一段时间内的接口响应延时数据,包括dns解析,建立链接,等待请求响应的时间。 工具源代码 编写了一个脚本工具,源代码如下   #!/bin/bash set -o errexit print_header () { echo "code,time_total,time_namelookup,time_conn

  • [Linux/Unix] 利用sctl管理你自己的服务启动脚本 2020-12-26 19:05:59

    简介 在前面的微头条,我们讲到了我们不需要容器。那么问题来了。我们怎么启动我们的服务呢?linux下面常用的启动程序,有systemd和supervisor, supervisor是python写的。 systemd是很多linux自带的启动管理程序。 今天给大家讲解如何通过一个自定义的 脚本,来帮助我们管理systemd服务 原理 我们管理systemd服务的原理,就是把我们的服务启动配置文件,加到/etc/systemd/system/这个默认的目录下面 sctl脚本 这个脚本,

  • [Linux/Unix] xshell配置跳板机登录ssh 2020-12-26 17:46:27

    简介 公司的服务器,需要通过ssh跳板机登录, 首先需要登录跳板机,才能访问目标服务器的ssh,我们看下如何操作吧 配置xshell Connection 这里的配置: 名字填你要连接的目标ip(你自己知道这是连哪台的);Host 填跳板机的,端口也填跳板机的 Authentication这里,密码填跳板机的 Login Scripts这里,添加一个, Expect 是一个触发条件,表示当看到该文本,执行后面的命令, 比如我的跳板机登录之后,会显示[email protected]:~# 我就

  • [Linux/Unix] windows 10安装chocolatey 打造开发环境 2020-12-26 17:38:24

    简介 本文介绍如何在windows 10下安装chocolatey,打造完美开发环境 。 choco是windows 下面软件包管理器,免费版已经提供了很多好用的功能。 有钱的你也可以支持一下官方商业版本 环境准备 因为c盘空间比较小,我准备把choco安装到D盘去,我们在D盘根目录下面,建立一个空文件夹,名为 choco 然后我们创建一个链接把choco默认安装目录,链接到D盘 1mklink /J "C:/ProgramData/chocolatey" "d:/choco" 后面

  • [Linux/Unix] docker 清理垃圾空间占用 2020-12-26 17:36:24

    简介 用docker 来跑服务,是挺爽的,就是用着用着,垃圾越来越多,你的硬盘被狗吃了. 好在docker 提供了垃圾清理工具,我们一起来学习一下如何清理垃圾吧. 清理垃圾 好吧, 其实清理垃圾很简单, 我们先定义一下哪些垃圾可以被清除. 不用的image 镜像 无用的network 无用的volumes 让我们开始动手清理吧 , docker版本17.06.1 之后, 同步清理volumes,加--volumes参数 1$ docker system prune --

  • [Linux/Unix] kubuntu 升级至最新的kde 2020-12-26 17:12:44

    简介 本文简单介绍如何在最新的kubuntu 里升级kde桌面环境到最新的 KDE. 添加移植ppa kde官方维护了一个移植仓库,提供了最新的kde版本。适用于kubuntu发行版。 默认kubuntu提供的是老的kde桌面环境, 稳定,但是软件包不是最新的。我们需要升级到最新的版本,体验最强大的kde桌面环境 在操作之前,确保你有root权限,因为需要向系统的软件仓库源,增加仓库地址 sudo add-apt-repository ppa:kubuntu-ppa/backport

  • [Linux/Unix] 遇见最好的kde,推荐kde neon 2020-12-26 17:11:41

    简介 kde大概是这个星球上最美好的桌面,源自欧洲。 本文介绍一下一款优秀的发行版kde neon, 推荐大家品鉴。本文阅读约需要3分钟 系出名门的neon 2016年6月8日, neon第一次面向公众发行,令人眼前一亮。 kde本来,就是一款非常现代,时尚,稳定,卓越的桌面环境。 有些地方,跟windows 和mac比起来,更是有胜之而无不及。 但是各大发行版,冗长的开发周期。 你能用到的版本,里面带的kde软件包,往往都是两三年前的版本。 测试个一两年,稳定之后,才推出来。 这样

  • [Linux/Unix] gitlab配置ci自动执行ssh构建命令 2020-12-26 17:09:56

    前言 gitlab提供了免费的ci功能,可以持续集成,通过简单的配置,我们能用ci调用ssh,在远程服务器执行命令。比如重启容器之类的简单任务 配置 找到项目的Settings -> CI/CD->Variables, 添加一个名为SSH_PRIVATE_KEY的变量,内容为你的ssh 私匙,确保能通过该私匙登陆你的ssh服务器 然后编辑你项目的.gitlab-ci.yml配置文件 job1: image: netroby/docker-lftp before_sc

  • [Linux/Unix] Ubuntu 安装最新的显卡驱动 2020-12-26 16:53:08

    前言 ubuntu linux是我最喜欢的linux发行版。最近的文章教程,比较多这方面的文章。 这次我带大家一起学习安装最新的显卡驱动 前景提要 为什么需要安装最新的显卡驱动? 这个问题要从几个方面来说: ubuntu默认带的显卡足够稳定,也足够老 默认官方包编译的都是没有做过什么优化,性能不是最优的。 播放视频显卡加速需要更新的显卡驱动的支持 如果你需要opencl, vulkan等,最新的显卡驱动可以帮助你 开始安装 借助开源的开发者提供的 驱动 软件源,我们可以便捷的安装

  • [Linux/Unix] 优化ubuntu dns解析,关掉systemd-resolved 2020-12-26 16:52:08

    简介 ubuntu 的dns解析有时候有点慢,可能是系统自带的systemd-resolved的锅。 systemd本身是做启动管理的,但是它野心大,什么都想插一脚。这不,给你默认加了一个本地dns缓存。 默认监听127.0.0.1 53端口。 我们来配置系统,关掉它。用路由器分配的dns就性了,或者我们自己来配置 关掉systemd-resolved的步骤 sudo systemctl disable systemd-resolved sudo systemctl stop systemd-

  • [Linux/Unix] 为何ubuntu linux是最好的桌面发行版 2020-12-26 16:42:18

    前言 在ubuntu 21.04 发布来临之际,请允许我用这样一篇软广文,献给亲爱的ubuntu。 我和ubuntu 我自己,学linux,是从安装freebsd开始的。不知道为什么,就是从书上看,说unix才是正宗的,linux只是孙子。然后就开始学freebsd。装了之后,发现搞什么东西,都很复杂,很难搞。 然后就开始进一步去找,有什么更好玩的玩意。然后就下载了红旗linux装了玩。 红旗linux玩着玩着,比freebsd稍微友好了一些。然后我继续搜索linux知识的时候,听说ubu

  • [Linux/Unix] centos 7 设置时区为中国时区 2020-12-26 16:40:31

    前言 默认centos的时区,如果没有设置, 默认是UTC, 比中国时区慢了8小时. 调整时区 为了让centos 使用中国时区,我们需要调整系统的设置 执行命令 timedatectl set-timezone Asia/Shanghai 操作完马上生效,重启也不会失效 查看系统当前时区 # ls -l /etc/localtime lrwxrwxrwx 1 root root 35 Oct 10 17:04 /etc/localtime -> ../usr/shar

  • [Linux/Unix] docker运行elasticsearch 2020-12-26 16:39:29

    前言 如何快速运行一个elasticsearch, 当然是用docker来跑了. 不需要复杂的编译安装,只需要在Linux下面,执行一个命令,就可以让elasticsearch跑起来. 准备 Linux x64 系统, 如 centos 7和 ubuntu 18.04 15GB 或更多磁盘空间 1GB或更多内存 网络连接 根据docker 官方教程安装好docker,并已经启动docker 开始 开启一个命令行shell,执行命令启动 elasticsearch docker r

  • [Linux/Unix] Linux 后台执行任务,tmux session 操作指南 2020-12-26 16:34:55

    前言 用ssh执行命令,如果遇到网络中断,就不能完成执行,因为会直接中断。但是我们有时候,又需要在后台一直跑一些任务,不希望它被中断。 好在万能的Linux,不会让我们失望。 我们可以通过tmux来执行session,然后执行命令,这样会在后台执行,而不会被中断 先确保系统安装了tmux 登录ssh之后,先检查下系统有没有装tmux, 如果没有装,用root权限 装一下 # debian/ubuntu sudo apt-get install -y tmux # centos/fedora