java技术圈 为您找到相关结果 71

frp配置本地服务端口到服务器80端口

##搭建环境: ubuntu 16.04 LTS (本地服务计算机) ubuntu 14.04 LTS(阿里云服务器) apache tomcat 7 java 7 frp 0.8.1 linux ##搭建过程: 1. 资源准备 - frp 0.8.1 linux 二进制包 - tomcat - 任意版本jvm 2. 开始安装 1. 分别在服务端ubuntu和客户端ubuntu解压安装包(jdk以及tomcat这里不再赘述) ```tar -zxvf frp_0.8.1_linux.tar.gz``` 2. 配置本地ubuntu 16.04 LTS 中frpc.ini为: ``` #frpc.ini [common] server_addr = #阿里云服务器ip地址 server_port...阅读全文

博文 2019-04-04 17:48:20 www.allocmem.com

深信服ssl

ps: 原本我是写得比较详细的,写了一大堆,结果突然有道云笔记网页版自动给我刷新了,关键是刷新过后之前写的内容啥都没有。我目前先把安装过程的简略笔记放出来吧,如果有疑问,可以下面评论给我留言,我看到就会回复。 安装坑爹 ssl easyconnect 的公司vpn踩坑记录 目前去我们那个下载页面,发现是老版本,不支持这个easyconnect linux的客户端,于是只能走浏览器的applet了。 现在多数主流浏览器为了安全已经废弃并禁止了applet在浏览器上的运行。被迫选择firefox降级到49。 安装坑爹的applet执行环境来了 jdk1.8 也就是用jre1.8 然后找到了bin下的ControlPannel给予域名例外权限,正常运行,但是就是访问不能成功,试了好久还是不行。 被...阅读全文

博文 2019-04-04 17:57:36 vpn在linux ubunt16.04中安装实测笔记

archlinux安装教程以及自己踩过的坑

引言: linux是一种哲学。最近喜欢上了arch的简洁,可高度定制化,滚动更新和设计哲学,准备日常办公从ubuntu转向arch,目前已完成安装,正在使用arch写这篇博客,而事实证明arch确实没让我失望,它的确是一个非常不错的发行版. 安装环境: cpu: i5 ram:12G 台式电脑 一块硬盘(有剩余空间或新硬盘都可以,我这里用的是1T新硬盘,GPT分区,UEFI启动) 一块8G U盘 从官网或者其他镜像源下载的iso系统镜像(e.g:archlinux-2017-08.01-x86_64.iso) 安装过程: 制作U盘启动基础系统 在ubuntu或者其他Linux系统中执行 fdisk -l 查看所有硬盘和分区,记录下U盘的磁盘标识,比如我这里是/dev/sdc 使用dd命令制作...阅读全文

博文 2019-04-04 17:54:48 www.allocmem.com

[转]linux中service与chkconfig的替代者systemctl

文地址: http://www.111cn.net/sys/linux/65797.htm linux中有很多命令已经存在了N多年,渐渐一些已被一些新命令所代替,不过由于习惯的原因,很多时候我们并不能一下子适应过来 ,例如ifconfig之于ip命令。该命令是用来替代service和chkconfig两个命令的 — 尽管个人感觉还是后者好用。 为了顺应时间的发展,这里总结下。在目前很多linux的新发行版本里,系统对于daemon的启动管理方法不再采用SystemV形式,而是使用了sytemd的架构来管理daemon的启动。 一、runlevel 到 target的改变 在systemd的管理体系里面,以前的运行级别(runlevel)的概念被新的运行目标(target)所取代。tartge...阅读全文

博文 2019-04-04 17:48:10 www.allocmem.com

archlinux下网易云音乐netease-cloud

个人为网易云音乐重度用户,从ubuntu到arch后,感觉netease-cloud-music仍然在ubuntu中支持更好,毕竟linux下的netease-cloud-music是由网易云音乐和深度deepin联合开发的,ubuntu有官方的deb包,arch的aur中的netease-cloud-music是基于此deb进行打包的,在体验上没有差别,在arch中用起来感觉也还不错,在此记录下使用过程中遇到的问题以及解决方式,本文会不定时更新 1. 启动报错,客户端无法打开 这个问题具体报错记不清了,问题为点击无法打开,命令行运行报错,后来在AUR上看到,在命令行上使用 –no-sandbox 关闭沙箱运行,则可正常使用 2. 这个问题有点坑,在用了一段时间后,发现网易云音乐再次无法打开...阅读全文

博文 2019-04-04 17:54:58 music部分问题

[转]Ubuntu如何正确地切换Intel和Nvidia显卡

