linux运维
pantherCode
弱者看中道德和情感,强者重视利益和力量,我喜欢这个美丽又肮脏的世界!
展开
-
shell基本操作
1 切换sehll版本 : chsh -s /bin/zsh原创 2018-07-28 14:33:22 · 341 阅读 · 0 评论 -
shell脚本编程
shell脚本介绍1.为什么使用Shell脚本批量命令重复、条件等控制2.Shell脚本的基本内容第一行:#!/bin/sh第二行:注释:#第三行:变量第四行:条件判断、循环3.脚本的运行方式chmod +x 脚本./脚本文件名4.示例(hello.sh)#!/bin/bash //第一行#这是一个基本的shell脚本转载 2016-04-22 17:26:57 · 601 阅读 · 0 评论 -
服务器运维
1.尽可能搞清楚问题的前因后果不要一下子就扎到服务器前面,你需要先搞明白对这台服务器有多少已知的情况,还有故障的具体情况。不然你很可能就是在无的放矢。必须搞清楚的问题有:故障的表现是什么?无响应?报错?故障是什么时候发现的?故障是否可重现?有没有出现的规律(比如每小时出现一次)最后一次对整个平台进行更新的内容是什么(代码、服务器等)?故障影响的特定用户群是什么样的(转载 2016-04-22 17:08:31 · 799 阅读 · 0 评论 -
selinux深入理解
1. 简介 SELinux带给Linux的主要价值是:提供了一个灵活的,可配置的MAC机制。 Security-Enhanced Linux (SELinux)由以下两部分组成: 1) Kernel SELinux模块(/kernel/security/selinux) 2) 用户态工具 SELinux是一个安全体系结构,它通过LSM(Linux转载 2016-03-24 10:38:58 · 431 阅读 · 0 评论 -
linux下安装nginx
准备操作:第一步:安装makesudo yum -y install gcc automake autoconf libtool make第二步:安装g++sudo yum install gcc gcc-c++正式安装: 一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。 第一步:选定源码目录 可以是原创 2016-03-12 21:17:40 · 643 阅读 · 1 评论 -
linux下reboot和shutdown关机命令详解
我们在操作Linux v/服务器的时候肯定会有需要重启系统,或者关闭系统等操作。有些用户是直接到VPS主机商家面板上操作的,这样一来比较麻烦,二来有些面板还不易于使用容易导致面板卡死。所以最好的方法就是通过SSH命令操作,老蒋这里分享2个命令,reboot与shutdown都可以用来作为重启VPS/关机重启操作。第一、reboot使用方法:直接在SSH ROOT权限用户下输入r原创 2016-02-26 15:48:47 · 25808 阅读 · 2 评论 -
linux基本运维命令
查看系统的版本和内核$cat /etc/issue //查看linnux版本 $uname -r //查看kernel 版本原创 2016-02-26 15:05:27 · 554 阅读 · 0 评论 -
intellij idea用tomcat进行远程调试
1. 首先在IDEA中check out出来你要调试的工程的代码,然后在IDEA打开这个工程。2. 因为我们用的是Tomcat,所以在IDEA中点击右上角那个“Edit Configurations”按钮,然后在弹出的界面中点击左上角的加号,选择tomcat server->remote 3. 在弹出的的界面中填写服务器的ip和工程的端口。4. 然后点击那个弹出框的St原创 2016-04-02 21:56:37 · 2470 阅读 · 1 评论 -
linux下crontab和run-parts定时任务详解
cron是Linux下的计划任务工具,它是linux的服务器端程序。cron启动后,它会读取它的所有配置文件(全局性配置文件/etc/crontab,以及每个用户的计划任务配置文件)每分钟读一次???,然后cron会根据命令和执行时间来按时来调用度工作任务。Notice that tasks will be started based on the cron's system daemon's转载 2016-03-09 22:47:16 · 8919 阅读 · 1 评论 -
linux中shell变量$#,$@,$0,$1,$2的含义解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出原创 2016-03-09 14:23:58 · 434 阅读 · 0 评论 -
缓存与缓冲的区别与应用
缓冲(buffering)缓冲的字面意思是减缓冲击力。缓冲还有抽象的意义。凡是使某种事物进行减慢或减弱变化过程都可以叫缓冲。 比如让化学反应不那么剧烈的物质就叫缓冲剂。缓冲在各领域应用各有不同: QoS功能主要包括:缓冲、压缩、速率/流量控制、过滤、队列、流量分类、负载均衡、邮件优化、广域文件系统优化、应用性能分析、应用基础设施改动等。 这些都用到了缓冲技术。 缓冲应用到网页上转载 2016-03-08 17:26:59 · 6715 阅读 · 0 评论 -
linux shell文本处理工具集锦
本文将介绍Linux下使用Shell处理文本时最常用的工具:find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk;提供的例子和参数都是最常用和最为实用的;我对shell脚本使用的原则是命令单行书写,尽量不要超过2行;如果有更为复杂的任务需求,还是考虑python吧;find 文件查找转载 2016-04-24 11:46:11 · 555 阅读 · 0 评论 -
73条linux shell命令汇总
1.检查远程端口是否对bash开放:echo >/dev/tcp/8.8.8.8/53 && echo "open"2.让进程转入后台:Ctrl + z3、将进程转到前台:fg4.产生随机的十六进制数,其中n是字符数:openssl rand -hex n5.在当前shell里执行一个文件里的命令:source转载 2016-04-24 12:01:39 · 587 阅读 · 0 评论 -
awk比较两个文件的异同
1.同时在file1和file2中的行 awk '{if(ARGIND==1) {val[$0]}else{if($0 in val) print $0}}' file1 file22.只在file1中有的行.awk '{if(ARGIND==1) {val[$0]}else{if($0 in val) delete val[$0]}}END{for(i in val) prin原创 2016-11-23 18:32:47 · 10486 阅读 · 0 评论 -
anaconda命令笔记
# 创建一个名为python34的环境,指定Python版本是3.4(不用管是3.4.x,conda会为我们自动寻找3.4.x中的最新版本)conda create --name python34 python=3.4 # 安装好后,使用activate激活某个环境activate python34 # for Windowssource activate python34 # for原创 2017-08-08 15:43:27 · 451 阅读 · 0 评论 -
VIRT,RES,SHR,虚拟内存和物理内存
VIRT:1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据,以及malloc、new分配的堆空间和分配的栈空间等;2、假如进程新申请10MB的内存,但实际只使用了1MB,那么它会增长10MB,而不是实际的1MB使用量。3、VIRT = SWAP + RESRES:1、进程当前使用的内存大小,包括使用中的malloc、new分配的堆空间和分配的栈空间,但不包括swap转载 2017-06-02 15:49:33 · 5316 阅读 · 0 评论 -
linux上定位磁盘IO问题
怎样才能快速的定位到并发高是由于磁盘io开销大呢?可以通过三种方式: 第一种:用 top 命令 中的cpu 信息观察 Top可以看到的cpu信息有: Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa原创 2016-12-14 15:26:17 · 1869 阅读 · 0 评论 -
linux下各个符号代表的含义
d:表示是一个目录(directory),事实上在ext2fs中,目录是一个特殊的文件。-:表示这是一个普通的文件。l: 表示这是一个符号链接(symbol link)文件,实际上它指向另一个文件。b、c:分别表示区块(block)设备和字符(character)设备,是特殊类型的文件。s、p:这些文件关系到系统的数据结构和管道(pipe),通常很少见到。原创 2016-10-03 18:06:42 · 6849 阅读 · 0 评论 -
docker入门
基本概念Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。Docker是一个重新定义了程序开发测试、交付和部署过程的开放平台,Docker则可以称为构建一次,到处运行,这就是docker提出的“Build once,Run anywhere” 备注:java提出的是” compile On转载 2016-08-04 16:44:05 · 355 阅读 · 0 评论 -
25个简单shell例子
1.模拟linnux登录shell复制代码 代码如下:#/bin/bashecho -n "login:" read nameecho -n "password:"read passwdif [ $name = "cht" -a $passwd = "abc" ];thenecho "the host and password is right!"els转载 2016-06-06 14:09:11 · 23865 阅读 · 2 评论 -
linux下的删除命令
rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。1.命令格式:rm [选项] 文件… 2.命令功能:删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除转载 2016-06-12 17:44:17 · 861 阅读 · 0 评论 -
linux echo命令的-n、-e两个参数
echo -n 不换行输出$echo -n "123"$echo "456"最终输出 123456而不是123456echo -e处理特殊字符若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:\a 发出警告声;\b 删除前一个字符;\c 最后不加上换行符号;\f 换行但光标仍旧停留在原来的原创 2016-06-06 14:06:47 · 606 阅读 · 0 评论 -
linux命令之cut命令的用法
cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的(1)其语法格式为:cut [-bn] [file] 或 cut [-c] [file] 或 cut [-df] [file]使用说明cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。如果不指定 File原创 2016-02-22 10:45:36 · 461 阅读 · 0 评论 -
linux下shell中的set命令
用set命令可以设置各种shell选项或者列出shell变量.单个选项设置常用的特性.在某些选项之后-o参数将特殊特性打开.在某些选项之后使用+o参数将关闭某些特性,不带任何参数的set命令将显示shell的全部变量.除非遇到非法的选项,否则set总是返回ture. 当shell被调用时,可以列出全部的选项.当前的选项集列在$-中.在option参数被处理后,其他的参数被赋值到位置参数中(原创 2016-02-21 20:45:46 · 2089 阅读 · 0 评论 -
秒杀系统架构设计与分析
秒杀系统架构分析与实战2016-01-18 陶邦仁 Qunar技术沙龙1 秒杀业务分析正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高;转载 2016-01-19 00:05:21 · 3112 阅读 · 0 评论 -
高并发服务端分布式系统设计概要
我大概是从2010年底起开始进入高并发、高性能服务器和分布式这一块领域的研究,到现在也差不多有三年,但其实很多东西仍然是一知半解,我所提到的许许多多概念,也许任何一个我都不能讲的很清楚,还需要继续钻研。但我们平时在工作和学习中,多半也只能从这种一知半解开始,慢慢琢磨,不断改进。好了,下面开始说我们今天要设计的系统。这个系统的目标很明确,针对千万级以上PV的网站,设计一套转载 2016-01-16 23:57:14 · 1821 阅读 · 0 评论 -
linux下终端sudo java提示“command not found”解决办法
linux下用sudo运行java程序时,要注意此时用户目录为/root,而不是/home/yourname之类的。如果没注意到这一点,就可能会遇到这样一种情况:某个java相关的组件把某些配置默认放在/home/yourname,而你用sudo启动的java程序却又去/root下找这个文件,结果没找到; 而如果相关的模块又不报错或者不够高调的报错,你就很难发现错在哪里。 这种情况一原创 2015-12-28 14:20:17 · 11193 阅读 · 0 评论 -
linux下的环境文件设置说明
工作环境设置文件环境设置文件有两种:系统环境设置文件 和 个人环境设置文件 1.系统中的用户工作环境设置文件: 登录环境设置文件:/etc/profile 非登录环境设置文件:/etc/bashrc 2.用户个人设置的环境设置文件: 登录环境设置文件: $HOME/.bash_profile //这个是环境变量设置的地方 非登录环境设置文件原创 2015-08-17 13:01:58 · 665 阅读 · 0 评论 -
vim替换命令
vim中怎么替换字符在命令模式下输入下列命令n,$s/\s/###/g : 从第n行开始替换所有的空格为###在命令模式下输入原创 2015-08-01 20:57:02 · 527 阅读 · 0 评论 -
linux下的文件权限
文件管理方式linux中管理方式都是以文件来管理的,就是俗话说的一切皆文件的思想,文件是文件,目录和外设都是特殊的文件如图所示,查看一个目录下所有的文件命令:每一列的含义如下:第一列:文件类型。第二列:表示文件个数。如果是文件,那么就是1;如果是目录,那么就是该目录中文件的数目。第三列:文件的所有者,即文件的创建者。第四列:文件所有者所在的用户组。在Linux中原创 2015-08-09 11:26:04 · 1027 阅读 · 0 评论 -
vim编辑显示行号
1.在普通模式下直接:set number回车后就可以显示行号了,但重启 vim 后又会恢复默认的设置。2.应久设置在root用户下进行操作; 1、在/etc/vim/下打开找到vimrc文件; 2、sudo vi vimrc 3、在最后加上三行 set nu set autoindent set cindent 4、原创 2015-04-12 14:34:47 · 479 阅读 · 0 评论 -
ubuntu下管理网络的两套方案
Linux系统里面有两套管理网络连接的方案:1 /etc/network/interfaces ( /etc/init.d/networking)2 /etc/NetworkManager这两套方案是冲突的,不能同时共存:第一套方案适应于没有X的环境,如:服务器,或者那些完全不需要改动连接的场合。第二套方案使用有桌面的环境和网络连接情况随时改变。它们原创 2015-04-11 14:56:40 · 580 阅读 · 0 评论 -
iptables linux下的防火墙
iptables:查看防火墙信息:sudo iptables -L -v设置防火墙(客户端 --> 服务器):sudo iptables -A INPUT -s 10.86.106.202 -p tcp --dport 61616 -j ACCEPT设置防火墙(服务器-->客户端)sudo iptables -A OUTPUT -d 10.86.106.202 -p t原创 2015-08-16 18:46:42 · 850 阅读 · 0 评论 -
实用linux命令整理
最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips。将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考。下面介绍的都是一些命令行工具,这些工具在几位回答者的日常工作中都很有用。对于任何不了解的命令,请使用“man “查看,或者使用Google。有些命令需要先用 yum, apt-get install 命令安装。1、基本转载 2016-01-22 00:48:19 · 820 阅读 · 0 评论 -
linux下sed的用法
sed是一种UNIX/LINUX 平台下的轻量级流编辑器,日常一般用于处理文本文件。sed 有许多很好的特性。首先,它相当小巧;其次, sed可以配合强大的 shell 完成许多复杂的功能。在我看来,sed完全可以看成一个脚本解释器,用类似于编程的手段完成许多事情。sed简单示例sed命令的格式是 sed [-options] [command] [stdin] 比如这个例子原创 2016-02-21 20:26:46 · 523 阅读 · 0 评论 -
linux下awk内置函数(split/substr/length/gsub)
一、split 初始化和类型强制 awk的内建函数split允许你把一个字符串分隔为单词并存储在数组中。你可以自己定义域分隔符或者使用现在FS(域分隔符)的值。格式: split (string, array, field separator) split (string, array) -->如果第三个参数没有提供,awk就默认使用当前FS值。原创 2016-03-18 10:55:27 · 8034 阅读 · 0 评论 -
linux下top命令详解
查看多核CPU命令mpstat -P ALL 和 sar -P ALL 说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txt top命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。top进入视图原创 2016-03-04 15:51:41 · 761 阅读 · 0 评论 -
Redis与Reactor模式
最近看了Redis的设计与实现,这本书写的还不错,看完后对Redis的理解有很大的帮助。另外,作者整理了一份Redis源码注释,大家可以clone下来阅读。Redis是开源的缓存数据库,由于其高性能而受到大家的欢迎。同时,它的代码量只有6w多行,相比起mysql动则上百万行的代码量,实现比较简单。Redis中有很多方面都很有意思,在这篇文章中我想探讨的是Redis中的Reactor模式。转载 2016-01-15 00:07:40 · 3419 阅读 · 0 评论 -
本地与服务器之间文件传输
nc命令nc l-an8.wap.cn6 80 > tmp/sms.txtresult.txt(接收)">nc 192.168.25.180 2000 > result.txt(接收)sudo nc -l 2000 < result.txt(发送)开启一个http服务sudo nohup python -m SimpleHTTPServer 20000 > http_log原创 2016-01-13 11:19:49 · 1512 阅读 · 0 评论 -
linux根目录下的proc目录详解
/proc目录:Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时原创 2015-12-26 22:56:53 · 1165 阅读 · 0 评论