<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[pansaky的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/pansaky</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; pansaky]]></copyright><item><title><![CDATA[Shell脚本实现进度条或时钟输出的小技巧]]></title><link>https://blog.csdn.net/pansaky/article/details/111600056</link><guid>https://blog.csdn.net/pansaky/article/details/111600056</guid><author>pansaky</author><pubDate>Wed, 23 Dec 2020 21:54:26 +0800</pubDate><description><![CDATA[1、实现进度条，每秒输出一格进度


#！/bin/bash
for i in {1..100}
do 
        echo -ne "&gt;" 
        sleep 1
done

#结果如下，每秒增加一个 '&gt;'：
#&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&g]]></description><category></category></item><item><title><![CDATA[linux命令模拟磁盘拔插盘]]></title><link>https://blog.csdn.net/pansaky/article/details/109035192</link><guid>https://blog.csdn.net/pansaky/article/details/109035192</guid><author>pansaky</author><pubDate>Mon, 12 Oct 2020 19:51:53 +0800</pubDate><description><![CDATA[具体命令如下：

1.使用ll /sys/block命令查看磁盘编号，确认需要拔出的磁盘的编号，如 0 0 1 0；


# ll /sys/block

sda -&gt; ../devices/pci0000:17/0000:17:02.0/0000:1c:00.0/host0/target0:2:2/0:2:2:0/block/sda
sdb -&gt; ../devices/pci0000:17/0000:17:02.0/0000:1c:00.0/host0/target0:2:3/0:2:3:0/]]></description><category></category></item><item><title><![CDATA[Flask操作指南，留着练习]]></title><link>https://blog.csdn.net/pansaky/article/details/107975805</link><guid>https://blog.csdn.net/pansaky/article/details/107975805</guid><author>pansaky</author><pubDate>Thu, 13 Aug 2020 11:25:02 +0800</pubDate><description><![CDATA[1. flask介绍

Flask是一个基于Python实现的web开发的'微'框架

中文文档地址

Flask和Django一样，也是一个基于MVC设计模式的Web框架

flask流行的主要原因：




a）有非常齐全的官方文档，上手非常方便

b) 有非常好的拓展机制和第三方的拓展环境，工作中常见的软件都有对应的拓展，自己动手实现拓展也很容易

c) 微型框架的形式给了开发者更大的选择空间


2. 安装flask

2.1虚拟环境搭建




virtualenv --no-site-pac..]]></description><category></category></item><item><title><![CDATA[快照机制COW和ROW原理区别]]></title><link>https://blog.csdn.net/pansaky/article/details/107758547</link><guid>https://blog.csdn.net/pansaky/article/details/107758547</guid><author>pansaky</author><pubDate>Mon, 03 Aug 2020 10:42:52 +0800</pubDate><description><![CDATA[一直对快照的两种模式cow和row区分不开，今天看到一篇文章讲的很清晰。转载过来，希望能给有同样困惑的同学以帮助。

所谓快照，是指某数据集在某一时刻一个完全可用的拷贝。也叫即时拷贝。注意是一个完全可用的。如果是在window环境下，则要结合VSS 机制，把应用程序的buffer,文件系统的buffer,操作系统的buffer全部刷向磁盘后，再做快照。

当前快照有两种实现，分别是COW（Copy on first write） 和ROW(Redirect on first write).