如需转载,请注明”来自linux大神博客”,并附上原文链接。 本文固定链接 https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu 本文转载自:https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu 现在的笔记本电脑通常有两块显卡:Intel集成显卡和Nvidia(英伟达)独立显卡。这篇教程介绍Ubuntu如何正确地切换Intel和Nvidia显卡。 你应该使用哪一个显卡? 对于玩游戏或3D制图,图形计算这样对显卡要求高的任务,你需要使用Nvidia独立显卡。如果你既不玩游戏,不绘制3D制图,也不用图形计算,那么集成在Intel处...阅读全文

博文 2019-04-04 17:54:13 www.allocmem.com

ubuntu 16.04 解决有线网卡驱动Exec format error问题

前言 ubuntu 16.04的工作本,有线网卡总是出一些比较坑的问题,比如有时候能用有时候突然又不能用了,有时候开机没问题正常使用,有时候开机完全找不到有线连接,同时,个人使用习惯会经常休眠,而休眠唤醒过后,有线网就肯定不能用了.原本比较少用有线网络,这个工作本的有线网络也没有怎么管它.另外这个本也有好几年了,原本以为是网卡接口接触不良,最近公司的无线网络越来越难用,越来越慢,于是就好好看了下这个有线网卡的问题. 驱动问题 稍做检查,发现是ubuntu在安装的时候,默认装的驱动居然不是最适配的驱动(最后发现这是一个坑,因为我手动也无法装上官网最适合的驱动,估计ubuntu发现自己无法装最适合的,自主切换为另一个有问题的驱动) lspci -v 0e:00.0 Ethernet contro...阅读全文

博文 2019-04-04 17:56:54 www.allocmem.com

[转]iptables详细教程:基础、架构、清空规则、追加规则、应用实例

本文出自 Lesca技术宅,转载时请注明出处及相应链接。 本文永久链接: http://lesca.me/archives/iptables-tutorial-structures-configuratios-examples.html iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙。如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工作原理,你会发现其实它很简单。 首先介绍iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而c...阅读全文

博文 2019-04-04 17:53:47 www.allocmem.com

EOF是什么?

我学习C语言的时候,遇到的一个问题就是EOF。 它是end of file的缩写,表示"文字流"(stream)的结尾。这里的"文字流",可以是文件(file),也可以是标准输入(stdin)。 比如,下面这段代码就表示,如果不是文件结尾,就把文件的内容复制到屏幕上。 int c; while ((c = fgetc(fp)) != EOF) { putchar (c); } 很自然地,我就以为,每个文件的结尾处,有一个叫做EOF的特殊字符,读取到这个字符,操作系统就认为文件结束了。 但是,后来我发现,EOF不是特殊字符,而是一个定义在头文件stdio.h的常量,一般等于-1。 #define EOF (-1) 于是,我就困惑了。 如果EOF是一个特殊字符,那么假定每个文本文件的结尾都有一个...阅读全文

博文 2020-09-26 20:40:42 阮一峰的网络日志

docker使用容器ubuntu安装mongodb

前言: 最近准备使用docker安装一个mongo,可以使用Docker Hub上的镜像,后来就琢磨着自己用dockerfile来构建,后来在使用dockerfile构建过程中,因为TC网络环境,部分资源始终下载不了,后在容器中使用apt-get ppa依旧如此,最后决定使用mongo官网压缩包到容器里面安装,一切顺利。 安装过程: 从docker Hub上拉去ubuntu image docker pull ubuntu:16.04 交互式(-i),进入/bin/bash(-t),目录挂在到容器(-v),宿主机和容器端口映射(-p)创建容器 sudo docker run -i -t -v /home/zhoudazhuang/usr/local/:/home/zhoudazhuang -...阅读全文

博文 2019-04-04 17:50:23 www.allocmem.com

软中断会吃掉你多少CPU?

