Linux&Shell&Docker
文章平均质量分 52
donglynn
这个作者很懒,什么都没留下…
展开
-
fastcgi_pass 中TCP 与UNIX Domain Socket问题
Nginx和PHP-FPM的进程间通信有两种方式,一种是TCP,一种是UNIX Domain Socket.其中TCP是IP加端口,可以跨服务器.而UNIX Domain Socket不经过网络,只能用于Nginx跟PHP-FPM都在同一服务器的场景.用哪种取决于你的PHP-FPM配置:方式1:php-fpm.conf: listen = 127.0.0.1:9000nginx.conf:...转载 2019-08-31 08:14:20 · 302 阅读 · 0 评论 -
深入体验bash on windows!在windows上搭建原生的linux开发环境环境
原文地址:http://www.softwen.cn/375.html今年微软Build 2016大会最让开发人员兴奋的消息之一,就是在Windows上可以原生运行linux bash,对开发人员来说,这是一个喜闻乐见的消息。1、安装 你必须安装开发者预览版本,才能使用windows的linux subsystem功能。首先打开你的Windows 10的设置,在"更新和安转载 2016-12-07 10:16:29 · 14175 阅读 · 0 评论 -
PHPStorm 报fatal: Could not read from remote repository的解决
phpstorm默认识别已经配置好的git,之前是单个git源,相安无事。配置了公司和github的源之后,gitbash和TortoiseGit都可以用,但是phpStorm的git却不能连接remote repo。明显phpStorm应该是没有使用外部的git,因此按照以下操作 file -> settings,搜索框输入git在SSH excutable中,选择Native而不是Bui原创 2016-12-05 15:30:04 · 3164 阅读 · 0 评论 -
git commit 失败"Untracked files,Changes not staged for commit" 问题的解决
问题描述$ git commitOn branch masterYour branch is ahead of 'origin/master' by 2 commits. (use "git push" to publish your local commits)Changes not staged for commit: modified: SUMMARY.mdUnt原创 2016-10-17 11:46:22 · 13474 阅读 · 0 评论 -
git版本控制开发流程小结笔记(一)
原文地址:https://my.oschina.net/nyankosama/blog/270546前言说来有幸,这次实习入职的时间点非常巧,时间点正好是team刚把代码从svn迁移到git上,所以就利用这个契机好好学习了一下在git下的项目开发流程,在本篇博客中将会简单介绍git下最基本最常用的开发流程。相关分支首先,我们需要明确一点的是,在git repo下,我们一般将某个转载 2016-10-25 19:09:18 · 343 阅读 · 0 评论 -
Ubuntu 12.10 安装运行 Office 2010
在Ubuntu上安装运行office一直是一个头痛的问题,目前比较好的解决方案一个是永中office,一个是正在开发的wps for linux,还有一个deepin论坛中的wine office2003。这个wine 的office版本比较老,而且功能比较简单。在Ubuntu 12.10上安装运行Microsoft Office 2010,大家肯定猜测到使用wine。顺便一提最近wine转载 2016-06-06 19:28:18 · 5197 阅读 · 0 评论 -
Ubuntu wine / winetricks解决this msxml 6.0 is not supported on the current processor type
1. 原因:Ubuntu 14.04 x64,wine环境默认是64位的,而winitricks默认安装32位的msxml6。没错,开源的代码一般测试做的不大行。2. 解决办法将wine重置为32位版本,切换到当前用户,也不要用sudo。然后移除当前wine配置mv ~/.wine/ ~/.wine.bak将wine重置为32位WINEARCH=win32 winecfg3.其他选择自行下载ms原创 2016-06-06 19:16:14 · 2277 阅读 · 0 评论 -
Ubuntu 重置unity
遇到只能看到桌面,看不到启动器和系统栏的情况,Ctrl+Alt+Texport DISPLAY=:0.0dconf reset -f /org/compiz/apt install unitysetsid unityunity --reset-iconsreboot原创 2016-05-19 13:21:25 · 2647 阅读 · 0 评论 -
TCPdump抓包命令详解
http://starsliao.blog.163.com/blog/static/89048201062333032563/TCPdump抓包命令 tcpdump是一个用于截取网络分组,并输出分组内容的工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具。tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维转载 2016-05-07 18:32:23 · 691 阅读 · 0 评论 -
Ubuntu使用Spawn和expect实现ssh自动登陆
1.安装expect使用以下代码检测expect是否已经安装 ls /usr/bin | grep expect 如果显示为空,则使用以下命令安装sudo apt-get install tcl tk expect2. 制作自动登陆脚本这里把要登陆的机器储存在用户默认目录下,并以机器ip或者机器名为文件名,比如http://www.itnewstop.com 或者 http://www.bu原创 2016-05-30 10:42:46 · 21323 阅读 · 0 评论 -
linux shell 快捷键.
删除ctrl + d 删除光标所在位置上的字符相当于VIM里x或者dlctrl + h 删除光标所在位置前的字符相当于VIM里hx或者dhctrl + k 删除光标后面所有字符相当于VIM里d shift+$ctrl + u 删除光标前面所有字符相当于VIM里d shift+^ctrl + w 删除光标前一个单词相当于VIM里d转载 2016-05-05 14:21:05 · 345 阅读 · 0 评论 -
Installing optional Nginx modules with apt-get nginx_uploadprogress_module
Install dpkg-dev:sudo apt-get install dpkg-devAdd repository:sudo add-apt-repository ppa:nginx/stableEdit /etc/apt/sources.list.d/nginx-stable-lucid.list, add dpkg-src:deb http://ppa转载 2016-05-28 16:59:52 · 608 阅读 · 0 评论 -
apt-get update GPG 错误: 由于没有公钥,无法验证下列签名
执行 $sudo apt-get update出现如下问题:W: GPG 错误: trusty InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 0A40427E209088E7解决方案:从 hkp 服务器 wwwkeys.pgp.net下载并导入缺失的公钥(采用root权限)$ sudo su # gpg --keyse转载 2016-05-26 09:55:01 · 7406 阅读 · 0 评论 -
Ubuntu 16.04 x64安装低版本软件(如openjdk-7/libgif4)的办法
Ubuntu 16.04 x64 apt-get 最低版本的的jdk是openjdk-8,最低版本的libgif是libgif7。要想安装低版本的软件,最佳的办法是添加ubuntu官方的trusty源。比如,使用清华的源,则在source.list里添加上trusty源,然后就可以apt-get安装了。具体例子如下1. vim /etc/apt/source.list2. 在文件最下原创 2016-05-12 10:48:38 · 3653 阅读 · 0 评论 -
windows下git多账号配置详解
it是目前世界上最先进的分布式版本控制系统,然而当我们在同一台电脑上需要用不同的git账号时,怎么才能够在不同的账号间切换呢?工具/原料Git for windowsgithub账号、码云账号、其他Git的账号方法/步骤下载 Git的最新版本,并安装。安装过程可以一直转载 2016-10-26 10:26:12 · 1038 阅读 · 0 评论 -
WSL(Windows Subsystem for Linux, Bash On Windows)使用笔记
ubuntu子系统是从windows应用商店下载的,由于网络等诸多原因可能无法顺利下载。此时解决的思路是,下载离线的安装包trusty-server-cloudimg-amd64-root.tar.gz,然后使用fiddler的autoresponse功能,把离线包作为http下载的返回。具体参见:http://jingyan.baidu.com/article/bea41d4386bbf2b4c5原创 2016-12-07 14:29:42 · 15925 阅读 · 0 评论 -
Rsync使用非ssh默认端口从远程服务器同步文件到本地
rsync -avreH --progress '-e ssh -p Port' root@remoteip:/remotepath/ /localpath/比如rsync -avreH --progress '-e ssh -p 1001' root@222.222.222.222:/data/backup/ ./原创 2017-01-03 19:19:00 · 17267 阅读 · 1 评论 -
发现并解决linux高I/O Wait问题 – 如何发现linux中引起高io等待的进程
linux用很多可用的工具可以用来发现排错,有些很容易使用,有些用法则比较高级查看I/O wait问题不仅需要使用一些高级工具,也需要一些基本工具的高级用法。I/O wait之所以难以排查是因为默认有太多的工具告诉你系统I/O阻塞,但没那么多工具可以帮你缩小范围以便确定出是哪个或哪些进程引起的问题。首先回答是不是I/O引起系统缓慢确定是不是I/O引起系统缓慢,你可以使用很多工具转载 2018-04-22 18:10:40 · 13160 阅读 · 1 评论 -
Linux 统计当前目录下子目录大小并清理
只统计当前目录下子目录大小[root@123 log]# du -sh *显示:[root@123 log]# du -sh *749M 201710032.8G 201710041.4G 20171005467M 20171006499M 20171007111M 2017100898M 20171009此时,即可进入目...原创 2018-04-15 10:17:47 · 3888 阅读 · 0 评论 -
一行shell命令杀死指定进程名称的进程方法
ps -efww|grep -w 'helloworld'|grep -v grep|cut -c 9-15|xargs kill -9说明:管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。 “ps -efww”是查看所有进程的命令。这时检索出的进程将作为下一条命令“grep“的输入,注意要结束其它程序时,请将上面命令中的helloworl转载 2017-10-10 16:19:42 · 4636 阅读 · 0 评论 -
gitlab如何导入已经存在(存在于另外的gitlab)的项目
1. 基础知识。gitlab.local(指的是本地搭建的gitlab)搭建完之后,内置了一套git操作。其中git可执行文件在/opt/gitlab/embedded/bin/git,gitconfig在/var/opt/gitlab/.gitconfig,内置git操作账号为git,ssh key目录为/var/opt/gitlab/.ssh从外源的git把项目导入本地的gitlab.原创 2017-07-03 14:24:18 · 10425 阅读 · 0 评论 -
centos7下gitlab的配置(nginx冲突、端口更改)
网上有很多关于gitlab配置的文章。但是普遍存在的问题是,对于gitlab自带的配置模板和gitlab-ctl reconfigure之后生成的配置文件没有做区分,也没有对gitlab-ctl reconfigure对于配置文件的影响做说明,导致读者不知道修改哪些配置文件可以使配置生效,也不知道gitlab-ctl reconfigure是否会覆盖修改的配置文件。1.安装gitlab.参考官方文原创 2017-07-03 14:11:05 · 24439 阅读 · 4 评论 -
关于iptables添加规则不生效的问题
1.我们要增加的规则是:-A INPUT -p tcp -m state --state NEW -m tcp --dport 82 -j ACCEPT即开放82的tcp端口。2.第一种方法,使用命令增加:首先用命令增加规则:iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 82 -j ACCEPT上面的命令即时生效,但是重启原创 2017-06-21 11:42:05 · 55553 阅读 · 1 评论 -
git初始化操作:从空目录或者已存在的项目
Command line instructions1. Git global setupgit config --global user.name "username"git config --global user.email "email@email.com"2. Create a new repositorygit clone git@git.com:ppp.gitcd pyspider原创 2017-05-23 10:32:53 · 8584 阅读 · 0 评论 -
自建Ngrok服务与使用方法
ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放。可以被使用来进行微信借口的本地调试。在ngrok被墙之后,我们需要通过ngrok开源的源码自行搭建ngrok服务。具体步骤如下:一、在服务器上安装配置go开发环境 Ngrok是由go语言开发的,需要编译golang1.1以上转载 2017-04-18 10:42:03 · 4471 阅读 · 3 评论 -
vmware 共享文件夹hgfs下为空的解决办法
首先保证你安装了vmware,并且安装了kernel相关。yum install kernel kernel-headers kernel-devel -y 使用以下脚本挂载共享文件夹#!/bin/bashvmware-hgfsclient | while read folder; do echo "[i] Mounting ${folder} (/mnt/hgfs/${folder}原创 2017-02-13 11:04:06 · 10919 阅读 · 7 评论 -
linux 流量统计脚本
#!/bin/bash#write by zhumaohai(admin#centos.bz)#author blog: www.centos.bz#显示菜单(单选)display_menu(){local soft=$1local prompt="which ${soft} you'd select: "eval local arr=(\${${soft}_arr[@]})while转载 2017-02-11 23:50:52 · 1894 阅读 · 0 评论 -
关于反爬虫的一些总结
1、爬取过程中的302重定向在爬取某个网站速度过快或者发出的请求过多的时候,网站会向你所在的客户端发送一个链接,需要你去验证图片。我在爬链家和拉钩网的过程中就曾经遇到过:对于302重定向的问题,是由于抓取速度过快引起网络流量异常,服务器识别出是机器发送的请求,于是将请求返回链接定到某一特定链接,大多是验证图片或空链接。在这种时候,既然已经被识别出来了,就使用转载 2017-02-10 16:31:27 · 8600 阅读 · 0 评论 -
git checkout 命令详解
源文地址:http://www.cnblogs.com/hutaoer/archive/2013/05/07/git_checkout.html在日常的git操作中,git checkout——检出,是我们的常用命令。最为常用的两种情形是创建分支和切换分支。(一)基础——千里之行,始于切糕(checkout)先熟悉下常用操作,创建分支和切换分支,也可以称为检出分支。转载 2017-01-13 11:17:37 · 1221 阅读 · 0 评论 -
Ubuntu 16.04安装Linux Deepin特色软件
最新版本的 Linux Deepin 12.12 RC 已经将基础仓库升级到了 Ubuntu Raring,Linux Deepin 开发的特色软件,简单易用,其他发行版本的开发者应该尽量移植。因为 Linux Deepin 使用了 Ubuntu 的基础仓库,所以,Ubuntu 用户安装 Linux Deepin 软件相对容易一些。下面以 Ubuntu 13.04 安装 Linux D转载 2016-05-11 17:46:59 · 18854 阅读 · 3 评论 -
如何在CentOS或RHEL上搭建Squid透明Web代理系统?
【51CTO精选译文】我们在前一篇教程中介绍了使用用户空间实现的应用程序iptables搭建网关的方法,详见http://xmodulo.com/2014/06/internet-connection-sharing-iptables-linux.html。本教程将重点介绍将网关变成透明代理服务器。如果客户端没有意识到其请求是通过代理处理的,该代理就被称为“透明”代理。使用透明代理有几个好转载 2016-03-11 19:13:58 · 539 阅读 · 0 评论 -
只允许用来代理上网的SSH账号的方法
这个方法的副作用就是只有root才能使用sftp!建用户组,创建用户,设置密码: 复制代码代码如下:groupadd SSHTunnel useradd -g SSHTunnel -s /bin/bash -d /home/tunnel TunnelUser1 passwd TunnelUser1 设置sftp权限:转载 2016-03-11 18:55:38 · 1973 阅读 · 0 评论 -
Linux rpm 命令参数使用详解[介绍和应用]
RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。常用命令组合: -ivh:安装显示安装进度--inst转载 2015-11-07 15:09:21 · 348 阅读 · 0 评论 -
GeoIP<libGeoIP.so.1()(64bit)>以及gperftools<libprofiler.so.0()(64bit)>库的安装
1.安装Nginx遇到缺少以下两个库Error: Package: addops-nginx-1.6.3-2.el6.x86_64 (ADDOPS-base) Requires: libGeoIP.so.1()(64bit)Error: Package: addops-nginx-1.6.3-2.el6.x86_64 (ADDOPS-base) Requ原创 2015-11-07 19:46:48 · 4107 阅读 · 0 评论 -
CentOS6 默认源没有tmux的解决办法
以下对6.x版本都适用,7.x应该默认有tmux。————————————————————————————————————————————————————————————————————原文:CentOs6中安装 epel扩展源与安装tmux下面来为大家介绍一下CentOs6中安装 epel扩展源与安装tmux的步骤与方法,希望有需要了解的朋友会有所帮助。转载 2015-08-20 18:11:15 · 3612 阅读 · 0 评论 -
一个使用watch命令实现的多变量组合测试用例实时输出方案
当测试用例有多个变量,每个变量有一组值,我们最终需要得到一系列的用例组合。这时候将所有的用例组合起来会是一件比较头疼的事情。如何使用简单的数据结构实现这些组合在程序中的赋值,从而实时查看结果,这里大神(not me)给出了一个结合shell中watch命令的解决办法,记录如下。1.问题场景如下图所示,价格的最终计算公式需要输入 CPU 内存 磁盘 带宽 数量和时长,每一个变量有一组赋值,我们最终需原创 2015-08-24 14:14:39 · 1523 阅读 · 0 评论 -
Linux命令行用SpiderMonkey执行javascript脚本
现在很多登录密码,提交的javascript加密后的密文,给模拟登录带来一定困难。java6已经支持ScriptEngine,模拟起来比较简单,其它语言可能相对复杂一点。本文介绍用SpiderMonkey来实现在linux命令行下运行脚本文件。下面的脚本在Centos4.7下测试通过:# 安装。完成之后会有/usr/bin/js命令sudo apt-ge转载 2015-06-14 22:58:46 · 3520 阅读 · 0 评论 -
Linux中7个用来浏览网页和下载文件的命令
上一篇文章中,我们提到了rTorrent、wget、cURL、w3m、Elinks等几个有用的工具,很多人回信说还有其它几个类似的工具也值得讨论,所以就有了这篇文章。如果错过了第一部分的讨论,可以通过下面的链接来回顾。这篇文章介绍了Linux下用于浏览网页和下载文件的其它几个命令行工具。1. linksLinks是用C语言写的一个开源web浏览器,支持包括Linux、Windo转载 2015-06-17 16:05:50 · 3225 阅读 · 0 评论 -
Mercurial 、tortoisehg、 hg serve、hg web的区别和介绍
Mercurial 是一个开源的版本管理器,拥有强大的比对合并功能。tortoisehg是一款Mercurial 客户端,Windows下可用。可以局域网内使用。hg serve是Mercurial 一个自带的HTTP服务器实现。tortoisehg自带一个有界面的web server,是其一个实现。缺点是没有任何的访问限制,没有权限认证。hg web是原创 2015-05-16 18:13:31 · 2962 阅读 · 0 评论 -
TortoiseHg 版本管理学习笔记
0.前言 TortoiseHg是分布式的源码管理工具Mercurial的GUI客户端。 mercurial 作为3大主流的分布式源码管理工具,已经被广泛的使用。例如 googlecode.com和codeplex.com都支持mercurial作为源码管理工具。下面结合某个场景,叙述TortoiseHg的具体使用方法。1.假想场景【1】主管在版本库服务器中转载 2015-05-08 16:25:11 · 3348 阅读 · 0 评论