假如有一个卷8]]></description><category></category></item><item><title><![CDATA[Docker架构简介  命令详解]]></title><link>https://blog.csdn.net/pansaky/article/details/107468161</link><guid>https://blog.csdn.net/pansaky/article/details/107468161</guid><author>pansaky</author><pubDate>Mon, 20 Jul 2020 17:29:34 +0800</pubDate><description><![CDATA[1.1、Docker的介绍


			Docker是一个开源的应用容器引擎，使用Go语言开发，基于Linux内核的cgroup，namespace，Union FS等技术，对应用进程进行封装隔离，并且

			独立于宿主机与其他进程，这种运行时封装的状态称为容器。

			Docker早起版本实现是基于LXC，并进一步对其封装，包括文件系统、网络互联、镜像管理等方面，极大简化了容器管理。从0.7版本以后开始去

			除LXC，转为自行研发的libcontainer，从1.11版本开始，进一步演进为使用ru]]></description><category></category></item><item><title><![CDATA[MegaCli 处理raid阵列卡其他阵列配置磁盘混插的问题]]></title><link>https://blog.csdn.net/pansaky/article/details/107084382</link><guid>https://blog.csdn.net/pansaky/article/details/107084382</guid><author>pansaky</author><pubDate>Thu, 02 Jul 2020 15:15:05 +0800</pubDate><description><![CDATA[常在河边走，哪有不湿鞋，之前再工作中经常会有热拔插磁盘的动作，习惯成自然。遇到一般问题都是热拔插，然鹅有一天发生了一些事情导致这篇文章的诞生，也希望对大家有些帮助

事情是这样的 ：自己四台服务器都通过raid卡做了raid5，然后有一位同事说三块盘要写满服务器比较耗时，建议减少磁盘数量。减少磁盘数量，还用说？简单暴力 直接拔盘，当把每台服务器上的两块盘拔下来抱在怀里的时候懵逼了，我的服务器是做了raid5的，当前插回去顺序也忘了，怎么办？插回去？好！当把磁盘都插回去的时候发现他们相会已经不认识了，raid]]></description><category></category></item><item><title><![CDATA[Git常用命令及方法大全]]></title><link>https://blog.csdn.net/pansaky/article/details/106843113</link><guid>https://blog.csdn.net/pansaky/article/details/106843113</guid><author>pansaky</author><pubDate>Thu, 18 Jun 2020 21:00:42 +0800</pubDate><description><![CDATA[Git常用命令及方法大全








下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。


Workspace：工作区
	Index / Stage：暂存区
	Repository：仓库区（或本地仓库）
	Remote：远程仓库






本地分支关联远程


git branch --set-upstream-to=origin/分支名分支名

代码库修改密码后push不上去怎么办？


	// 重新输入密码
	
	
	git config --system --unset c...]]></description><category></category></item><item><title><![CDATA[Python 模块加载原理解析]]></title><link>https://blog.csdn.net/pansaky/article/details/106795205</link><guid>https://blog.csdn.net/pansaky/article/details/106795205</guid><author>pansaky</author><pubDate>Tue, 16 Jun 2020 20:52:46 +0800</pubDate><description><![CDATA[import

在交互环境下，使用不带参数的dir()可以打印当前local命名空间的所有键




&gt;&gt;&gt; locals()
{'__builtins__': &lt;module '__builtin__' (built-in)&gt;, '__name__': '__main__', '__doc__': None, '__package__': None}
&gt;&gt;&gt; dir()
['__builtins__', '__doc__', '__name__', '__.]]></description><category></category></item><item><title><![CDATA[Git私有服务器搭建]]></title><link>https://blog.csdn.net/pansaky/article/details/106099643</link><guid>https://blog.csdn.net/pansaky/article/details/106099643</guid><author>pansaky</author><pubDate>Wed, 13 May 2020 16:14:30 +0800</pubDate><description><![CDATA[一、服务器准备

linux Centos7


具体操作：

1/ 安装Git：
yum -y install git

2/ 创建Git用户及用户组：
groupadd git          
useradd git -g git

3/ 在指定路径创建Git仓库路径 如：/opt/
mkdir /opt/gitrepo
cd /opt/gitrepo
初始化项目分支
git init --bare webp
给项目目录赋予git用户及用户组权限
chown -R git:git  webp/

4]]></description><category></category></item><item><title><![CDATA[Linux服务启动项配置]]></title><link>https://blog.csdn.net/pansaky/article/details/105678390</link><guid>https://blog.csdn.net/pansaky/article/details/105678390</guid><author>pansaky</author><pubDate>Wed, 22 Apr 2020 11:51:07 +0800</pubDate><description><![CDATA[systemd的开机自启动