前面的几篇文章里讨论过了进程上下文切换和系统调用对系统性能的影响,我们今天再来看另外一个CPU吃货,那就是软中断。你在用vmstat或者其他一些工具查看系统CPU消耗的时候,发现有两列是单独列出来的,分别是是hi和si。他们分别是硬中断和软中断。既然vmstat把中断的开销单独列出来了,就说明一个问题,中断吃起CPU来那也是丝毫不含糊。我们没必要啃明白软中断的所有原理,但从一名追求性能的开发者的角度来看,我们有必要了解以下问题:一次软中断的开销到底多大?你的服务器上被软中断吃掉了多少CPU时间?如果你和我一样好奇上面的问题的答案,那请跟我来!软中断的诞生CPU正常情况下都是专心处理用户的进程的,当外部的硬件或软件有消息想要通知CPU,就会通过中断请求(interrupt request,IR...阅读全文

博文 2019-11-11 11:01:36 知乎

使用pandoc xelatex转换md文档为pdf

使用pandoc xelatex转换md文档为pdf Author anteoy@gmail.com | Posted 2018-02-16 23:33:00 环境 系统为ubuntu 16.04,其他linux发行版理论上可参考官方安装文档 过程 安装pandoc sudo apt install pandoc 安装texlive-xetex(解决不能转换中文问题) sudo apt-get install texlive-xetex 查看系统已安装的中文字体 fc-list :lang=zh /usr/share/fonts/truetype/wqy/wqy-microhei.ttc: 文泉驿等宽微米黑,文泉驛等寬微米黑,WenQuanYi Micro Hei Mono:style=Re...阅读全文

博文 2019-04-04 17:56:14 www.allocmem.com

我理解的Linux IO模式及select,poll,epoll

前言 本文是在本人查阅部分资料,并综合了众多博客分析后,于此阐述的个人理解。若有错误,欢迎指正。 基本概念 用户空间和内核空间 操作系统核心-内核负责处理用户程序和硬件之间的驱动交互。内核是在用户程序(进程)和硬件之间一个中枢。目地:专门负责用户进程和硬件之间的交互,用户程序必须使用内核才能和计算机底层硬件进行交流。为了保证内核的安全,于是将内存划分开,比如针对linux 4G的内存空间,将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为内核空间,而将较低的3G字节(从虚拟地址0x00000000到0xBFFFFFFF),供各个进程使用,称为用户空间。 进程切换 内核操作CPU上运行的进程,比如把正在CPU上运行的A进程切换为B进程,让另外一个进程等待...阅读全文

博文 2019-04-04 17:56:41 www.allocmem.com

Linux 时钟与计时器 - iFantasticMe

对 Linux 系统来说,时钟和计时器是两个十分重要的概念。时钟反应的是绝对时间,也可认为是实时时间。计时器反应的则是相对时间,即相对于系统启动后的计时。操作系统内核需要管理运行时间(uptime)和墙上时间(wall time),而内核中大量事务需要由时间驱动。 系统时钟 系统内核需要借助硬件设施来管理时间,实时时钟(RTC)是用来持久存放系统时间的设备,它由主机电池供电,因此即使关闭系统,实时时钟仍然在持续工作。 当系统启动时,系统内核从实时时钟(RTC)读取实时时间,并将该时间转换为自 1970 年 1 月 1 日零时零分零秒以来所经历的秒数(即 Linux 时间秒),并将该秒数保存在系统变量 xtime 中。可以说实时时钟的主要作用就是初始化 xtime 变量。 系统计时器 系统计时...阅读全文

博文 2019-06-16 22:45:53 博客园

理解 Linux 的虚拟内存

前言 前不久组内又有一次我比较期待的分享:”Linux 的虚拟内存”。是某天晚上加班时,我们讨论虚拟内存的概念时,leader 发现几位同事对虚拟内存认识不清后,特意给这位同学挑选的主题(笑)。 我之前了解一些操作系统的概念,主要是毕业后对自己大学四年的荒废比较懊恼,觉得自己有些对不起计算机专业出身,于是在工作之余抽出时间看了哈工大在网易云课堂的操作系统公开课,自己也读了一本讲操作系统比较浅的书 《Linux内核设计与实现》,而且去年自己用 C 写简单的服务器时,也追根究底了解了更多的系统底层知识。多亏了这些知识,让我对应用层的知识更有掌控感,也在上次排查问题时(从应用到内核查接口超时)助了我一臂之力。 前几天另一位同事来问另一个虚拟内存相关的问题,我才发现对于虚拟内存,我的理解还不够深刻,...阅读全文

博文 2019-06-20 16:48:00 枕边书

JVM 不稳定参数 - 286

选项 默认值 描述 -XX:-CITime 默认启用 打印JIT编译器编译耗时。 -XX:ErrorFile=./hs_err_pid.log Java1.6引入 如果JVM crashed,将错误日志输出到指定文件路径。 -XX:-ExtendedDTraceProbes Java6引入,限于solaris,默认关闭 启用dtrace诊断 -XX:HeapDumpPath=./java_pid.hprof 默认是java进程启动位置 堆内存快照的存储文件路径。 什么是堆内存快照?当java进程因OOM或crash被OS强制终止后,会生成一个hprof(Heap PROFling)格式的堆内存快照文件。该文件用于线下调试,诊断,查找问题。文件名一般为java__...阅读全文

博文 2019-11-27 16:11:12 ITeye博客

每天一个linux命令(42):kill命令 - peida

Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令。通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PID,然后使用kill命令来杀掉该进程。kill命令是通过向进程发送指定的信号来结束相应进程的。在默认情况下,采用编号为15的TERM信号。TERM信号将终止所有不能捕获该信号的进程。对于那些可以捕获该信号的进程就要用编号为9的kill信号,强行“杀掉”该进程。 1.命令格式:kill[参数][进程号]2.命令功能:发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终...阅读全文

博文 2019-05-24 13:59:00 博客园

通过/proc/sys/net/ipv4/优化Linux下网络性能

通过/proc/sys/net/ipv4/优化Linux下网络性能 范堡 发布于 2011/11/03 17:58 阅读 5K+ 收藏 7 评论 1 RHEL 开发四年只会写业务代码,分布式高并发都不会还做程序员?->>> 通过/proc/sys/net/ipv4/优化Linux下网络性能 /proc/sys/net/ipv4/优化 1) /proc/sys/net/ipv4/ip_forward 该文件表示是否打开IP转发。 0,禁止 1,转发 缺省设置:0 2) /proc/sys/net/ipv4/ip_default_ttl 该文件表示一个数据报的生存周期(Time To Live),即最多经过多少路由器。 缺省设置:64 增加该值会降低系统性能。 3) /proc/sys/net/...阅读全文

