Linux下软件安装 非root用户安装软件的一般流程
Linux下的软件安装
Linux下的软件安装,实质上有如下四种,“正规”程度依次递减:
- 使用标准的
yum/apt/yast
包管理程序安装
比如:sudo apt-get install g++/sudo yum install -y gcc-c++
- 使用标准
rpm/deb
或厂商自己的安装包(比如nVidia的显卡驱动用的bin包)安装 - 直接解压软件开发者的tar.gz包
- 自源码编译。有些软件是别人自行写的,给的源代码,也没有提交到仓库,
apt-get/yum/dnf
的安装方式就行不通。这时需要先下载源代码,解压(不能点右键解压,对不少人是个难题),然后按照说明文档make && make install
。不管是从软件仓库,还是手工编译源代码的方式,对有root权限的用户问题都不大(问题常出现在依赖)
非root用户安装
在linux系统下,软件包安装一般需要root权限,因为都是安装到绝对路径,需要往系统文件夹写文件。但是源码编译就看情况了,适合咱这种没有root权限的孩子……下面是Linux下非root用户安装软件的一般流程:
- 获取源代码,常用wget方式直接从url(一般都有官网,去官网看看啦)下载
- 解压源代码安装包,多为gzip过的tar包,一般使用
tar -zxvf xxx.tar.gz
即可 - 切换到解压后的目录,运行
./configure
。./configure –help
可以列出配置项,非root用户最重要的配置项是安装目录prefix,例如./configure –prefix=/path/to/bin
- 编译源代码并复制可执行文件到指定的安装目录:
make && make install
。这两条命令可以分开执行,make
时指定-j
参数并行编译,能显著减少编译耗时(单进程编译GCC需要几个小时,开启并行编译后可缩短到十几分钟) - 使用
export PATH=/path/to/bin:$PATH
更新PATH
变量。命令行窗口运行此命令只对本次会话中有效,可将其写到~/.bashrc
或者~/.bash_profile
中; - 如果安装的是动态链接库,则需要更新动态链接库路径:
export LD_LIBRARY_PATH=/path/to/library:$LD_LIBRARY_PATH
。最好将此命令写在.bashrc文件中,用户下次打开会话时自动执行。
linux中文件权限查看
对任意一个文件(Linux下一切皆文件,包括目录、CPU内存等设备),可以使用ls -lh
查看其权限。命令的每行首列输出类似(d|-)rwxrwxrwx
,这就是文件的权限标志。
- 第一个字母是文件类型,d表示目录,-表示普通文件,s套接字,l链接文件,等等
- 接下来有9列,每3列一组,总共3组,对应文件属主(owner)、属主组员(group)和其他用户(other)对该文件的权限。每组的标志类似rwx。rwx是读(read),写(write)和执行(execute)三种权限的缩写。如果没有某种权限,对应标志位是-
- 例如某个文件foo.txt,只有属主可读写,其权限标志就是:
-rw-------
。注意,非root用户下,文件夹必须要有执行(x)权限才能进入。
root用户是bug,电脑上所有的文件都是它的,权限位设置对其无效。非root用户默认 只对自己的home目录有完全的控制权限,对/tmp目录有读写的权限。/tmp目录如其名,应该只在其中存放临时性文件,该目录在系统重启时会被清空。/var、/usr、/bin、/opt等常见文件夹及子目录,几乎所有用户都能访问其中的文件和内容,执行可执行程序,但只有root用户和属主有写入的权限。
了解完权限,再看普通账户安装软件困难的原因。大部分软件默认安装路径是 /usr/bin 或 /usr/local/bin,安装时需要将可执行文件复制到这些目录下。普通用户没有目录的写权限,于是提示无权限导致安装失败。切换到root模式后,一切又都好使了。根据普通账号的权限,可以得出结论:非root用户,(几乎)只能安装软件到自己的家目录下。
Linux下软件安装 非root用户安装软件的一般流程相关推荐
- 源代码安装-非ROOT用户安装软件的方法
0. 前言 如果你没有sudo权限,则很多程序是无法使用别人编译好的文件安装的. 还有时候,没有对应你的主机配置的安装包,这时候需要我们自己下载最原始的源代码,然后进行编译安装. 这样安装的程序 ...
- linux装软件需要root用户,Linux下非root用户安装软件的一般流程:
1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 3. 切换到解压后的目录, ...
- 手机安装python3.5_zzw_非root用户安装python3.5
目的:不想改变linux 自带的python,只想要用特定的非root用户运行特定版本的python 1.进入非root用户 2.新建一个python3.5的安装目录 [a4_csbdc@bdc816 ...
- Linux 下非 root 用户安装 theano(配置 GPU)
非 root 用户,安装 Python 第三方的包,尤其像 theano,存在大量的依赖项,存在的主要问题,是安装各个包时的权限问题.所幸,存在这样一个集成工具,叫 anaconda,其已经内置了许多 ...
- 非root用户安装软件
下面简要说一下Linux下非root用户安装软件的一般流程: 1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar - ...
- linux上验证cudnn是否安装成功_非root用户安装cuda与cudnn
很多小伙伴都和我抱怨(其实我自己也是)服务器上管理员已安装好显卡驱动或已安装的CUDA版本无法满足自己要求(要么太高要么太低),与自己需要的TensorFlow或者Pytorch版本不兼容,急的头皮发 ...
- linux非root用户安装jdk1.8
# linux非root用户安装jdk1.8 如题,先到 Oracle 官方网站 下载1.8版本的 JDK 压缩包(jdk-8u221-linux-x64.tar.gz)到本地(如D盘的soft目录) ...
- Linux 非root用户安装CUDA,CUDNN
Linux 非root用户安装CUDA,CUDNN 网上很多是root权限下的安装,这篇是利用非root权限进行安装 1.安装显卡驱动(决定CUDA安装的最高版本) 服务器上已安装好了显卡驱动,检查已 ...
- linux 非root tomcat,Linux非root用户安装jdk和tomcat
创建一个用户 sgmm,并在其用户目录里面安装 jdk和tomcat,安装过程如下. 一.增加 sgmm 用户和 sgmm 组 [root@lnx_test ~]# groupadd sgmm [ro ...
最新文章
- ICLR认知科学@AI workshop一览
- 电脑账户头像怎么删掉_电脑用户账户头像在哪里更改?怎么更改?
- python第二天练习题
- 思考一个问题:如何重现主从备份失败的案例
- 快速入门 TensorFlow2 模型部署
- C/C++线程基本函数
- [kubernetes] kubectl proxy 让外部网络访问K8S service的ClusterIP
- java打开文件(Windows exe,应用文件exe,以及其他任何格式的文件)
- oracle 主键列创建自增长,powerdesigner创建oracle 数据库表,设置表主键列为自动增长。 ....
- 算法导论-堆排序习题解
- oracle 远程tns配置
- 复杂网络代码_据报道称“浏览器内核有上千万行代码”,浏览器内核真的很复杂吗?...
- 粒子滤波算法matlab代码,粒子滤波算法原理及Matlab程序(专题).ppt
- 阿里巴巴校招笔试题整理
- 【OpenGrok代码搜索引擎】四、OpenGrok使用指南
- Linux gpio 接口
- 使用EXCEL绘制三维地图(超简单的五分钟绘制地图方法,妈妈再也不用担心我不会画地图啦~)
- 推荐一款广告过滤软件
- CentOS6-yun install wget失败
- bzoj5197:[CERC2017]Gambling Guide
热门文章
- 2022第十三届蓝桥杯大赛软件赛省赛JavaC组真题
- JAVA 调用 DLL 文件 TSCLIB.DLL TSC打印机
- 饥荒联机版与服务器中断,饥荒联机版主机与主机断开 | 手游网游页游攻略大全...
- 关于uni-app的资源热更新!!!
- 望远镜物镜or光学系统分类
- AVI解码器,使用OPenCV可以打开中科院步态数据库的AVI文件
- 智能家居-3.基于esp8266的语音控制系统(软件篇)
- Ubuntu永久修改USB设备操作权限
- ABBYY15免费照片识别文字识别软件
- grub命令编译出错,求解救!