天天看点

linux安装软件

晨考

1.文件中的三种时间属性,每一种时间属性在什么情况下会改变
	atime:访问时间
	mtime:修改时间
	ctime:修改属性时间

2.权限的类型:
	可读:r		可写:w		可执行:x

3.linux中的权限有三个权限位,分别对应的是
	属主		属组		其他人

4.权限归属有几种,分别是什么
	u:属主		g:属组		o:其他人

5.查看系统名称,内核版本以及硬件位数
	uname -a		uname -r		uname -m

6.设置用户密码的两种方式
	passwd 用户名		echo 密码 | passwd --stdin 用户名

7.产看当前登录系统用户
	who			whoami

           

昨日问题

yum私有仓库
nginx的问题
           

概要

1.linux中安装软件的三种方式
2.yum私有仓库与仓库共享
3.selinux和firewalld
4.解决系统乱码
           

详细

1.linux中安装软件的三种方式

1.三种方式:
	rpm安装
	yum安装
	源代码编译安装

2.区别:
	rpm安装:类似于win中的安装包,下载下来之后直接安装,缺点不能自己解决依赖问题(依赖问题:安装的程序运行时需要的比如环境或者其他)

	yum安装:基于rpm安装,解决了依赖性的问题

	源代码安装:通过编译源代码安装(编译源代码得到类似rpm的一个软件包)
		优点:可以自定制软件包
		缺点:比较复杂

           

1.1rpm安装

1.rpm下载相关命令及参数:
	rpm -ivh [软件包名称]		:安装
	rpm -e [软件包名称]		:卸载
	rpm Uvh [软件包名称]		:升级

2.下载软件包
	1.可以到国内各大源镜像站下载如:
		华为源:https://mirrors.huaweicloud.com/home
		阿里源:https://developer.aliyun.com/mirror/
		等等。。。
	2.下载之后找到win电脑中的文件所在位置,直接拖拽到xshell里即可
		注:如果拖拽不进来可能没有lrzsz命令。可以先下载此命令在拖拽安装包
			yum install lrzsz -y

3.rpm查询软件包相关命令:
	查询软件包配置文件
		rpm -qc [软件包]
	查询是否安装某软件包
		rpm -q [软件包]
	查询所有的安装包
		rpm -aq 
	查询软件包的安装路径
		rpm -ql [软件包]
	
	软件包名称的含义:
		zsh-5.0.2-34.el7_8.2.x86_64
			zsh		:软件包名称
			5.0.2		:版本号
			34		:第多少次编译
			el7_8(centos7)	:适用的平台
			x86_64		:适用系统弄位数
			rpm		:扩展名

           

1.2yum安装

基于rpm安装,自动解决依赖

1.安装:
	yum install [软件包名称] -y
	
	参数:
		-y	:免交互

2.卸载:
	yum remove [软件包名称]
	参数:
		-y	:免交互

3.更新
	yum updata [软件包名称]
	参数:
		-y	:免交互
	
	注:如果跟具体的软件包名称,就会更新指定软件包,没有指定就更新所有软件需要更新的软件包

4.yum安装生命周期
	1.执行yum install zsh -y
	2.到 /etc/yum.repos.d/ 找以.repo 结尾的文件
	3.通过.repo文件中的链接,找到对应的软件仓库
	4.在对应的软件仓库中下载指定的软件包
	5.缓存至 /var/cache/yum/
	6.根据缓存安装软件包
	7.将删除软件包(keepcache 是否保存保存缓存,0不保存,1保存)
	
	注:/etc/yum.conf yum的配置文件
           

2.yum本地仓库

1.本地仓库
	1.下载必须的软件包
		yum install yum-utils createrepo -y
	2.创建软件仓库
		mkdir -p /opt/repos
	3.下载对应的软件
		mkdir -p /opt/repos/Packages
		把对应的软件包复制到Packages目录中
		mv 软件包  Packages/
	4.初始化软件仓库
		createrepo  /opt/repos/
	5.添加yum源
		cd /etc/yum.repos.d/
		mkdir backup
		mv *.repo backup/
		yum-config-manager --add-repo=file:///opt/repos

		查看
		cat opt_repos.repo
			[opt_repos]            源的名称
			name=added from:file:///opt/repos  源的简介
			baseurl=file:///opt/repos  源的下载地址
			enabled=1                是否启用:0,1

	6.生成缓存
		yum clean all
		yum makecache

	7.测试
        yum install zsh


2.本地共享
    前6步参考本地版 1-6 步
    7. 安装远程访问软件(Nginx)
		yum install wget -y
		wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo 
			注:wget -O 更改为 curl -o


		# epel源,要找对根目录,就是目录中由packages和repodata的
		yum-config-manager --add-repo=https://repo.huaweicloud.com/epel/7/x86_64/
		
		yum install nginx  # 缺少公钥
		yum install nginx --nogpgcheck  # 忽略公钥认证

	8. 修改nginx的配置文件
    https://nginx.org/en/docs/http/ngx_http_autoindex_module.html
		vim  /etc/nginx/nginx.conf
		改server root 的根路径为/opt/repos
		注释掉 include那一行
		再添加一行内容:(root下面)
			autoindex on;  # 开启目录索引的意思
		保存退出
		测试更改是否成功:执行 nginx -t

		# 启动nginx
		systemctl start nginx

		浏览器输入ip测试

	9. 在测试机上
		yum install yum-utils  -y

		# 备份源
		mkdir backup
		mv */repo backup/

		# 添加源
		yum-config-manager --add-repo=http://192.168.15.101/

		# 刷新缓存
		yum clean all
		yum makecache
	
	10. 测试
		yum install zsh
           

2.系统安全相关优化

1.关闭selinux安全服务功能:
	永久关闭:
		vim /etc/selinux/conflg
			功能永久开启:enforcing
			功能临时关闭:permissive
			功能永久关闭:disabled
	临时关闭selinux功能:
		setenforce 0

2.firewalld
	firewalld--- iprables ---系统安全框架
	最上层		 下层(以后学)	最底层
	
	关闭命令:
		systemctl disable --now firewalld
		
	安全组:云服务器的防火墙


网址:init.sh下载优化

           

3.系统乱码优化

字符编码:
    export LANG=en.US-gb2312

	export LANG=zh_CN.UTF-8
	上述临时:
	
	vim /etc/locale.conf
	进入编辑,永久生效

常用编码:
	en.US.UTF-8		:美式英文。utf-8
	zh_CN.UTF-8		:中文编码