博文 2019-06-12 18:47:35 OSCHINA

linux网络编程backlog和somaxconn | 戒修

前言 学习过的知识只要用的机会不多,多半过段时间就会忘记.如果能反复学习或者记笔记则会记得更牢固一点.以后也可以直接查看复习. 以下内容基于Linux 2.6.18内核 listen方法传入的backlog参数#include int listen(int sockfd, int backlog); 在上面的代码中我们看到listen函数的第二个参数为backlog. 这个参数的意义在不同的Linux内核版本或操作系统定义是不同的. tcp状态转化图 建立Tcp连接需要3次握手, 因此在一个连接的状态变为ESTABLISHED之前,它会有一个过渡的中间状态SYN RECEIVED因此TCP/IP协议栈就有2种方法来实现一个处于listen状态SOCKET连接. ...阅读全文

博文 2019-06-12 18:48:11 沉迷技术的小沙弥

Redis 高负载下的中断优化

背景2017年年初以来,随着Redis产品的用户量越来越大,接入服务越来越多,再加上美团点评Memcache和Redis两套缓存融合,Redis服务端的总体请求量从年初最开始日访问量百亿次级别上涨到高峰时段的万亿次级别,给运维和架构团队都带来了极大的挑战。原本稳定的环境也因为请求量的上涨带来了很多不稳定的因素,其中一直困扰我们的就是网卡丢包问题。起初线上存在部分Redis节点还在使用千兆网卡的老旧服务器,而缓存服务往往需要承载极高的查询量,并要求毫秒级的响应速度,如此一来千兆网卡很快就出现了瓶颈。经过整治,我们将千兆网卡服务器替换为了万兆网卡服务器,本以为可以高枕无忧,但是没想到,在业务高峰时段,机器也竟然出现了丢包问题,而此时网卡带宽使用还远远没有达到瓶颈。定位网络丢包的原因从异常指标入手...阅读全文

博文 2019-11-11 11:22:54 美团技术团队

Load和CPU利用率是如何算出来的

本文内容遵从CC版权协议, 可以随意转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址: http://www.penglixun.com/tech/system/how_to_calc_load_cpu.html 相信很多人都对Linux中top命令里“load average”这一栏困惑过,到底什么是Load,Load代表了什么含义,Load高会有什么后果?“%CPU”这一栏为什么会超过100%,它是如何计算的? 带着这些问题,我们通过一些测试,来探索下其中的不解之处。 首先,我们通过实验来大概确定其计算方式: 测试服务器:4核Xeon处理器 测试软件:MySQL 5.1.40 服务器上除了MySQL没有运行其他任何非系统自带软件。因为MySQL只能单线程运行单条SQL,...阅读全文

博文 2019-08-17 09:49:28 P.Linux Laboratory

修改linux端口范围 ip_local_port_range - solohac

tags: ip_local_port_range 端口范围 sysctl Linux中有限定端口的使用范围,如果我要为我的程序预留某些端口,那么我需要控制这个端口范围, 本文主要描述如何去修改端口范围。 1 2 /proc/sys/net/ipv4/ip_local_port_range的原文解释: The /proc/sys/net/ipv4/ip_local_port_range defines the local port range that is used by TCP and UDP traffic to choose the local port. You will see in the parameters of this file two numbers: The fir...阅读全文

