一曲广陵散

一曲广陵散 查看完整档案

南京编辑南京工业大学  |  数学与应用数学 编辑斗象科技  |  python开发 编辑 thewind.xin 编辑
编辑

柴米油盐酱醋茶
琴棋书画诗酒花

个人动态

一曲广陵散 赞了回答 · 2020-11-09

解决go语言中的input.Scan() 如何停止输入?

EOF
终端情况下请使用 ctrl+d
文件的是直接
cat input | go run main.go
main.go
就是你这个程序

关注 7 回答 5

一曲广陵散 发布了文章 · 2020-06-04

http

今天我要与你分享的话题是“海纳百川:HTTP 的实体数据”。这一讲是“进阶篇”的第一讲,从今天开始,我会用连续的 8 讲的篇幅来详细解析 HTTP 协议里的各种头字段,包括定义、功能、使用方式、注意事项等等。学完了这些课程,你就可以完全掌握 HTTP 协议。在前面的“基础篇”里我们了解了 HTTP 报文的结构,知道一个 HTTP 报文是由“header+body”组成的。但那时我们主要研究的是 header,没有涉及到 body。所以,“进阶篇”的第一讲就从 HTTP 的 body 谈起。数据类型与编码在 TCP/IP 协议栈里,传输数据基本上都是“header+body”的格式。但 TCP、UDP 因为是传输层的协议,它们不会关

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-04-20

mac 环境配置

一、参考

二、安装brew

2.1 安装

2.2 更新源

三、配置git

3.1 配置ssh key

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-04-16

pycharm使用技巧

一、参考

pycharm中的windows回车符问题

Intellij adding "^M" newline characters

二、正文

2.1 换行符与回车符

  1. 进入项目根目录
  2. 配置换行符格式

image.png

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-03-31

elasticsearch-2.0源码阅读

一、参考

How can I setup and run/debug ElasticSearch in IntelliJ IDEA

二、环境搭建

2.1 安装maven

elasticsearch2.0使用maven管理,所以需要先安装maven,
image.png

2.2 下载源码

cd /e/java_projects/es/

git clone https://github.com/elastic/elasticsearch.git

mv elasticsearch es2.0

cd es2.0

git checkout -b v2.0 origin/2.0

image.png

2.3 编译源码

mvn clean package -DskipTests

image.png

2.4 更新配置文件

cp -r ./distribution/src/main/resources/config/ ./core/

2.5 IDEA运行

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 收藏了文章 · 2020-03-13

Windows 7 下硬盘安装 CentOS 7

背景

起因是希望装 Jenkins 做持续集成,遂征用了一台同事淘汰的笔记本电脑来作为一个临时服务器。笔记本电脑所装系统是 Windows,为了最大化电脑性能以及稳定,希望更换成 Linux 系统。加上自己对 CentOS 相对比较熟悉,选择了最新版的 CentOS 7 进行安装。

相关软件版本

笔记本电脑系统:Windows 7 Ultimate
Windows 文件系统:NTFS
待安装 Linux 系统: CentOS 7.6.1810

难点介绍

由于 Linux 的文件系统与 Windows 存在差异:

  1. Linux 系统能识别 Windows 下 FAT32 文件系统,不能识别 NTFS 文件系统,所以在 Linux 安装时,选择任何 sda 都不行,FAT32可以
  2. FAT32 文件系统单个文件不能超过 4G
  3. CentOS 7.6文件大于 4G (最小安装镜像也许不存在这个问题,笔者未尝试)

所以:在 Win7 下使用 FAT32 和 NTFS 系统存放安装 ISO 都不可行,则要想办法用工具分出一块 Linux 文件系统,如:ext3,不受 4G 的限制

准备工作

需要准备的软件

  • CentOS 7: 64位安装文件,这个是必须有的。
  • deamon tools:虚拟光驱,用来挂载 CentOS iso 镜像安装文件
  • EasyBCD:设置引导启动用
  • EaseUS Partition Master 10.1:用于格式化成ext3
  • Ext2Fsd:在win7下挂载linux文件系统ext2、ext3等
  • WinGrub:只是为了看一下分区编号,其实很鸡肋,没有也可以,需要一个个地实验

分配空间

  • 打开磁盘管理器:Win徽标键+R键调出运行框,输入指令diskmgmt.msc回车调出磁盘管理器。
  • 在磁盘的最后一个主分区上点击右键,选择“删除卷”或“压缩卷”,空间建议至少 100G 。(注意:如果是删除卷,需要备份此分区内的文件信息)

clipboard.png

  • 然后磁盘上应该会显示有一部分“未分配”状态的空间

clipboard.png

  • 打开 EaseUS Partition Master 10.1,在磁盘未分配空间上右键->创建分区,创建一个 10GB 的分区作为Linux镜像的安装盘,文件系统需要选择 EXT3

clipboard.png

挂载EXT3,并拷贝安装脚本及安装文件

  • 安装 Ext2Fsd 软件,安装过程中记得勾选以下选项

