什么是软件包
安装软件,一个通常的办法就是下载程序的源代码进行编译。这种太麻烦,于是一些人把常用软件编译好,做成软件包放在服务器上,通过包管理器可以很方便的得到这个软件包安装,就好比手机上的应用商店
yum(yellow dog updater。modified)是linux下非常好用的包管理器,主要在Fedora,RedHat,Centos等发形。想下载一个软件,通过yum访问软件发布平台,将程序下载安装,解决了依赖关系
由于官方的软件发布平台网址是锅外的,所以链接不稳定,国内一些机构出了镜像版。除过官方的平台,还有非官方的预备的软件平台,这些虽然稳定性和适配比不上官方,但功能更丰富
可以打开yum源文件,是用pathon写的
vim /usr/bin/yum
查看yum配置源
ls /etc/yum.repos.d
可以打开yum源查看网址,一般是服务器提供商的备份yum源,如果是国外的,也就是http:centos。。。。这种最好配置为国内的,
(1)下载yum源配置文件到本地
命令:wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
解析:把配置文件下载到本机/etc/yum.repos.d目录下。做一个备份,将下载的替换为base源,并将base源重命名
具体可在网上搜索教程
如果没有epel源,可以安装,这是一个非官方的常用源:
yum install -y epel-release
查看软件包
我们该怎么知道可以下载哪些软件,可以用命令罗列软件包:
yum list
同时配合搜索命令找到自己想要的软件
yum search [软件部分名]
或者
yum list | grep [软件部分名]
推荐使用第二种,可以红色高亮匹配的字符,后面是版本和发布源
注意事项
软件包名称:主版本号,此版本号,源程序发形号,软件包的发形号,主机平台,cpu架构
x86_64是64位系统的安装包,i686表示32位系统安装包,要和系统匹配
el7表示操作系统发行版的版本,centos7/redhat7,el6表示centos6/redhat6
最后一列,base是软件源的名称
安装软件
有了软件包的查询方法,就可以安装了。yum安装是名字必须全部匹配,所以不会安装错软件。通过yum命令完成,一般需要root权限
只能一个装完再装另一个,不然会报错
sudo yum install -y [软件名]
-y表示直接确认安装,不用询问. 出现complete字样说明安装完成
可以在网上搜索很多有趣的程序名来下载
移除软件
仍然是一条命令
sudo yum remove -y [软件名]
关于rzsz
这个工具用于windows机器和远端的linux机器通过xshell传输文件
安装完毕后可以通过拖拽的方式将文件上传
sudo yum install -y lrzsz
rz //上传文件
sz filename //下载文件
关于yum的所有操作都必须保证网络畅通
通过ping指令验证
ping www.baidu.com
访问浏览器
git
查看有没有git,没有则安装
git --version
版本控制
版本可以提供完备的管理,当写一个程序,会经过不断地完善和修改,有时突然发现前面某个时间段的源码更好,或者修改出现了错误,这时就需要回到以前的版本,所以需要每个时期版本的管理,想回到哪个版本,想更新到哪个版本都很方便
linux是一个开源系统,所以很多人都可以修改发布自己的内容,而要整合所有版本是一个非常麻烦的事,每个人修改一部分想加入进去就需要同步。在初期,都是手工审核,好的部分加入到新版本中。后面创始人雷纳斯托瓦兹免费得到了一个版本控制软件的使用权,这时所有人只要有修改,可以将自己的更细同步到最新的版本中,这样所有人都可以同步使用最新的每个人的更改。但取消了授权使用后,创始人只能自己开发了一个免费的版本控制器来服务于linux系统,这就是git,后来用这个git开发了很多平台,如github,gitee,这就是项目托管平台
创建仓库
登录gitee,新建一个仓库,添加ignore,可以忽略掉不需要上传的杂项文件,添加一个开源许可证
克隆仓库
点击仓库链接,选择复制http
git clone [链接]
可能需要输入用户名和密码
成功后查看自己的git文件夹已经同步,隐藏的.get就是需要同步的内容
添加
进入同步文件夹,创建一个代码,将需要上传的代码添加到目录
get add [文件名]
get add . //将当前目录未上传的全部加载
提交
将本地仓库添加的代码提交到本地仓库,必须添加提交日志,注明内容等说明
git commit -m "提交日志"
上传
同步到远端服务器,git仓库,需要输入密码,也可以配置不需要输入
git push
更新成功,查看网页仓库有无更新
有时候无法提交会出现冲突,可能是因为两端仓库不一致,因为是协同开发,很可能仓库会有更新,这时需要同步一下。git只会记录变化部分,无论是新建还是删除,都会使本地和远端仓库同步
git pull
可以在仓库中删除一个文件,测试一下
.gitignore文件记录了屏蔽的文件格式,可以自行添加
删除
git rm [文件名]