博文 2020-07-30 10:32:26 博客园

Linux下的21个ss命令使用示例详解 – 任我乐

简介: Socket Statistics(ss)命令类似于netstat,它用于显示各种有用的网络套接字信息。 长时间看,已经注意到netstat这个命令程序已经过时了。从而代替netstat的是ss命令。一个全新的ss命令使用起来必定有些陌生,不过ss许多选项与netstat使用的选项类似,但我们还会看到一些差异。 ss命令是Linux CentOS 7中iproute软件包的一部分,默认已经安装。 一般来说,网络套接字是由IP地址,传输协议和端口来定义的。这种组合构成了双向连接的一个方面。例如:一个Web服务器可能正在侦听172.28.204.62:80上的传入TCP连接,这是套接字。不过需要说明的是套接字不是连接本身,而是连接的端点之一。 下面我讲解如何使用ss命令查看各种信息。具体...阅读全文

博文 2019-05-10 11:48:22 renwole.com

Linux流量监控工具 - iftop (最全面的iftop教程)

在类Unix系统中可以使用top查看系统资源、进程、内存占用等信息。查看网络状态可以使用netstat、nmap等工具。若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop。 一、iftop是什么? iftop是类似于top的实时流量监控工具。 官方网站:http://www.ex-parrot.com/~pdw/iftop/ 二、iftop有什么用? iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等,详细的将会在后面的使用参数中说明。 三、安装iftop 安装方法1、编译安装 如果采用编译安装可以到iftop官网下载最新的源码包。 安装前需要已经安装好基本的编译所需的环境,比如make、gcc、autoconf等。安装iftop还需要安装l...阅读全文

博文 2019-12-04 09:59:34 VPS侦探

ssh over socks5:通过socks5 proxy来连接ssh服务器

October 19, 2017 in Tech 最近因为不可描述的原因,我在aws soul的云主机访问不了,ssh、80、ss全部都被禁掉了。 80端口在chrome配置SwitchyOmega就可以了,但ssh不太好办,shell上配置http_proxy对ssh没什么用。 其实ssh自己就支持proxy。 注意这跟在ssh端口转发:远程和本地中介绍过使用ssh作为proxy的方法不同,ssh -D是为了用ssh做proxy,而不是通过proxy来连接ssh服务器。 TL;DR ssh -o ProxyCommand='nc -x 192.0.2.0:1080 %h %p' user@awshost 原理解析 $ man ssh_config ProxyCommand Specifie...阅读全文

博文 2020-02-15 20:19:27 ieevee.com

查看堆外内存_运维_浅蓝浅蓝

Java堆外内存排查小结 06-29 阅读数 1万+ 简介JVM堆外内存难排查但经常会出现问题,这可能是目前最全的JVM堆外内存排查思路。通过本文,你应该了解:pmap命令gdb命令perf命令内存RSS、VSZ的区别javaNMT起因这几天遇到一个比较... 博文 来自: 小姐姐味道 阿里巴巴 Arthas 3.1.0版本:在线教程、内存编译器和强大的自动补全 02-14 阅读数 52 Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。从Arthas上个版本发布,已经过去两个多月了,Arthas 3.1.0版本不仅带来大家投票出来的新LOGO,还带来强大的新功能和更... 博文 来自: weixin_33975951的博客 JVM堆外内存问题排查 07-15 阅读数 75...阅读全文

博文 2020-04-22 18:34:46 CSDN博客

GO语言远程DEBUG_mayongze321的博客

在windows系统下开发Linux环境下的分布式系统组件时,往往因为组件之间的相互依赖调用需要进行服务端调试,delve是一款开源的go语言调试器,常用的go语言IDE,如goland vscode等都是依靠delve来进行调试操作的. 使用goland远程调试 使用goland来进行远程调试最好使用goland的 2019.1版本,原因是在goland 2019.1之前的版本中,因为调试路径映射的问题,必需保证本地和远程代码目录都在GOPATH下的src目录,且文件夹必需同名才可以正常进行远程的断点调试,否则在本地ide开启远程调试后就会显示 error "could not find " delve的issues里详细的说明了这个问题:https://github.com/go-del...阅读全文

博文 2021-01-26 10:47:23 CSDN博客_go 远程调试

MySQL innodb引擎的事务执行过程_数据库技术_Linux公社

