Linux 以非root用户安装zsh&配置on my zsh
此文章参考以下三篇文章,如有侵权请联系
Linux非root用户安装zsh, 并用oh-my-zsh进行配置
安装zsh
新建zsh文件夹
cd && mkdir zsh && cd zsh
下载最新版本的zsh,需要手动添加版本号
wget https://sourceforge.net/projects/zsh/files/latest/download/zsh-XXX.tar.xz
(xxx换成最新的版本号)
解压下载后文件
xz -d zsh-xxx.tar.xz
tar -xvf zsh-xxx.tar
cd zsh-xxx
(xxx换成最新的版本号)
编译文件
./configure --prefix=$HOME/zsh #表示安装到家目录中的zsh文件夹下,可以自己设置想要的路径
make && make install
若没有遇到问题则跳过此步
问题一:
./configure
出现问题,提示缺少ncurses
configure: error: "No terminal handling library was found on your system.
This is probably a library called 'curses' or 'ncurses'. You may
need to install a package called 'curses-devel' or 'ncurses-devel' on your
system."
See `config.log' for more details
解决:
先配置相应的环境变量,除了第三行可以修改(也可以不修改),其他不用修改
export CXXFLAGS="-fPIC"
export CFLAGS="-fPIC"
export NCURSES_HOME=$HOME/ncurses # 这里表示家目录的ncurses目录,可以自己设置一个想要的路径
export PATH=$NCURSES_HOME/bin:$PATH
export LD_LIBRARY_PATH=$NCURSES_HOME/lib:$LD_LIBRARY_PATH
export CPPFLAGS="-I$NCURSES_HOME/include" LDFLAGS="-L$NCURSES_HOME/lib"
配置好环境变量后,安装
ncurses
, 找到最新版本ncurses下载安装cd ../../ && mkdir ncurses && cd ncurses # 切换到上级目录新建ncurses文件夹 wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-XXX.tar.gz # 下载最新版本ncurses
tar -xzvf ncurses-XXX.tar.gz # 解压
cd ncurses-XXX
# XXX需要改成最新的版本号 ./configure --prefix=$HOME/ncurses --with-shared --without-debug --enable-widec
# 指定路径configure,可以自己修改想要安装的路径,这里我装到了家目录的ncurses下面了
make && make install # 安装
安装完
ncurses
后,回到zsh路径,重新进行第四步就行了。问题二:
make && make install
时出现问题make: *** No targets specified and no makefile found. Stop.
这里的问题应该也是问题一,可能是你没有看到而忽略了。按照问题一的解决办法修改就行了。
安装on my zsh
更新PATH
安装
oh-my-zsh
前先将安装好的zsh
所在的路径添加到系统环境变量PATH
中export PATH=$HOME/zsh/bin:$PATH
# 这里需要修改成你安装的路径
但是我们会发现重新登录之后,默认的shell还是bash,这里我们通过修改
.bash_profile
来自动切换到zsh
,将一下命令加到~/.bash_profile
[ -f $HOME/zsh/bin/zsh ] && exec $HOME/zsh/bin/zsh -l
# 路径还是要修改成你安装的路径
注意zsh与scp不兼容,所以不要把该命令写到
.bashrc
中。因为当我们使用scp命令从本地连接该Linux服务器时,系统会自动执行.bashrc
(而不会执行.bash_profile
),如果.bashrc
中有切换到zsh的命令,则系统的shell会被切换到zsh, 从而与scp产生兼容的问题。.bash_profile
只有当交互式登录shell时(如系统启动、远程登录)才会被读取并执行,而.bashrc
在交互式登录与非交互登录(如使用scp从本地连接到该Linux服务器)时都会被读取且执行。安装onmyzsh
# 方法一:wget方式自动化安装oh my zsh:
$ wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh # 方法二:
$ curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh # 官网上的另外一种写法
$ sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
$ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" # 方法三:手动安装
$ git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
注: 1. 克隆后将templates目录下的zsh配置文件拷贝至~/.zshrc即可
2. .oh-my-zsh一定要在$HOME下( ~ 下)
以上选一种即可
切换到zsh,安装完之后应该是会自动切换到zsh
exec $HOME/zsh/bin/zsh # 你的zsh路径
配置on my zsh
修改默认主题
vim ~/.zshrc
用vim打开文件后,按下
/
键,可以直接搜索ZSH_THEME
的位置,按esc即可退出。将其修改成ZSH_THEME="ys"
zsh插件
语法高亮插件 zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-syntax-highlighting
自动提示插件 zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-autosuggestions
下载之后还需要修改
.zshrc
使其生效,修改plugins
的值,将zsh-syntax-highlighting
zsh-autosuggestions
添加进去plugins=(git zsh-syntax-highlighting zsh-autosuggestions)
然后
source
source ~/.zshrc
Linux 以非root用户安装zsh&配置on my zsh的更多相关文章
- Linux 下非 root 用户安装 theano(配置 GPU)
非 root 用户,安装 Python 第三方的包,尤其像 theano,存在大量的依赖项,存在的主要问题,是安装各个包时的权限问题.所幸,存在这样一个集成工具,叫 anaconda,其已经内置了许多 ...
- Linux系统非root用户安装perl模块
非root权限安装perl 在使用Linux或是unix时,perl是一个非常有用的脚本的语言. 关于perl的模块安装,网上也有很多介绍,一方面可以通过不同套件自带的软件安装工具安装,一方面可以通过 ...
- linux centos7 非root用户安装源码版docker
注意:非root用户必须要有sudo权限 一.安装前的准备 1.查看当前主机是否有docker组 若没有输出结果则新建 再次查看,发现已经有了docker组 2.新增拥有sudo权限的用户(若知道ro ...
- Linux下非root用户安装软件的一般流程:
1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 3. 切换到解压后的目录, ...
- linux 之 非root用户安装mysql5.7.27
下载 下载 mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz 详见linux(CentOS7) 之 MySQL 5.7.30 下载及安装. 配置规划 用户: zhj ...
- 非root用户安装、配置mysql
1. 下载mysql,可能是因为服务器操作系统版本较低(CentOS4.3),安装5.7时提示缺lib,刚好我不需要一定安装新版,所以下载了5.1 Linux - Generic (glibc 2.5 ...
- [转载]Linux下非root用户如何安装软件
[转载]Linux下非root用户如何安装软件 来源:https://tlanyan.me/work-with-linux-without-root-permission/ 这是本人遇到的实际问题,之 ...
- Linux下非root用户如何安装软件
Linux下非root用户如何安装软件 从windows转移到Linux的用户最开始总会有各种不适,因为这种不适最终放弃linux的不在少数.对于这类人只能说可惜,还没有领略到linux的美好就过早放 ...
- 源代码安装-非ROOT用户安装软件的方法
0. 前言 如果你没有sudo权限,则很多程序是无法使用别人编译好的文件安装的. 还有时候,没有对应你的主机配置的安装包,这时候需要我们自己下载最原始的源代码,然后进行编译安装. 这样安装的程序 ...
随机推荐
- NGK以强大的创新能力赋予NGK公链超级实用的特性
公链从大趋势看是一个不断迭代的过程,不管是共识算法.网络架构.开发者协议都在一代一代不断完善跟创新. NGK公链作为公链赛道上的后起之秀,对于主流公链技术的局限性以及下一代公链技术的发展方向都有非常清 ...
- git相关问题
1.git查看远程分支更新到本地 git clone 项目地址,示例如下: git clone https://github.com/zhongyushi-git/vue-test.git 在拉取时, ...
- Flannel和Calico网络插件工作流程对比
Flannel和Calico网络插件对比 Calico简介 Calico是一个纯三层的网络插件,calico的bgp模式类似于flannel的host-gw Calico方便集成 OpenStac ...
- Vue前端项目的搭建流程
1. 安装Vue和Nodejs 2. 创建项目 vue create eduonline-web
- Docker下FastDFS环境搭建
本文使用docker进行搭建. #拉取镜像docker pull delron/fastdfs#创建tracker容器docker create --network=host --name trac ...
- 【图像处理】使用OpenCV+Python进行图像处理入门教程(二)
这篇随笔介绍使用OpenCV进行图像处理的第二章 图像的运算,让我们踏上继续回顾OpenCV进行图像处理的奇妙之旅,不断地总结.回顾,以新的视角快速融入计算机视觉的奥秘世界. 2 图像的运算 复杂的 ...
- 【Azure 云服务】Azure Cloud Service在发布新部署后遇见不能RDP(远程连接)到实例时如何处理?
Azure 云服务是PaaS 的一个示例. 与 Azure 应用服务一样,此技术设计用于支持可缩放.可靠且运营成本低廉的应用程序. 同样,应用服务托管在虚拟机 (VM) 上,Azure 云服务也是如此 ...
- 恭喜!Apache Hudi社区新晋两位Committer
1. 介绍 经过Apache Hudi项目委员会讨论及投票,向WangXiangHu和LiWei 2人发出Committer邀请,2人均已接受邀请并顺利成为Committer,也使得Apache Hu ...
- Python爬虫学习一------HTTP的基本原理
昨天刚买的崔大大的<Python3网络爬虫开发实战>,今天就到了,开心的读完了爬虫基础这一章,现记录下自己的浅薄理解,如有见解不到位之处,望指出. 1.HTTP的基本原理 ①我们经常会在浏 ...
- yolo训练数据集
最近了解了下yolov3的训练数据集部分,总结了以下操作步骤:(基于pytorch框架,请预先装好pytorch的相关组件) 1.下载ImageLabel软件对图片进行兴趣区域标记,每张图片对应一个x ...