


How do I install software and set environment variables with non-root user rights?
Article Directory
Condition
Use root userLinux uses root userLinux compression command, because the permissions are large enough, everything can be done easily
How about the Linux system when non-root users have low permissions? Even yuminstall cannot be used, so how to install software
Install rpm package
1. Take installing the wget tool as an example
First download a wget rpm package on the windows browser
http://www.rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/wget-1.14-18.el7_6.1.x86_64.rpm
Simulate offline installation afterwards
2. Use a non-root user to log in to the linux system
<span class="token comment"># 尝试安装yumdownloader,不行的,需要root权限</span> <span class="token punctuation">[</span>nim01@svngit root<span class="token punctuation">]</span>$ yum <span class="token function">install</span> yumdownloader Loaded plugins: fastestmirror You need to be root to perform this command. <span class="token comment"># 尝试执行wget命令,不行,没有安装</span> <span class="token punctuation">[</span>nim01@svngit root<span class="token punctuation">]</span>$ <span class="token function">wget</span> bash: wget: <span class="token function">command</span> not found <span class="token comment"># 尝试安装wget,不行的,需要root权限</span> <span class="token punctuation">[</span>nim01@svngit root<span class="token punctuation">]</span>$ yum <span class="token function">install</span> <span class="token function">wget</span> Loaded plugins: fastestmirror You need to be root to perform this command.
Upload the wget.***.rpm package we downloaded to the linux system
Last login: Wed Dec2 09:44:05 2020 <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ <span class="token function">pwd</span> /home/nim01 <span class="token comment"># root已经安装lrzsz了,直接上传</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ rz <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ ll total 548 -rw-r--r--. 1 nim01 nim01 560272 Dec22020 wget-1.14-18.el7_6.1.x86_64.rpm
3. Install rpm package
Extracting files
<span class="token comment"># 执行下面指令,从安装包中提取文件</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ rpm2cpio wget-1.14-18.el7_6.1.x86_64.rpm <span class="token operator">|</span> cpio -idvm ./etc/wgetrc ./usr/bin/wget ./usr/share/doc/wget-1.14 ./usr/share/doc/wget-1.14/AUTHORS ./usr/share/doc/wget-1.14/COPYING ./usr/share/doc/wget-1.14/MAILING-LIST ./usr/share/doc/wget-1.14/NEWS ./usr/share/doc/wget-1.14/README ./usr/share/doc/wget-1.14/sample.wgetrc ./usr/share/info/wget.info.gz ./usr/share/locale/be/LC_MESSAGES/wget.mo ./usr/share/locale/bg/LC_MESSAGES/wget.mo ./usr/share/locale/ca/LC_MESSAGES/wget.mo ./usr/share/locale/cs/LC_MESSAGES/wget.mo ./usr/share/locale/da/LC_MESSAGES/wget.mo ./usr/share/locale/de/LC_MESSAGES/wget.mo ./usr/share/locale/el/LC_MESSAGES/wget.mo ./usr/share/locale/en_GB/LC_MESSAGES/wget.mo ./usr/share/locale/eo/LC_MESSAGES/wget.mo ./usr/share/locale/es/LC_MESSAGES/wget.mo ./usr/share/locale/et/LC_MESSAGES/wget.mo ./usr/share/locale/eu/LC_MESSAGES/wget.mo ./usr/share/locale/fi/LC_MESSAGES/wget.mo ./usr/share/locale/fr/LC_MESSAGES/wget.mo ./usr/share/locale/ga/LC_MESSAGES/wget.mo ./usr/share/locale/gl/LC_MESSAGES/wget.mo ./usr/share/locale/he/LC_MESSAGES/wget.mo ./usr/share/locale/hr/LC_MESSAGES/wget.mo ./usr/share/locale/hu/LC_MESSAGES/wget.mo ./usr/share/locale/id/LC_MESSAGES/wget.mo ./usr/share/locale/it/LC_MESSAGES/wget.mo ./usr/share/locale/ja/LC_MESSAGES/wget.mo ./usr/share/locale/lt/LC_MESSAGES/wget.mo ./usr/share/locale/nb/LC_MESSAGES/wget.mo ./usr/share/locale/nl/LC_MESSAGES/wget.mo ./usr/share/locale/pl/LC_MESSAGES/wget.mo ./usr/share/locale/pt/LC_MESSAGES/wget.mo ./usr/share/locale/pt_BR/LC_MESSAGES/wget.mo ./usr/share/locale/ro/LC_MESSAGES/wget.mo ./usr/share/locale/ru/LC_MESSAGES/wget.mo ./usr/share/locale/sk/LC_MESSAGES/wget.mo ./usr/share/locale/sl/LC_MESSAGES/wget.mo ./usr/share/locale/sr/LC_MESSAGES/wget.mo ./usr/share/locale/sv/LC_MESSAGES/wget.mo ./usr/share/locale/tr/LC_MESSAGES/wget.mo ./usr/share/locale/uk/LC_MESSAGES/wget.mo ./usr/share/locale/vi/LC_MESSAGES/wget.mo ./usr/share/locale/zh_CN/LC_MESSAGES/wget.mo ./usr/share/locale/zh_TW/LC_MESSAGES/wget.mo ./usr/share/man/man1/wget.1.gz 4030 blocks
Check
<span class="token comment"># 提取完之后,当前目录多了etc和usr两个目录</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ ll total 548 drwxrwxr-x. 2 nim01 nim01 20 Dec2 10:13 etc drwxrwxr-x. 4 nim01 nim01 30 Dec2 10:13 usr -rw-r--r--. 1 nim01 nim01 560272 Dec22020 wget-1.14-18.el7_6.1.x86_64.rpm
Check
<span class="token comment"># 进入usr/bin目录,可以看到可执行的wget文件</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ <span class="token function">cd</span> usr/ <span class="token punctuation">[</span>nim01@svngit usr<span class="token punctuation">]</span>$ ll total 0 drwxrwxr-x. 2 nim01 nim01 18 Dec2 10:13 bin drwxrwxr-x. 6 nim01 nim01 54 Dec2 10:13 share <span class="token punctuation">[</span>nim01@svngit usr<span class="token punctuation">]</span>$ <span class="token function">cd</span> bin/ <span class="token punctuation">[</span>nim01@svngit bin<span class="token punctuation">]</span>$ ll total 412 -rwxr-xr-x. 1 nim01 nim01 418776 May 162019 <span class="token function">wget</span>
4. Set environment variables
In the home directory, directly edit the .bashrc file and lower the path of the executable program to the system PATH
In this wayLinux uses the root user and can directly execute the wget command
<span class="token comment"># .bashrc</span> <span class="token comment"># Source global definitions</span> <span class="token keyword">if</span> <span class="token punctuation">[</span> -f /etc/bashrc <span class="token punctuation">]</span><span class="token punctuation">;</span> <span class="token keyword">then</span> <span class="token keyword">.</span> /etc/bashrc <span class="token keyword">fi</span> <span class="token comment"># Uncomment the following line if you don't like systemctl's auto-paging feature:</span> <span class="token comment"># export SYSTEMD_PAGER=</span> <span class="token comment"># User specific aliases and functions</span> <span class="token function">export</span> PATH<span class="token operator">=</span><span class="token variable">$PATH</span><span class="token keyword">:</span><span class="token variable">$HOME</span>/usr/bin
After saving and exiting
<span class="token comment"># 执行source,让修改生效</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ <span class="token function">source</span> .bashrc <span class="token comment"># 执行wget,可正常使用</span> <span class="token punctuation">[</span>nim01@svngit ~<span class="token punctuation">]</span>$ <span class="token function">wget</span> wget: missing URL Usage: <span class="token function">wget</span> <span class="token punctuation">[</span>OPTION<span class="token punctuation">]</span><span class="token punctuation">..</span>. <span class="token punctuation">[</span>URL<span class="token punctuation">]</span><span class="token punctuation">..</span>. Try `wget --help' <span class="token keyword">for</span> <span class="token function">more</span> options.
The above is the detailed content of How do I install software and set environment variables with non-root user rights?. For more information, please follow other related articles on the PHP Chinese website!

Artificial Intelligence (AI) is a term that’s been buzzing around for a while now, from self-driving cars to voice assistants like Siri and Alexa, AI is becoming a part of our everyday lives. But what exactly is AI, and why should Linux users care ab


For someone new to Linux, using it can still feel challenging, even with user-friendly distributions like Ubuntu and Mint. While these distributions simplify many tasks, some manual configuration is often required, but fully harnessing the power of L

In the previous article, we introduced the basics of AI and how it fits into the world of Linux. Now, it’s time to dive deeper and set up your Linux system to start building your first AI model. Whether you’re a complete beginner or have some exper

If you’re looking to manage your server with ease, Kloxo is a great option, as it is free and open-source web hosting control panel that allows you to manage your server and websites with a simple, user-friendly interface. In this guide, we’ll walk

If you’ve ever found yourself in a situation where you’re trying to move a bunch of files and folders, only to be stumped by spaces in the folder names, you’re not alone. Spaces in filenames or folder names can quickly become a frustrat

The KDE Plasma desktop is renowned for its sleek design, extensive customization options, and impressive performance. For users who appreciate a polished, modern interface with the flexibility to tweak every detail, Plasma is a dream come true. But w


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Zend Studio 13.0.1
Powerful PHP integrated development environment