通过这篇文章可以了解到下面几个问题 问题1:MySQL innodb引擎的update的流程; 问题2:以及写redo,undo,binlog的顺序,然后刷盘的顺序又是什么呢? 问题3:以及刷新redo和脏数据的相关进程; 总结以上的三个问题,其实就是关于MySQL innodb事务的流程;那么接下来,我将详细总结下一一一:MySQL innodb的事务流程: 1.接下来我就以update为例,讲解下MySQL5.6的innodb的事务流程,总结起来就是: 镇对update he set name='liuwenhe' where id=5; 1)事务开始 2)对id=5这条数据上排他锁,并且给5两边的临近范围加gap锁,防止别的事务insert新数据; 3)将需要修改的数据页PIN到inn...阅读全文

博文 2020-02-21 22:31:22 Linux系统门户网站

远程办公 | 适应时代的工作模式

前防疫形势进入攻坚期,远程办公是在停工不停产、停课不停学新要求下抗击疫情的关键措施,也是防范集中办公可能引发疫情传播的重要手段。根据新型冠状病毒的特性隔离14天需求以及全国范围内复工时间普遍延后的情况,大部分企业均开始推进远程办公。可以预见,远程办公将逐渐成为我国企业、组织、个人乃至政府的一种重要工作模式。 一、远程办公渐成主流 远程办公逐渐在全球各地成为趋势。据人力资源服务公司Kelly Services的全球劳动力指数(KGWI)调研,在全球范围内有超过四分之一的受访者表示,每周至少有部分时间采取远程办公方式。来自美洲、欧洲、中东、非洲和亚太约12.2万名受访者的回应显示,远程办公在亚太等地区渐成趋势。 此外,知名开源软件的工作方式也以远程工作为...阅读全文

当执行kill -9 PID时系统发生了什么

我们时常遇到这样的需求:要杀死一个正在运行运行的进程。这时候可以在终端输入 1 kill -9 (其中9的意思是SIGKILL,完整的linux信号请看这里)之后你再用ps查看进程的时候,会发现那个进程已经被杀掉了。 本文将说明在LINUX系统下,用户在终端输入kill -9 之后,整个系统到底发生了什么,我们将深入到内核代码。一开始我在想这个问题的时候遇到了一些问题,比如进程是怎么知道自己收到信号的?在执行进程工作代码的同时还要不断轮询有没有新到的信号吗?代价也太大了吧?那是不是基于什么异步通知的方案呢?在说明LINUX是怎么做的之前,先解释一点基础的概念。 什么是信号(SIGNAL) 我自己的理解:信号之于进程,就好比中断之于CPU,是一种信息传递的方式。官方的解释...阅读全文

解决类似 /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found 的问题

源码编译升级安装了gcc后,编译程序或运行其它程序时,有时会出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的问题。这是因为升级gcc时,生成的动态库没有替换老版本gcc的动态库导致的,将gcc最新版本的动态库替换系统中老版本的动态库即可解决。 1. 问题原因分析 为了安装最新版本的Node.js(最新版本的Node.js使用了C++ 11中,而C++ 11需要code>gcc 4.8+才能支持),将gcc升级到了当前最新版本v 5.2.0。升级后,成功编译安装了新版本的Node.js(v 4.2.1),但运行时程序时出现了以下错误: node: /usr/lib64/libstdc++.so.6: versi...阅读全文

博文 2020-02-21 21:21:38 IT笔录

Linux 中软链接和硬链接的区别 | Linux 中国

链接(Link)是一种快捷访问机制,它通过一个文件指向原始文件或目录的方式实现快捷访问,同时还记录了原始文件或目录的一些信息。来源:https://linux.cn/article-12270-1.html作者:Magesh Maruthamuthu译者:Hank Chow链接(Link)是一种快捷访问机制,它通过一个文件指向原始文件或目录的方式实现快捷访问,同时还记录了原始文件或目录的一些信息。链接允许多个不同文件对同一个文件进行引用。什么是软链接符号链接(Symbolic Link)(symlink),又称 软链接(Soft Link),是一种特殊的文件,它指向 Linux 系统上的另一个文件或目录。这和 Windows 系统中的快捷方式有点类似,链接文件中记录的只是原始文件的路径,并不...阅读全文

linux sort,uniq,cut,wc命令详解 - ggjucheng

sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出。如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序。 sort语法 [root@www ~]# sort [-fbMnrtuk] [file or stdin] 选项与参数: -f :忽略大小写的差异,例如 A 与 a 视为编码相同; -b :忽略最前面的空格符部分; -M :以月份的名字来排序,例如 JAN, DEC 等等的排序方法; -n :使用『纯数字』进行排序(默认是以文字型态来排序的); -r :反向排序; -u :就是 uniq ,相同的数据中,仅出现一行代表; -t :分隔符,默认是用 [tab] 键来分隔; -k :以那个区间 (field) 来...阅读全文