clipboard.png

  • 使用 Ext2Fsd 挂载刚刚分配的 10GB 的 EXT3 格式的磁盘分区
  • 使用 deamon tools 挂载 CentOS 7 的 iso 文件,打开虚拟光驱,复制根目录的 images 和 isolinux 两个文件夹到 10GB 的 EXT3 磁盘分区中
  • 复制 CentOS 7 的 iso 到 10GB 的 EXT3 磁盘分区中(注意:是以.iso为后缀文件,而不是虚拟光驱中的文件)

查看分区编号,并添加启动脚本

  • 安装 WinGrub,在Tool->Partition List打开的页面中找到 10GB 的 EXT3 磁盘分区的编号,例如:(hd0,5)(注意:由于软件反应速度慢,打开 Partition List 可能需要一段时间响应)

clipboard.png

  • 安装 EasyBCD,打开后找到 Add New Entry,点 NeoGrub 标签。点 Install 然后点 Configure

clipboard.png

  • 在弹出的文档中加入下面内容(注意,以下内容中的{0}{1}为占位符,取决你你自己的系统,不要直接复制):
title CentOS 7
root {0}
kernel {0}/isolinux/vmlinuz linux repo=hd:/dev/{1}:/
initrd {0}/isolinux/initrd.img
  • 替换{0}为你的 10GB 的 EXT3 磁盘分区编号,如:(hd0,5)
  • 替换{1}为你的linux repo地址,如:sda6。这里sda后面的数字是比你的分区编号大 1 的数字(说明在 linux 里磁盘编号是从 1 开始,而 windows 从 0 开始,故两者相差 1)
  • 完整的文本内容见下面
title CentOS 7
root (hd0,5)
kernel (hd0,5)/isolinux/vmlinuz linux repo=hd:/dev/sda6:/
initrd (hd0,5)/isolinux/initrd.img
  • 补充:linux repo=hd:/dev/sda7:/代表你的linux系统位置,如果sda不行,需要替换成sdb试下。具体原理笔者不太清楚,如有懂的希望在评论区中回复下。只有CentOS 7需要。

开始安装

完成以上步骤即可以重启系统开始安装……
网上关于 CentOS 7 的安装文档很多,不在本文研究范围内,贴出链接方便下大家:
CentOS 7系统安装配置图解教程

参考资料

Win7下硬盘安装CentOS7!
Windows 7下硬盘安装CentOS 6.5

查看原文

一曲广陵散 发布了文章 · 2020-03-12

ambot问题

一、一些参数应该只是在开发场景使用?

1.1 --check

'--check', action='store_true', help='检查指定的 action 脚本是否正确'

1.2 --save-svg

'-G', '--save-svg', action='store_true', help='生成 action scripts 的依赖关系的 svg 文件并尝试在浏览器打开'

1.3 --save-param

'-i', '--save-param', action='store_true', help='交互问询并保存参数退出'

二、几种安装模式的区别?

2.1 --collect

'--collect', action='store_true', help='运行离线收集模式'

2.2 --online

'--online', action='store_true', help='联网运行模式, 将联网安装 yum / pip package [TODO]'

2.3 --dry-run

'--dry-run', action='store_true', help='演习模式, 模拟执行每一个步骤, 不实际连接服务器执行'

三、并发安装过程

3.1 步骤为recovery, 行为是downloading

3.2 步骤为target,行为是prepare

3.2.1 对于每台服务器,安装应用列表

_install_rsync() # 文件同步工具

_install_ssh_key() # 集群间通信

_install_repl_release()  # centos yum本地源构建

_install_pip_and_wheel() # python本地模块库

_install_fabric()  # 安装paramiko,fabric,主要是基于ssh的集群间通信、终端运行

_install_global_files() # 安装ambot服务依赖的脚本

3.3 步骤为具体组件名称,行为是具体的action

例如:

env.current_step_name, env.current_action_name
(u'ntp', u'install')

四、状态如何同步?

五、fabric使用

5.1 upload_to_remote

作用

是同步本地文件到远端服务器,可以选择两种同步方式

六、后续问题

查看 git submodule
查看 python代码加密 PEP 302 -- New Import Hooks

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-03-12

python中的装饰器

一、参考

二、上下文装饰器

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-03-11

python中的os模块

一、参考

二、模块学习

2.1 文件路径

os.path.expanduser

os.path.splitext

os.path.basename

查看原文

赞 0 收藏 0 评论 0

一曲广陵散 发布了文章 · 2020-03-11

Python中sys模块

一、参考

Difference between exit(0) and exit(1) in Python

二、模块学习

三、具体问题

3.1 sys.exit

执行系统退出,退出python执行程序,非零的退出通常视为代码异常退出,零错误代码退出表示程序成功正常退出,通常退出时候的错误代码,对于其他程序(shell进程、调用程序)了解该程序发生了什么非常重要

import sys


sys.exit(0)
查看原文

赞 0 收藏 0 评论 0

认证与成就

  • 获得 7 次点赞
  • 获得 4 枚徽章 获得 0 枚金徽章, 获得 0 枚银徽章, 获得 4 枚铜徽章

擅长技能
编辑

开源项目 & 著作
编辑

注册于 2016-04-12
个人主页被 1.3k 人浏览