上面提到的两种方式适用于经典的system V控制系统启动和关闭的情况，但是目前(2018年10月)在大多数发行版上都开始使用了systemd的系统软件控制方式，包括Ubuntu16，centos.systemd系统管理着linux下的进程运行，属于应用程序，不属于linux内核的范畴。

在systemd系统上设置开机自启动的方式也是非常简单的(尽管systemd这...]]></description><category></category></item><item><title><![CDATA[multipath配置含义解析]]></title><link>https://blog.csdn.net/pansaky/article/details/105405540</link><guid>https://blog.csdn.net/pansaky/article/details/105405540</guid><author>pansaky</author><pubDate>Thu, 09 Apr 2020 10:55:38 +0800</pubDate><description><![CDATA[默认情况下，multipath已经支持大部分常见的存储型号（可见multipath.conf.defaults），但不同的multipath版本可能都有些不同。这时，建议参考存储的官方文档，但有时候，同一台机器上如果连接了一个以上的存储时，可能默认规则并不完全适用。这时我们可以给特定的存储定制多路径符合的策略。

　　配置文件的模板默认位于/usr/share/doc/device-mapper-...]]></description><category></category></item><item><title><![CDATA[multipath多路径配置]]></title><link>https://blog.csdn.net/pansaky/article/details/105208598</link><guid>https://blog.csdn.net/pansaky/article/details/105208598</guid><author>pansaky</author><pubDate>Mon, 30 Mar 2020 21:07:58 +0800</pubDate><description><![CDATA[很多存储厂商都有自己的多路径软件，像EMC的powerpath、华为有UltraPath，不过考虑到通用性和兼容性可能还是系统自带的multipath使用的是最多的。multipath除了兼容性比较好，配置也比较简单。

multipath.conf的配置分为：defaults、blacklist、blacklist_exceptions、devices、multipaths几部分。default...]]></description><category></category></item><item><title><![CDATA[Linux 下安装Python虚拟环境Virtualenv]]></title><link>https://blog.csdn.net/pansaky/article/details/105201836</link><guid>https://blog.csdn.net/pansaky/article/details/105201836</guid><author>pansaky</author><pubDate>Mon, 30 Mar 2020 16:14:08 +0800</pubDate><description><![CDATA[什么是Virtualenv


Virtualenv用于创建虚拟的Python环境，一个专属于项目的Python环境，不同的项目可以创建不同的Pthon环境（依赖项和版本等），各个环境之间完全隔离，不需要担心和其他项目的Python环境以及全局的Python环境发生冲突。


安装Virtualenv

一般情况下，系统自带的Python环境是Python2，并且没有安装pip，如需安装Pytho...]]></description><category></category></item><item><title><![CDATA[不同平台更新python pip源至国内镜像（pip高级用法）]]></title><link>https://blog.csdn.net/pansaky/article/details/104907159</link><guid>https://blog.csdn.net/pansaky/article/details/104907159</guid><author>pansaky</author><pubDate>Mon, 16 Mar 2020 20:43:45 +0800</pubDate><description><![CDATA[之前安装了一次flask，使用python默认源，因为资源获取和网络原因各种time out的错误，如：raise ReadTimeoutError(self._pool, None, 'Read timed out.')

发现是网络太慢加载文件超时导致的错误，所以找了些方法，更新pip源至国内，一劳永逸。

国内pip源地址：


1、豆瓣(douban)：http://pypi.douban...]]></description><category></category></item><item><title><![CDATA[python数据结构-列表操作]]></title><link>https://blog.csdn.net/pansaky/article/details/104007054</link><guid>https://blog.csdn.net/pansaky/article/details/104007054</guid><author>pansaky</author><pubDate>Thu, 16 Jan 2020 16:31:22 +0800</pubDate><description><![CDATA[Python数据结构列表的操作方法，没有原理的介绍，其它基本操作查看这里：

https://www.runoob.com/python/python-lists.html


Python列表函数&amp;方法
Python包含以下函数:
lista = [1, 2, 5, 7, 9, 8, 11]
listb = [2, 4, 6, 8, 10, 11]

