Linux 必知必会

66 阅读3分钟

yum

yum 是 Linux 包管理工,安装/移除 rpm 安装包(也就是说 yum 这个命令它的操作对象是 RPM 包),收集 rmp 的相关信息,检查依赖性,并提示用户解决。

YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,避免了手动安装的麻烦(寻找资源、下载;放到指定目录安装;处理依赖关系并下载依赖关系的包进行安装)。所以用yum安装,实质上是用RPM安装,所以RPM查询信息的指令都可用。

image.png

yum配置

源自参考

yum 的一切配置信息都存储在 /etc/yum.conf 文件中,这是 yum 系统中最重要的内容。

yum.conf 一般分为 main 和 repository 两部分,但是默认情况下只有 main 部分。每一个 yum.conf 都只能有一个main 部分。repository 部分定义了每个源/服务器的具体配置,可以有一到多个,常位于 /etc/yum.repo.d 目录下的各文件中。

使用 cat /etc/yum.conf 查看该文件的内容。如下:

image.png

yum 安装

yum install [包名]
yum install [包名] -b current -y

# 当然也可以
yum install -y -b current [包名]

查看安装路径

使用“rpm -ql  包名”来查看具体的安装路径

image.png

Linux 环境变量

源自参考

环境变量是特定环境中的变量。例如,操作系统中的每个用户都有自己的环境,一个管理员用户拥有与其他用户不同的环境。

Linux 中环境变量的一些例子:

  • USER - 这指的是当前登录的用户。
  • HOME - 这显示了当前用户的主目录。
  • SHELL - 这存储了当前用户的 shell 路径,如 bash 或 zsh。
  • LANG - 这个变量指向当前的语言 /locales 设置。
  • MAIL - 这显示了当前用户的邮件存储的位置

这些环境变量根据当前的用户会话而变化。

查看环境变量 ~ env

root@Zaira:~# env
SHELL=/bin/bash
PWD=/root
LOGNAME=root
HOME=/root
LANG=C.UTF-8
LESSOPEN=| /usr/bin/lesspipe %s
USER=root
SHLVL=1
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
MAIL=/var/mail/root
_=/usr/bin/env

打印环境变量 ~ printenv | echo

root@Zaira:~# printenv SHELL
/bin/bash
root@Zaira:~# echo $SHELL
/bin/bash

设置环境变量

临时环境变量

使用这种方法定义的变量只存储在当前会话中。在下一个会话中不能使用它们。

# 定义变量
root@Zaira:~# export JAVA_HOME=/usr/bin/java
# 验证
root@Zaira:~# env
SHELL=/bin/bash
JAVA_HOME=/usr/bin/java
PWD=/root
LOGNAME=root
HOME=/root
LANG=C.UTF-8
LESSCLOSE=/usr/bin/lesspipe %s %s
TERM=xterm-256color
global22=yolo
LESSOPEN=| /usr/bin/lesspipe %s
USER=root
SHLVL=1
XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
MAIL=/var/mail/root
_=/usr/bin/env
# 打印
root@Zaira:~# echo $JAVA_HOME
/usr/bin/java

持久化环境变量

一、.bashrc 是一个脚本文件,每当用户登录的时候就会执行。它是隐藏的,默认位于用户的主目录中。

vi ~/.bashrc

二、在 .bashrc 文件的末尾添加环境变量的定义

export JAVA_HOME=usr/bin/java

三、使这些变化生效,使用 source 命令更新 .bashrc 文件

source ~/.bashrc

四、打开一个新的会话来验证

root@Zaira:~# echo $JAVA_HOME
/usr/bin/java

持久化全环境全局变量

一、我以用户 Zaira 的身份登录。我正在创建一个全局变量 GLOBAL_VARIABLE,像这样:

zaira@Zaira:~$ export GLOBAL_VARIABLE="This is a global variable"

二、设置全系统的环境变量:

/etc/environment 
# 这个文件用来设置全系统的环境变量

image.png

三、使变量生效

source /etc/environment

四、设置环境变量

/etc/profile
# 只要登录了 bash shell,就会读取该文件中设置的变量。编辑这个文件并使用 export 命令

image.png

五、验证环境变量

# 我将用户切换为根用户,并验证我是否可以访问变量 GLOBAL_VARIABLE

root@Zaira:~# echo $GLOBAL_VARIABLE
This is a global variable

能够通过 root 用户访问由用户 Zaira 定义的全局变量。这一点也适用于其他用户。定义全局环境变量。

软链接设置

ln -help 查看详细

一、创建软链接

ln -s [源文件/目录] [目标文件/目录]

[目标文件/目录] 引向 [源文件/目录]。

image.png

二、删除软链接

rm –rf 软链接名称(请注意不要在后面加”/”,rm –rf 后面加不加”/” 的区别)

rm –rf [源文件/目录]

三、修改软链接

ln -snf [新的源文件/目录] [目标文件/目录]

Linux 命令大全

Linux 命令大全(手册)