博文 2021-01-28 20:40:43 博客园

11. iostat 监视I/O子系统 — Linux Tools Quick Tutorial

实例4:查看设备使用率(%util)和响应时间(await)¶ /root$iostat -d -x -k 1 1 Linux 2.6.32-279.el6.x86_64 (colin) 07/16/2014 _x86_64_ (4 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sda 0.02 7.25 0.04 1.90 0.74 35.47 37.15 0.04 19.13 5.58 1.09 dm-0 0.00 0.00 0.04 3.05 0.28 12.18 8.07 0.65 209.01 1.11 0.34 dm-1 0.00 0.00 0.02 5.82 ...阅读全文

博文 2020-06-03 21:11:44 linuxtools-rst.readthedocs.io

如何在 Linux 中使用ss命令监控网络连接

ss命令是用于在Linux系统上显示与网络套接字相关的信息的工具。 该工具显示netstat命令的更多详细信息,该命令用于显示活动的套接字连接。 在本教程中,我们会举例说明ss命令如何用于在Linux中显示各种网络连接信息。 1、列出所有连接 基本的ss命令,不带任何选项,仅列出所有连接,无论它们处于什么状态。 ss 2、列出监听端口和非监听端口 您可以使用-a选项检索侦听端口和非侦听端口的列表,如下所示。 ss -a 3、列出监听套接字 要仅显示侦听套接字,请使用-l标志,如图所示。 ss -l 4、列出所有TCP连接 要显示所有TCP连接,请使用-t选项,如图所示。 ss -t 5、列出所有侦听的TCP连接 要查看所有侦听的TCP套接字连接,请使用-lt组合,如图所示。 ss -lt 6...阅读全文

博文 2020-07-30 10:28:17 linux资讯

linux是怎样分配内存的

我们常说的内存容量,比方说我的笔记本电脑内存就是8GB,其实指的是物理内存。物理内存也称为主存,大多数计算机用的主存都是动态随机访问内存(DRAM)。只有内核才可以直接访问物理内存。 linux内核给每个进程都提供了一个独立的虚拟地址空间,并且这个地址空间是连续的,这样,进程就可以很方便地访问内存,更确切地说是访问虚拟内存。 虚拟地址空间的内部又被分为内核空间和用户空间两部分,不同字长(也就是单个CPU指令可以处理数据的最大长度)的处理器,地址空间的范围也不同。比如最常见的32位和64位系统。如下所示: 32位系统的内核空间占用1G,位于最高处,剩下的3G是用户空间。而64位系统的内核空间和用户空间都是128T,分别占据整个内存空间的最高和最低处,没剩下的中间部分是未定义的。 进程在用户态时...阅读全文

vim 更改备份文件配置_Jchn lau

人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。 本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 --------------------------------------------------------------- 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+700元编程礼包...阅读全文

博文 2020-07-15 22:16:58 CSDN博客_如果隐藏vim的备份文件

Linux中Buffer和Cache的区别 - D_R_Y

1. Cache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器,因为CPU的速度远远高于主内存的速度,CPU从内存中读取数据需等待很长的时间,而 Cache保存着CPU刚用过的数据或循环使用的部分数据,这时从Cache中读取数据会更快,减少了CPU等待的时间,提高了系统的性能。 Cache并不是缓存文件的,而是缓存块的(块是I/O读写最小的单元);Cache一般会用在I/O请求上,如果多个进程要访问某个文件,可以把此文件读入Cache中,这样下一个进程获取CPU控制权并访问此文件直接从Cache读取,提高系统性能。 2. Buffer:缓冲区,用于存储速度不同步的设备或优先级不同的设备之间传输数据;通过buffer可以减少进程间通信需要等待的时间,当存储速度快的设...阅读全文

博文 2020-06-21 12:42:58 博客园

LVM : 简介 - sparkdev

在对磁盘分区的大小进行规划时,往往不能确定这个分区要使用的空间的大小。而使用 fdisk、gdisk 等工具对磁盘分区后,每个分区的大小就固定了。如果分区设置的过大,就白白浪费了磁盘空间;如果分区设置的过小,就会导致空间不够用的情况出现。对于分区过小的问题,可以从新划分磁盘的分区,或者通过软连接的方式将此分区的目录链接到另外一个分区。这样虽然能够临时解决问题,但是给管理带来了麻烦。类似的问题可以通过 LVM 来解决。说明:本文的演示环境为 ubuntu 16.04。 LVM 是什么 LVM 是 Logical Volume Manager 的缩写,中文一般翻译为 "逻辑卷管理",它是 Linux 下对磁盘分区进行管理的一种机制。LVM 是建立在磁盘分区和文件系统之间的一个逻辑层,系统管理员可...阅读全文

博文 2020-11-29 16:46:41 博客园

free命令中的buffer和cached的比较

free命令中的buffer和cached的比较最近在搞监控,突然看到我系统的内存要用完了,赶紧登录服务器看看,~]# dstat -m 16G内存就剩1G了。怎么回事,然后用free命令看了下~]# free -m 原来是cached占用较多,真正用的只有6773M,空闲是9307M。但是还是对cached占用这么多比较担心,所以就查了下,下面文章转载至http://blog.csdn.net/beacherlu/article/details/45871489经常遇到一些刚接触Linux的新手会问内存占用怎么那么多? 在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是linux内存管理的一个优秀特性,在这方面,区别于Windows的内...阅读全文

