8、非root权限下安装perl以及perl模块
转载:http://www.cnblogs.com/nkwy2012/p/6418669.html
转载自http://www.zilhua.com
在本博客中,所有的软件安装都在服务器上,且无root权限。理论上适合所有的用户。
我的安装目录 cd /home/zilhua/software
1、在官方网站下载新版本的源码包:
http://www.perl.org/get.html,版本自己选择,我下载的是perl-5.18.0.tar.gz
2、解压
tar zxvf perl-5.18.0.tar.gz
3.进入解压目录
cd /home/zilhua/software/perl-5.18.0
4.编译
./Configure –help的提示如下:
./Configure -des -Dprefix=/home/zilhua/software/perl-5.18.0 -Dusethreads
make //这个过程会比较久,因为源码文件有那么大。
make install
等待这个命令完成后,基本安装就完成了。
5.更改路径
vim ~/.bashrc
在里面添加:
export PATH=/home/zilhua/software/perl-5.18.0/bin:$PATH
保存,更新路径:source ~/.bashrc
==============================================
这样就能保证你安装不需要root权限,在以后安装模块时,也不需要root权限了。
那么怎么在无root的情况下安装模块了?
方法一:安装上面的方法安装perl之后,安装模块用cpan也不需要root权限了:
perl -MCPAN -e shell
方法二:手动安装模块:
进入模块所在路径,就是你的模块安装到哪里,你就cd进去,然后执行下面的命令…
perl Makefile.PL PREFIX=/home/zilhua/software/perl-5.18.0/lib
make;
make test;
make install
注意PREFI的格式,必须要写成这几个字,前面不能加-或者–,不能小写
2. 设置环境变量,使当前系统的perl程序能够自动找到安装的模块
vim ~/.bashprofile 添加
export PATH=/home/zilhua/software/perl-5.18.0/lib
保存并关闭.bash_profile文件
按照上面的方法更新路径
注意:一般手动安装的模块最后还需要自己重新改一下名字的。
方法3:使用模块 local::lib(不推荐)
先手动安装这个模块,然后再用这个模块安装其他模块。
http://search.cpan.org/~haarg/local-lib-2.000004/lib/local/lib.pm
以下是详细步骤:
tar -xzf local-lib-2.000004.tar.gz
cd local-lib-2.000004.tar.gz
下一步,将local::lib加入至bootstrap当中去。这一步会在用户HOME目录下新建一个perl5的目录,并且指定它为将来安装perl模块的目录。
perl Makefile.PL –bootstrap
而后安装local::lib
make
make test
make install
而后试运行一下perl
perl -MCPAN -e shell
一路选择默认值,然后退出。这一步,perl会将本地的模块搜索目录放入至.bashrc文件尾部。
安装其它perl模块
这个时候我们就可以进行非root权限的perl模块安装了。我们首先需要从先前的terminal窗口中退出来,重开一个terminal窗口,这样就会过一遍.bashrc文件。试着安装一个模块,
perl -MCPAN -eshell
nolock_cpan[1]> install File::ReadBackwards
一切OK。
为cluster扩展library path
可以简单的在qsub文件中运行perl之前加入PERL5LIB的搜索路径
echo $PERL5LIB
然后将传回的值写入qsub当中去
PERL5LIB=/home/path/lib:/usr/another/path/lib; export PERL5LIB
也可在执行命令中加入-I参数
perl -I /home/path/lib -I /usr/another/lib script.pl
或者在pl文件头里加入lib的路径
!/usr/bin/perl
use lib “/home/path/lib”;
use lib “/usr/another/lib”;
use MyCustomModule
8、非root权限下安装perl以及perl模块的更多相关文章
- zzw原创_非root用户下安装nginx
想自己安装nginx,又不相用到root用户. 非root用户下(本文为用户bdctool)来ngnix安装,要依赖pcre库.zlib库等, 1. 下载依赖包:下载地址 pcre(www.pcre. ...
- linux非root用户下安装软件,搭建生产环境
之前的用实验室的服务器,因为某些原因,使用的用户没有root权限.linux的非root用户很多软件无法安装,非常的不方便.我的方法是使用brew来代替系统的包管理工具.brew是最先用在mac上的包 ...
- Android 上实现非root的 Traceroute -- 非Root权限下移植可运行二进制文件 脚本文件
作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 演示样例代码下载 : -- CSDN : h ...
- 【Android 应用开发】Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件
作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 示例代码下载 : -- CSDN : htt ...
- MySQL5.7.20 二进制包无ROOT权限下安装, 滴滴云服务器
01, 下载安装包 => https://dev.mysql.com/downloads/mysql/ 02, 上传到linux系统, 笔者这里使用的 滴滴云服务器 安装在 home/dc2- ...
- Android 上实现非root的 Traceroute -- 非Root权限下移植可执行二进制文件 脚本文件
作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 示例代码下载 : -- CSDN : htt ...
- 在Linux服务器非root权限下搭建TensorFlow框架(Anaconda)
今天终于动手折腾实验室的服务器啦!由于权限原因,只能在自己的路径下安装TensorFlow. 1. 下载安装Anaconda 官网下载地址:https://www.anaconda.com/downl ...
- Samtools在Linux上非root权限的安装
第一次在Linux上不用root权限安装软件,查看了很多博客,并实践安装成功.大致总结了一下samtools的安装过程,仅供大家参考,如有不对的地方,欢迎指正~ samtools安装过程中依赖于lzm ...
- 非root模式下安装mysql php小记
假设你的home目录为/home/work mysql-server 安装 1. 下载mysql.tar.gz wget http://dev.mysql.com/get/Downloads/MySQ ...
随机推荐
- STM32 HAL SPI读取MPU6500的设备ID异常
1.问题背景 近前,使用STM32F4 HAL库的SPI读取MPU6500出现异常. 现象:读取ID失败,返回0,以为硬件焊接问题,各种排查,最后为了示波器测试方便,把读取ID的函数放到While(1 ...
- Google员工自述:在哈佛教书和在Google工作的差别
感谢伯乐在线的投递编者按:2003年到2010年期间,原文作者Matt Welsh 是哈佛大学工程和应用科学学院的计算机科学系教授.2010年加入Google,是一名高级工程师.他当前的工作重点是广域 ...
- Android系统Recovery工作原理之使用update.zip升级过程分析(三)【转】
本文转载自:http://blog.csdn.net/mu0206mu/article/details/7464699 以下的篇幅开始分析我们在上两个篇幅中生成的update.zip包在具体更新中所经 ...
- Bootstrap(一)标题
Bootstrap标题样式进行了以下显著的优化重置: 1.重新设置了margin-top和margin-bottom的值, h1~h3重置后的值都是20px:h4~h6重置后的值都是10px.2.所 ...
- POJ 1679 The Unique MST:次小生成树【倍增】
题目链接:http://poj.org/problem?id=1679 题意: 给你一个图,问你这个图的最小生成树是否唯一. 题解: 求这个图的最小生成树和次小生成树.如果相等,则说明不唯一. 次小生 ...
- Codeforces 897C Nephren gives a riddle:模拟【珂学】
题目链接:http://codeforces.com/contest/897/problem/C 题意: 给你一些字符串: A: [What are you doing at the end of t ...
- 分享知识-快乐自己:SpringBoot集成热部署配置(一)
摘要: 热部署与热加载: ava热部署与Java热加载的联系和区别: 1):Java热部署与热加载的联系: 1.不重启服务器编译/部署项目 2.基于Java的类加载器实现 2):Java热部署与热加载 ...
- list dict set comprehension 列表推导式 (字典推导式,集合推导式)
从一个list生成新的list [ word.upper() for word in 'hellO worlD!' ] 简单的语法,如果不用list comprehension, 则要用更长的代码. ...
- linux命令学习笔记(21):find命令之xargs
xargs是一条Unix和类Unix操作系统的常用命令.它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题 xargs的作用一般等同于大多数Unix shell中的反引号,但更 ...
- BeanUtils介绍及使用
JavaBeans事实上有三层含义.首先,JavaBeans是一种规范,一种在Java(包括JSP)中可重复使用的Java组件的技术规范,也可以说成我们常说的接口.其次,JavaBeans是一个Jav ...