目录
一:LInux应用程序基础
1.1:应用程序与系统命令的关系
- 在Linux系统中,一直以来命令和程序并没有特别明显的区别,从长期以来的使用习惯来看,可以通过以下区别将两者进行比较
1.2:典型应用程序的目录结构
- 都是默认安装路径
1.3:常见的软件包封装类型
二:查询RPM软件包信息
2.1:RPM概述
-
RPM软件包管理机制最早由Red Hat公司提出,后来随着版本的升级逐渐融入了更多的优秀特性,成为众多Linux发行版中公认的软件包管理标准。
-
RPM包管理器通过建立统一的文件数据库,对在Linux系统中安装,卸载,升级的各种.rpm软件包进行了详细的记录,并能够自动分析软件包之间的依赖关系,保持各个应用程序在一个协调没有虚的整体环境中运行。
-
RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用“软件名-软件版本-发布次数.操作系统类型.硬件架构类型.rpm"的文件名形式。例如:
2.2:查询RPM软件包信息
- 使用rpm命令查询功能可以检查某个软件包是否安装,了解软件包用途,软件包复制到系统中的文件等各种相关信息,以便更好地管理Linux系统中的应用程序
- 查询已经安装好的RPM软件包信息
使用命令的基本格式
rpm -q[子选项] [软件名]
常用选项有以下几种
-qa ###查看系统中以RPM方式安装的所有软件列表
-qi ###软件包的详细信息(查看指定软件包的名称,版本,许可协议,用途等描述信息)
-ql ###软件包当中的所有文件,显示指定的软件包在当前系统中安装的所有目录,文件列表
-qf ###根据指定文件或目录查看是属于哪个软件包安装的
-qc ###查看软件包所有配置文件。如conf cnf ini 都是配置文件
-qd ###查看软件包的文档
例如,查询系统中已安装RPM软件包个数
[root@localhost ~]# rpm -qa | wc -l
例如: 查询是否已安装elinks 和lynx 软件包
[root@localhost ~]# rpm -q elinks lynx
- 查询未安装的RPM软件包文件中的信息
- 使用“-qp”选项时,必须以RPM包文件的路径作为参数(可以有多个),而不是软件包名称。
- 命令都与“-q”类似
使用命令的基本格式
rpm -qp[子选项] RPM包文件
常用选项有以下几种
-qpi
-qpl
-qpc
-qpd
三:安装、升级、卸载RPM软件包
- 使用rpm命令实现安装、升级、卸载软件包时,需要了解其他的命令选项
3.1:安装、升级软件包
- 使用rpm命令安装软件包时,需要制定完整的包名作为参数(可以有多个)
- 而卸载软件包时,只需要指定软件名即可
- 若要一次安装多个RPM软件包,可以使用通配符“*”,这种方式在安装存在相互依赖关系的多个软件包时特别有用,系统会自动检查依赖性并决定安装顺序,而无需管理员去判断先安装哪一个包。
- 在安装一个新的软件包时,通常使用“-ivh”的组合选项,这样便于了解安装的过程信息,及时跟踪安装进度。
- 若是使用新版本的软件包替换旧版本的软件包,只需将“-i”替换成“-U”即可。
命令使用格式
rpm [选项] RPM包文件
常用选项有
-i
-U
-F
3.2:卸载软件包
- 写在一个软件包时,主要使用“-e”选项
命令的使用格式
rpm -e 软件名
例如:卸载已安装的 elinks软件
[root@localhost~]#rpm -e elinks
3.3:维护RPM数据库
-
用于记录在Linux系统中安装,卸载,升级应用程序的相关信息,由RPM包管理系统自动完成维护,一般不需要用户干预。当RPM数据库发生损坏(误删文件,非法关机,病毒破坏等导致),且Linux系统无法自动完成修复时,当导致无法使用rpm命令正常的安装,卸载及查询软件包。
-
这时候可以使用rpm命令的“–rebuilddb”或“–initdb”功能对RPM数据库进行重建。
例如
[root@localhost~]#rpm --rebuilddb
或者
[root@localhost~]#rpm --initdb
db的意思是数据库(database)
init的意思是初始化
3.4:Linux系统挂在Windows系统中的文件
- 前提:Windows被挂载的文件需要开启共享,共享功能需要设置好.
- smbclient:在计算机上,可以使用smbclient实用程序列出到共享的连接
例如:查看共享计算机的共享文件
[root@localhost ~]# smbclient -L //192.168.100.3/
Enter SAMBA\root's password:
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk 远程管理
C$ Disk 默认共享
D$ Disk 默认共享
E$ Disk 默认共享
F$ Disk 默认共享
G$ Disk 默认共享
IPC$ IPC 远程 IPC
Users Disk
ccc Disk
Reconnecting with SMB1 for workgroup listing.
do_connect: Connection to 192.168.100.3 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
Failed to connect with SMB1 -- no workgroup available
例如:将Windows共享文件ccc挂载到Linux /etc/sss
[root@localhost ~]# mount.cifs //192.168.100.3/ccc /etc/sss
Password for root@//192.168.100.3/ccc:
查看是否挂载成功 我们用df -h查看是否挂载成功
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda2 20G 3.3G 17G 17% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda5 10G 37M 10G 1% /home
/dev/sda1 6.0G 174M 5.9G 3% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0
//192.168.100.3/ccc 444G 2.6G 441G 1% /etc/sss
解除挂载的命令
[root@localhost ~]# umount /etc/sss
查看是否解除挂载
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda2 20G 3.3G 17G 17% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda5 10G 37M 10G 1% /home
/dev/sda1 6.0G 174M 5.9G 3% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0
四:Yum概述与常用命令
- Yum(全称为 Yellow dog Updater,Modified)是一个在Fedora和RedHat以及Centos中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装
- Yum常用命令
安装软件(以foo-x.x.x.rpm为例)
yum install foo-x.x.x.rpm
删除软件
yum remove foo-x.x.x.rpm
或者
yum erase foo-x.x.x.rpm
升级软件
yum upgrade foo
或者
yum update foo
查询信息
yum info foo
搜索软件(以包含foo字段为例)
yum search foo
显示软件包依赖关系
yum deplist foo
清空yum仓库缓存
yum clean all