用户进程缓冲区和内核缓冲区

用户进程缓冲区和内核缓冲区 发表于 2017-02-01 | 分类于 操作系统 | 常常听到有程序员会跟你讨论:“我们在读写文件的时候,系统是有缓存的”。但实际上有一部分人把用户进程缓冲区和系统空间的缓冲区的概念混淆了,包括这两种缓冲区的用法和所要解决的问题,还有其它类似的概念。这篇博客就来区分一下不同的缓冲区概念。 这篇博客指针对类unix平台,windows的我并不熟悉,但我觉得应该差不多。 用户进程与操作系统的关系首先我用一张图来解释“用户进程和操作系统的关系” 这是一个计算机系统运行时的简化模型,我们把所有运行在操作系统上的进程成为用户进程,它们都运行在用户空间(可以看到用户空间有很多进程)。把操作系统运行的空间成为系统空间。 为什么将进程分为用户进程和系统进程,首先你一定听说过内核...阅读全文

博文 2020-06-10 15:28:55 Pulpcode

X,X11,Xorg,XServer,XClient,Xlib_混沌的博客

1.X 就是 X Window System ,1984年由MIT研发,它的设计哲学之一是:提供机制,而非策略。 主要特点:1,Server/Client网络模型。2,通过扩展使它保持”与时俱进”。 Linux内核是没有GUI图形显示的,X Window的目标就是提供GUI的显示。 为啥要命名为X呢,因为英文字母X就在W(indow)后面,戏称为下一版的新视窗之意。XFree86 『 X + Free software + x86硬件 』 @在 Unix Like 上面的圖形使用者介面 (GUI) 被稱為 X 或 X11; @X11 是一個『軟體』而不是一個作業系統; @X11 是利用网络架构来进行图形界面的执行与绘制; @較著名的 X 版本為 X11R6 這一版,目前大部分的 X 都是這一...阅读全文

博文 2020-07-13 10:31:53 CSDN博客_xorg

收藏贴-最全linux命令行快捷键(bash快捷键)_yinn

wzb56的资料库 11-01 4308 vi编辑模式下的自动补全功能:ctrl+n, ctrl+p. 在vi的编辑模式下实现自动补全功能命令:Ctrl+n、Ctrl+p。在编辑模式下, 在vi中输入单词后,文本单词将会被记忆。在vi的编辑模式下通过Ctrl+n,ctrl+p,可以实现单词(给查单词的部分字符)的自动补全和输入提示的功能。 其中: Ctrl+ n 中的n为 next 中n;Ctrl+p中的p为previous 中p。 在命令模式下,Ctrl+n相当于j.....阅读全文

博文 2020-08-08 16:26:26 CSDN博客_linux 命令行快捷键

linux awk命令统计排名单词出现次数

命令太多,记不住,组合起来用一把…..示例文件:1234567891011[root@lovedan test]# cat a.txthellogoodworldhellohellogooddandangoodhelloworld 场景/分析: 统计a.txt出现次数前3名的单词 出现次数用awk统计 排名用sort命令排序 取文件前N行用head命令 awk命令awk是以文件的一行为处理单位的,awk每接收文件的一行,然后执行相应的命令处理文本awk玩法请参考文档12345[root@lovedan test]# awk '{sum[$1]+=1} END {for(k in sum) print k ":" sum[k]}' a.txthello:4dandan:1good:3world...阅读全文

博文 2020-07-31 19:09:29 小仙丹