unit 13

################
####软件安装####
################

####1.软件名称识别####
[abrt-addon-ccpp]-[2.1.11-19].[el7].[x86_64].rpm    ##rpm结尾的适用与redhat操作系统
       ||         ||         ||       ||
    软件名称       软件版本 软件适用系统 64位


####2.如何安装软件####
1.rpm
rpm    -ivh    name.rpm    ##安装 ,-v显示过程,-h指定加密方式为hash
    -e    name        ##卸载
    -ql    name        ##查询软件生成文件
    -qlp    name.rpm    ##查询软件安装后会生成什么文件
    -qa            ##查询系统中安装的所有软件名称
    -qa |grep name        ##查询软件是否安装
    -q name            ##。。。。
    -qp name.rpm        ##查询软件安装包安装后的名字
    -qf filename        ##查看filename属于那个安装包
    -ivh name.rpm --force    ##强制安装
    -qi name        ##查看软件信息
    -Kv name.rpm        ##检测软件包是否被篡改
    -qp name.rpm --scripts    ##检测软件在安装或卸载过程中执行的动作

2.yum
yum
上层软件管理工具,最重要的功能是可以解决软件的倚赖关系
yum能够投入使用的前提是必须要有yum源,以及配置源的指向文件

###server源端####
1.从网络上下本机系统版本匹配的iso镜像文件
rhel-server-7.1-x86_64-dvd.iso

2.把rhel-server-7.1-x86_64-dvd.iso挂在到/mnt以便访问镜像中的文件
mount rhel-server-7.1-x86_64-dvd.iso /mnt

3.配置本机yum源指向
rm -fr /etc/yum.repos.d/*
vim /etc/yum.repos.d/yum.repo
[Server]
name=rhel7.1
baseurl=file:///mnt
gpgcheck=0

4.安装资源共享服务
yum install httpd -y
systemctl stop firewlsh-plugin-11.2.202.451-release.x86_64.rpmld
systemctl disable firewalld
systemctl start httpd
systemctl enable httpd

5.建立共享目录,并挂在镜像文件到共享目录上
mkdir /var/www/html/rhel7.1
umount /mnt
mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.1

6.测试
在浏览器中输入:http://本机ip/rhel7.1
可以看到镜像中的内容

7.修改本机yum源指向
[server]
name=rhel7.1
baseurl=file:///var/www/html/rhel7.1
gpgcheck=0

8.开机自动挂在iso
vim /etc/rc.d/rc.local
mount rhel-server-7.1-x86_64-dvd.iso /var/www/html/rhel7.1
:wq

chmod +x /etc/rc.d/rc.local

9.第三方软件仓库的搭建
把所有的rpm软件包放到一个目录中,这个目录中只能存在rpm文件
createrepo -v /rpm存放目录
vim /etc/yum.repos.d/xxx.repo
[Software]
name=software
baseurl=file:///rpm存放目录
gpgcheck=0

####client指向端####
vim /etc/yum.repos.d/xxxx.repo        ##仓库指向文件位置
[xxxx]                    ##自定义软件仓库名称
name=xxxx                ##自定义软件仓库描述
baseurl=ftp://|http://|file://        ##仓库位置
gpgcheck=0                ##不检测gpgkey
                    ##gpgkey表示软件的出品logo

例子:
vim /etc/yum.repos.d/yum.repo
[Server]
name=rhel7.1
baseurl=ftp://172.25.0.254/pub/rhel7.1
gpgcheck=0
:wq

yum clean all                ##清空yum缓存识别新配置

####yum命令####
yum        install        softwarename    ##安装
        repolist            ##列出设定yum源信息
        remove        softwarename    ##卸载
        list        softwarename    ##查看软件源中是否有次软件
        list all            ##列出所有软件名称
        list installd            ##列出已经安装的软件名称
        list available            ##列出可以用yum安装的软件名称
        clean all            ##清空yum缓存
        search        softwareinfo    ##根据软件信息搜索软件名字
        whatprovides    filename    ##在yum源中查找包含filename文件的软件包        
        update                ##更新软件
        history                ##查看系统软件改变历史
        reinstall    softwarename    ##重新安装
        info        softwarename    ##查看软件信息
        groups list            ##查看软件组信息
        groups info    softwaregroup    ##查看软件组内包含的软件
        groups install    softwaregroup    ##安装组件
        groups remove    softwaregroup    ##卸载组件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#单元测试中的模拟(mock)是一种常用的技术,用于在测试中创建虚拟的对象,以替代真实的依赖项,以确保测试的可预测性和可重复性。 在C#中,常用的单元测试模拟框架包括Moq、NSubstitute和FakeItEasy等。这些框架提供了一些API,使得我们可以轻松地创建和配置模拟对象。 下面是一个使用Moq进行模拟的示例: ```csharp // 需要进行单元测试的类 public class Calculator { private IDataProvider _dataProvider; public Calculator(IDataProvider dataProvider) { _dataProvider = dataProvider; } public int AddNumbers(int a, int b) { // 从数据提供者获取数据 int data = _dataProvider.GetData(); // 执行计算 int result = a + b + data; return result; } } // 数据提供者的接口 public interface IDataProvider { int GetData(); } // 使用Moq创建并配置模拟对象进行测试 [Test] public void AddNumbers_ShouldReturnCorrectSum() { // 创建模拟对象 var dataProviderMock = new Mock<IDataProvider>(); // 配置模拟对象的行为 dataProviderMock.Setup(dp => dp.GetData()).Returns(10); // 创建被测试对象,并传入模拟对象 var calculator = new Calculator(dataProviderMock.Object); // 执行测试 int result = calculator.AddNumbers(1, 2); // 验证结果 Assert.AreEqual(13, result); } ``` 在上面的示例中,我们使用Moq创建了一个IDataProvider的模拟对象,并配置了模拟对象的行为。然后,我们创建了被测试对象Calculator,并将模拟对象传递给它的构造函数。最后,我们执行了AddNumbers方法,并验证了最终的结果。 使用模拟对象可以帮助我们解决以下问题: 1. 解除对外部依赖项(如数据库、网络请求等)的依赖,使得测试更加独立和可控。 2. 模拟复杂的对象和行为,以测试各种边界情况和异常情况。 3. 提供自定义的返回值或异常,以测试不同的路径和条件。 相关问题: 1. 除了Moq之外,还有哪些常用的C#单元测试模拟框架? 2. 在使用模拟对象时,如何验证方法的参数是否被正确调用? 3. 如何配置模拟对象的返回值或抛出异常? 4. 在一些特殊情况下,如何模拟异步方法的行为? 5. 在多个测试中共享模拟对象有什么注意事项?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值