vim 显示行号和高亮搜索
Vim 是 Ubuntu 系统及其他 Linux 系统比较常用的文件编辑工具,但是,默认系统上不会显示文本的行号,如何设置显示行号,可以按照如下的步骤进行,这里以 Ubuntu18.04 为例进行介绍。
拷贝 vim 配置文件到家目录1cp /etc/vim/vimrc ~/.vimrc
修改 vim 配置文件1vim ~/.vimrc
在末尾增加一行
12345" 显示行号set number" 高亮搜索set hlsearch
重新用 vim 打开文件1vim test
即可发现已经显示行号和进行高亮搜索(/searchcontent)
查看Linux系统电脑的cpu和内存
CPU情况和内存情况
cpu配置和内存配置决定了电脑的主要性能
电脑cpu配置和内存配置决定了电脑的主要性能。Windows系统非常简单的通过任务管理器查看,而Linux系统更偏向于利用命令行,下面介绍如何通过命令行有效的查看Linux系统的cpu和内存的情况。
查看cpu情况物理cpu个数1cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
每个物理cpu的核心数1cat /proc/cpuinfo | grep "cpu cores" | uniq
总的逻辑cpu个数1cat /proc/cpuinfo | grep "processor" | wc -l
查看cpu型号1cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
查看内存信息查看内存运行情况1free -h
或者使用如下命令
1cat /proc/meminfo
使用htop查看命令htop不仅能够显示的给出cpu和内存的 ...
利用 GitHub 和 HEXO 随时随地书写博客
当使用 GitHub + HEXO + Markdown 部署个人博客时,总是希望能够在家和在单位都能够随时随地写博客,记录当时的工作或灵感。本篇文章介绍如何完成家庭和单位无缝衔接的去自由书写博客。如何搭建博客请参考我的另一篇文章: 利用 Hexo and Github 搭建个人博客 .
在 GitHub 上新建一个仓库在 GitHub 上创建一个仓库,用以保持和同步博客源文件(包括博客文章、主题等内容)
比如:
1git@github.com:xujinzh/JBlog.git
将本地博客同步到 GitHub如果你当前的博客源文件是在单位,那么,我们将该文件夹同步上传到 GitHub 上。步骤如下:
123456cd JBloggit initgit remote add origin git@github.com:xujinzh/JBlog.gitgit add .git commit -m "release 1.0.0"git push -u origin master
将 GitHub 仓库克隆到本地回到家,将 GitHub 上的仓库克隆到家 ...
kafka集群部署
Kafka最初是由领英(LinkedIn)开发,并随后于2011年初开源,并于2012年10月23日由Apache Incubator孵化出站。它是为处理实时数据提供一个统一、高吞吐、低延迟的分布式发布订阅消息系统。Kafka由Java和Scala编写。根据2014年Quora的帖子,Jay Kreps似乎已经将它以作家弗朗茨·卡夫卡命名。Kreps选择将该系统以一个作家命名是因为,它是“一个用于优化写作的系统”,而且他很喜欢卡夫卡的作品。Kafka架构的主要术语包括Topic、Record和Broker。Topic由Record组成,Record持有不同的信息,而Broker则负责复制消息。Kafka有四个主要API:
生产者API:支持应用程序发布Record流。
消费者API:支持应用程序订阅Topic和处理Record流。
Stream API:将输入流转换为输出流,并产生结果。
Connector API:执行可重用的生产者和消费者API,可将Topic链接到现有应用程序。
下面进行Kafka集群部署工作。这里以3台服务器为例,假设IP分别是1.1.1.0, 1.1. ...
Zookeeper集群部署
Zookeeper 来源于雅虎的一个研究小组,开发其用以提供分布式协调服务。分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。
关于Zookeeper集群部署的一点建议:1、最好将Zookeeper部署在多于一台的集群上,即采用集群部署而不是单台服务器的standalone;2、最好部署在奇数(2N+1)台服务器上,因为Zookeeper通过多数大于少数来保证可用性,当N个节点不能访问时,整个Zookeeper集群仍然是可用的。
下面以3台服务器为例,来部署Zookeeper集群,假设它们的IP地址分别是1.1.1.0, 1.1.1.1, 1.1.1.2. 各步骤以1.1.1.0为默认机器演示。
下载Zookeeper从官网下载Zookeeper ,这里下载3.4.14版本
1wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
...
Cassandra 集群部署
Facebook参照Amazon的NoSQL的Dynamo和Google Big Table开发了Cassandra,它是一种NoSQL数据库。其cqlsh的运行依赖于python 2.x,注意python3目前还不支持。下面记载一下自己在6台服务器上搭建Cassandra集群的过程以及需要注意的点。这里以Ubuntu18.04为例。
假设我们6个节点服务器的ip地址分别为1.1.1.0, 1.1.1.1, 1.1.1.2, 1.1.1.3, 1.1.1.4, 1.1.1.5,并希望把1.1.1.1, 1.1.1.2, 1.1.1.3 作为种子节点(一般不少于2个),其他为正常节点。下面操作默认在1.1.1.0机器上执行,并且默认各机器之间已经可以互相进行SSH免密连接。
下载Cassandra和JDKCassandra的下载地址是Apache Cassandra.
JDK目前推荐jdk8,下载地址是Java SE Development Kit 8 Downloads .
安装Cassandra 和JDK安装Cassandra安装非常简单,将压缩包解压到你喜欢的目录即可
1tar ...
Ubuntu 上设置 Pycharm 快捷启动
在使用 Ubuntu 进行 python 编程时,Pycharm 是一个非常方便的开发工具,但是,首次从官网下载并安装 Pycharm时,必须使用命令行运行 Pycharm。这在下次使用或启动 Pycharm 时非常不方便。最好能够在状态栏上或启动界面上能够保留或搜索到 Pycharm 图标。如何设置呢,按照如下步骤即可实现。
1. 首先在命令行第一次启动 Pycharm假设下载后解压的文件夹放到 /usr/local 文件夹下
12/usr/local/pycharm-community-2019.3.3/bin./pycharm.sh
2. 将 Pycharm 添加到启动栏
在 Pycharm 中菜单栏找到 Tools
在 Tools 中点击 Create Desktop Entry
到此,即实现了启动界面上搜索到 Pycharm 图标。
3. 将 Pycharm 添加到状态栏
从启动界面,搜索 Pycharm 图标,并点击启动
在状态栏点击右键,选择 Add to Favorates
到此,即实现了在状态栏上保留 Pycharm 启动图标
如果喜欢在终端运行Pychar ...
重启Ubuntu后Teamviewer无法连接问题
在使用 teamviewer 连接 Ubuntu18.04 桌面系统时,总是出现重启 Ubuntu 系统后,通过 teamviewer 连接不上的问题。但是,当登录上 Ubuntu 系统后,发现可以用 teamviewer 连接。(After reboot, I cannot connect via Teamviewer. Following manual login, Teamviewer is able to connect at the login screen until the next reboot.)
这是因为,teamviewer 服务需要用户登陆系统后才能打开,因此,可以通过修改配置让 teamviewer 服务自动打开,这样就可以再重启 Ubuntu 系统后,直接用 teamviewer 连接。具体的
1sudo vim /etc/gdm3/custom.conf
把
1WaylandEnable=false
注销掉
然后,重启系统
1sudo reboot
重启 Ubuntu 系统后,就可以使用 teamviewer 进行连接。
Ubuntu卸载cuda
当使用Ubuntu运行深度学习模型时,有时候会出现一些错误,有可能是因为cuda版本不匹配或较旧导致的,所以需要我们卸载Ubuntu系统安装的cuda驱动,重新安装,下面一些代码是以Ubuntu18.04为例来卸载cuda
123sudo apt --purge remove cudasudo apt autoremovesudo apt --purge remove cuda*
有时,还需要进入路径/usr/local,并删除文件夹cuda
1rm -rf /usr/local/cuda*
至此,就完全卸载了cuda。
pip 使用其他源来安装 python 包
d7420555dbd47e034be0c72be203a7e31a7ddec9a6062219e4bcd93a18dbf50e06ef673c4129bd0b3e552a14f5cba46d0ed10d1519985b2a03379e8223a5db53f79c34f5476e9a9017072b40dcda2a58a9a98673e32f1aff7b450e2528fff97965e870f4ebfc99b6b77adc36b7b124689960d0ae599b8ca6e1a267e2ad340fa42aa2189509c1551e74c3b629680a75608db276db47b07c2f1aea07fb2c180aa4e59f60a47281bd545682925870d6daedd04edf13821659782d7097941a6fcafa9ba059d424f71d8f7627edd6927efa69134480c1a986e8a4469b4f82c26d249a51ce95a418d1b9c88bfa072f0f0475c26a3839e8555840718 ...
反向代理工具 frp
当想在家或手机端使用局域网内的高性能服务器时,因为网络的限制而不能直接连接局域网内的服务器,所以可以使用一个具有公网IP的远程服务器来作为中间连接服务器,进行反向代理来达到目的。
首先,假设局域网服务器是 Ubuntu 系统的 PowerEdge,远程服务器是一个 Debian 系统的 AWS 服务器 JX,其次,需要从 Github 下载反向代理软件 frp
在 JX 上,下载 frp,并解压,修改配置文件,最后运行服务123456wget https://github.com/fatedier/frp/releases/download/v0.31.2/frp_0.31.2_linux_amd64.tar.gztar -xzf frp*rm frp*gzmv frp* frpcd frpvim frps.ini
添加如下内容,并运行如下命令
123[common]bind_port = 7000vhost_http_port = 8080
1nohup ./frps -c frps.ini > log &
或者配置开机自启,方法如下
12345678910 ...