1.len(list)列表元素个数...]]></description><category></category></item><item><title><![CDATA[Centos7下的zabbix安装与部署]]></title><link>https://blog.csdn.net/pansaky/article/details/103251023</link><guid>https://blog.csdn.net/pansaky/article/details/103251023</guid><author>pansaky</author><pubDate>Tue, 26 Nov 2019 10:07:45 +0800</pubDate><description><![CDATA[1.Zabbix介绍




	zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
	
	
	zabbix能监视各种网络参数，保证服务器系统的安全运营；并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
	
	
	zabbix由2部分构成，zabbix server与可选组件zabbix agent。
	
	
	zabbix server可以...]]></description><category></category></item><item><title><![CDATA[分布式理论(九) —— Paxos共识算法详解]]></title><link>https://blog.csdn.net/pansaky/article/details/103046143</link><guid>https://blog.csdn.net/pansaky/article/details/103046143</guid><author>pansaky</author><pubDate>Wed, 13 Nov 2019 11:40:30 +0800</pubDate><description><![CDATA[在一个分布式系统中，由于节点故障、网络延迟等各种原因，根据CAP理论，我们只能保证一致性（Consistency）、可用性（Availability）、分区容错性（Partition Tolerance）中的两个。

对于一致性要求高的系统，比如银行取款机，就会选择牺牲可用性，故障时拒绝服务。MongoDB、Redis、MapReduce使用这种方案。

对于静态网站、实时性较弱的查询类数据库，会...]]></description><category></category></item><item><title><![CDATA[分布式理论(八)—— Consistent Hash（一致性哈希算法）]]></title><link>https://blog.csdn.net/pansaky/article/details/103046079</link><guid>https://blog.csdn.net/pansaky/article/details/103046079</guid><author>pansaky</author><pubDate>Wed, 13 Nov 2019 11:37:50 +0800</pubDate><description><![CDATA[前言

在分布式系统中，常常需要使用缓存，而且通常是集群，访问缓存和添加缓存都需要一个 hash 算法来寻找到合适的 Cache 节点。但，通常不是用取余hash，而是使用我们今天的主角—— 一致性 hash 算法。

今天楼主就来说说这个一致性 hash 算法。

1. 为什么普通的 hash 算法不行？

普通的 hash 算法通常都是对机器数量进行取余，比如集群环境中有 3 台 redis，...]]></description><category></category></item><item><title><![CDATA[分布式理论(七)—— 一致性协议之 ZAB]]></title><link>https://blog.csdn.net/pansaky/article/details/103046056</link><guid>https://blog.csdn.net/pansaky/article/details/103046056</guid><author>pansaky</author><pubDate>Wed, 13 Nov 2019 11:36:47 +0800</pubDate><description><![CDATA[前言

在前面的文章中，我们说了很多一致性协议，比如 Paxos，Raft，2PC，3PC等等，今天我们再讲一种协议，ZAB 协议，该协议应该是所有一致性协议中生产环境中应用最多的了。为什么呢？因为他是为 Zookeeper 设计的分布式一致性协议！

1. 什么是 ZAB 协议？ ZAB 协议介绍


	ZAB 协议全称：Zookeeper Atomic Broadcast（Zookeeper ...]]></description><category></category></item><item><title><![CDATA[分布式理论(六)—— Raft 算法]]></title><link>https://blog.csdn.net/pansaky/article/details/103046032</link><guid>https://blog.csdn.net/pansaky/article/details/103046032</guid><author>pansaky</author><pubDate>Wed, 13 Nov 2019 11:35:44 +0800</pubDate><description><![CDATA[前言

我们之前讲述了 Paxos 一致性算法，虽然楼主尝试用最简单的算法来阐述，但仍然还是有点绕。楼主最初怀疑自己太笨，后来才直到，该算法的晦涩难懂不是只有我一个人这么认为，而是国际公认！

所以 Paxos 算法在 1990 就发表出来，但却得不到运用。真正的名声大噪还是在兰伯特使用 “更简单” 的方式重写了一篇论文才开始。

这些和今天说的 Raft 有什么关系呢？

答：Raft 也是一个...]]></description><category></category></item></channel></rss>