精华内容
下载资源
问答
  • 宿主机与目标之间
    千次阅读
    2020-03-05 21:40:49
        在写材料的时候可能会遇到宿主机和目标机的描述。那么它们之间有什么区别呢?                                                     这两个概念一般会出现在嵌入式软件的开发中,当采用交叉平台开发时,软件在一个通用平台上开发,在另一个目标平台上运行,前者通用平台称为宿主机系统,后者被开发的系统称为目标机系统。
        宿主机和目标机之间通过一组连接传输信息,将代码、映像从宿主机下载到目标机,连接通信的方式有网口、串口等。
    
    更多相关内容
  • 由于嵌入式系统本身资源的匮乏,所以在开发时常采用PC宿主机+目标机的交叉调试方式。关于PC宿主机目标机的搭建在此不再累述。开发者一般会首先在PC宿主机上开发,然后通过某种通信方式发送到目标机上进行调试。而...

    在学习linux的嵌入式开发时,嵌入式的开发环境和工具是最为重要及首要应该学习的。由于嵌入式系统本身资源的匮乏,所以在开发时常采用PC宿主机+目标机的交叉调试方式。关于PC宿主机和目标机的搭建在此不再累述。开发者一般会首先在PC宿主机上开发,然后通过某种通信方式发送到目标机上进行调试。而本文就是对某种通信方式进行讨论。一般来说二者之间的主要通过以下几种方式进行通信:U盘、SD卡、NFS、FTP、UART...

    1、U盘

    首先把需要通信的文件拷贝到U盘上,然后通过U盘进行传输。目标机上插入U盘后会提示如下信息(信息是通过串口发送到超级终端上的):

    a4c26d1e5885305701be709a3d33442f.png

    在 mount

    /dev/sda1 /mnt 之前会看到U盘对应的设备文件是 sda1 即/dev/sda1

    上图是mount

    U盘后,查看U盘中的文件及umount命令等。mount后,操作和在linux中操作是一样的。上图是常用的命令。

    注意:在mount到的目录下,不能umount,否则提示:Device or resource

    busy,此时只需退到更上层的目录即可。

    2、SD卡

    SD和U盘同为移动存储设备,所以操作基本一致。在此不在详述。

    3、NFS

    NFS方式,是通过网络进行通信的,所以必须保证:

    1、二者之间已连接网线。2、PC端linux下的NFS服务已配置好,并开启。3、目标机端NFS服务也已配置完成,主要是IP地址的配置。

    以上配置完成后,假设已经挂接NFS文件系统到开发板的/mnt目录下。其余操作同U盘操作。

    4、UART

    通过UART,PC宿主机和目标机通信时,需要求二者之间通过串口连接。

    首先设置PC端串口接收发送工具的接收和发送的路径。具体工具设置方示不一样。下文以电脑自带的超级终端为例。注意超级终端的数据流控制要设为无。

    超级终端下,发送和接收方法请查询超级终端的使用方法。

    5、FTP

    FTP方式,也是通过网络进行传输的。方法同UART口类似,只不过,此时windows下的软件换成了FTP软件了。

    以上五中通信方式的优缺点及使用场合:

    1、U盘和SD卡

    不管是数据还是文件都在U盘上,所以不存在擦写flash的问题。可延长flash的使用寿命。从上面的操作可以看出,操作起来比较麻烦,不适合在调试程序时使用。所以此种方式一般用来输入大量的信息或是存储大量的数据时使用。

    2、NFS

    NFS方式主要是用在linux与linux间的通信,

    所以也不存在擦写flash的问题。真在的数据或是文件吧还是在PC宿主机上,有木有点像服务器的味道。所以这种方式适合开发调试程序。

    3、FTP

    FTP方式主要是用在windows和linux之间通信,所以在PC宿主机+目标机的开发中,先要把需要拷贝的文件发送存到windows下。优点是速度快,但操作起来也是比较麻烦。不太适合虚拟机+linux形式的开始。

    4、UART

    此种在linux或windows和linux下通信均可。由于使用的是串口通信,所以速度受到很大的限制。不适合大量数据的传输。用来调试程序,可勉强接受。

    展开全文
  • docker cp :用于容器主机之间的数据拷贝。 语法 # 容器内文件 copy to 宿主机 docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- # 宿主机文件 copy to 容器内 docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_...
  • 一起跟着小编来学习:虚拟机Linux以及宿主机WindowsXP这两者之间的Telnet,希望这对大家有所帮助!首先在这里的话,小编需要说明一下系统,宿主机是Winxp,ip地址如下所示:192.168.1.18,通过Vmware这一个应用程序...

    虚拟机,在计算机科学中的体系结构裏,是指一种特殊的软件,他可以在计算机平台和终端用户之间创建一种环境,而终端用户则是基于这个软件所创建的环境来操作软件。一起跟着小编来学习:虚拟机Linux以及宿主机WindowsXP这两者之间的Telnet,希望这对大家有所帮助!

    1798744c1e2a2fc3f6799fd7032582e8.png

    首先在这里的话,小编需要说明一下系统,宿主机是Winxp,ip地址如下所示:192.168.1.18,通过Vmware这一个应用程序安装了FedoraLinux,ip地址如下所示:192.168.1.252。安装了hamachi(主要的作用就是便于与人联机游戏的软件)从而导致Linux不可以继续上网,在“网络连接”里面将其禁用就可以了。

    小编通过看相关的教学视频,明白了假如说要实现这二者之间的互相访问,那么就需要祭出telnet武器,不料无论是xp抑或还是linux通通都没有办法实现telnet。于是经过小编思考片刻抑或,就拿出了解决方案。具体的解决方案如下所示(注意事项:telnet的端口号是23哦):

    操作步骤一:首先我们要做的第一件事情,那就是XP系统开启Telnet服务,具体的操作步骤如下:在“我的电脑”右键→管理→服务→Telnet,使用鼠标右键选择“属性”,将其打开就可以了,小编设置的是“手动”,接下来开启之。

    操作步骤二:Linux开启telnet服务:在“终端”里面键入下面的命令:chkconfigtelneton。

    操作步骤三:XP系统下telnetLinux,执行下面的操作:“开始”→“运行”→cmd,点击回车进入到命令行模式,键入下面的命令:“telnet192.168.1.252”点击回车,输入linux里面的id以及password就可以了。那么问题就来了?为什么不能够直接使用root进行登陆呢?登陆以后可以直接使用suroot转为root登陆,奇怪?终于给小编找到了解决办法,如下所示:vi/etc/pam.d/login文件,在authrequired/lib/security/pam_securetty.so前面加一个#号,注释掉就可以了哦。

    操作步骤四:在Linux下面telnetXP,执行下面的操作:首先打开终端,键入下面的命令:telnet192.168.1.18,提示小编进行登陆。在这里大家都需要注意一点,那就是因为方便朋友使用计算机所以机子没有设置相关的密码,因telnet不允许空密码所以小编就新增了root用户,组别一定要设置成为Administrators或者是设置新增一个组别TelnetClients并且将root加入就可以了哦,要不然的话就会提示:“访问拒绝:指定用户是不是TelnetClients组成员。另外一个方面,服务器管理员一定要将这一个用户添加到上述组。Telnet服务器已关闭连接”。

    小编结语:

    在这里小编想说的是,虚拟机技术是虚拟化技术的一种,所谓虚拟化技术就是将事物从一种形式转变成另一种形式,最常用的虚拟化技术有操作系统中内存的虚拟化。

    展开全文
  • 因为Docker容器思想一个容器只做一件事,所以JavaWeb整体会在一个容器中,数据库(Mysql,redis,Hbase)会单独存在另一个容器中,势必会造成容器之间的通信,由于Docker容器之间采用沙箱隔离运行机制,所以在不同...

    一、为什么要书写此文档?

    因为Docker容器思想一个容器只做一件事,所以JavaWeb整体会在一个容器中,数据库(Mysql,redis,Hbase)会单独存在另一个容器中,势必会造成容器之间的通信,由于Docker容器之间采用沙箱隔离运行机制,所以在不同容器之间数据通信就成了一个大问题!

    二、如何解决容器之间数据通信问题?(link第一种方式)

    有两种方案,第一种搭建容器的桥接网络(详情见docker容器桥接网络设置文档.doc,相对麻烦),第二种使用Docker容器之间的Link机制

    此处解决方案使用第二种方式:使用Docker容器的link通信机制,解决同一宿主机容器之间通信问题;

    2.1、以一个简单的JavaWeb项目为例(写一个简单的数据库查询所有),数据库使用MySql容器,宿主机上启动两个镜像,一个MySql,一个JavaWeb,两个镜像分别启动了2个容器!

    查看运行的容器

    启动两个容器的先后顺序为数据库为先启动,调用数据库的服务为后启动
    启用Mysql 的Shell脚本如下:

    $docker run  --name mysql -p 3306:3306 -v /mysql/database/data:/var/lib/mysql 
    -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

    Shell脚本说明
    ①: run      Docker的运行命令
    ②:--name   docker运行给容器取得别名
    ③:-p       容器内部和外部的端口映射
    ④:-v           容器内部数据持久化,映射到/mysql/databases/data文件夹下  
      -v /mysql/databases/data:/var/lib/mysql 宿主机目录:容器内部数据存储目录
    ⑤:-e         设置容器Mysql数据库的用户密码
    ⑥:root      密码为root
    ⑦:-d            程序后台运行
    ⑧:mysql:5.7        镜像名称:tar/镜像ID

    启用JavaWeb 镜像Tomcat的Shell脚本如下

    $docker run -d -v /Docker:/usr/java/tomcat/apache-tomcat-8.5.27/webapps -p 8080:8080 
    --name MyTomcat --link mysql:aliasmysql javaweb:1.0 /root/run.sh

    ①:-d             后台运行
    ②:-v               文件夹映射,方便部署项目使用
    ③:-p               映射tomcat对外端口
    ④:--name            当前容器服务的别名MyTomcat
    ⑤:--link         通信机制命令
    ⑥:mysql            当前web容器需要连接的容器的别名mysql【mysql是启动的数据库容器别名】
    ⑦:aliasmysql        给当前连接的数据库取一个别名为aliasmysql【配置文件需要用】
    ⑧:javaweb:1.0    镜像名称:tar    
    ⑨:/root/run.sh    启动Tomcat的运行shell脚本

    上述修改完毕,Web项目并不能运行

    还需要修改Web项目中配置文件
    原始配置文件

    修改后的配置文件

    此处是将原始宿主机IP替换为运行javaweb的link数据库取的别名aliasmysql 访问Web 项目的控制层

    此时测试成功!

    Link缺点:
    ①:停止link连接的目标容器,hosts文件并不会更新,只有目标容器重新启动,才会更新hosts文件。
    ②:容器需要按照link之间的依赖关系依次启动。
    ③:移除一个link连接的容器,可能会造成整个系统的link失效,需要删除并重新建立所有使用–link的容器。
    ④:在Docker官方文档中显示,在后续会去掉--link方法

    四、同一宿主机不同容器之间多个link使用方法

    用例:容器:JavaWebTomcat+Nginx+JDK
          容器:Mysql数据库
          容器:Redis数据库
    3个以上容器之间数据通讯解决问题
    按照顺序启动:
    启动 数据库提供服务者
    启动 Mysql   

    $:docker run  --name mysql -p 3306:3306  \
      -v /mysql/database/data:/var/lib/mysql \
      -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

    启动Redis   

    $: docker run -d -p 6379:6379 \
       --name redis \ 
       -v /redis/database/data:/data \
       redis:3.2 redis-server --appendonly yes

    启动数据库消费方(JavaWeb):

    docker run -d \
    -v /Docker:/usr/java/tomcat/apache-tomcat-8.5.27/webapps  \
    -p 8080:8080 --name MyTomcat \ 
    --link mysql:aliasmysql  \
    --link redis:aliasredis  \
    javaweb:1.0 /root/run.sh

    修改MySql数据库配置文件

    修改redis数据库配置文件

    配置文件IP地址分别统一用link的别名替换

    访问Web项目页面,查看MysqL数据库

    访问Web项目页面,查看Redis数据库

    综上所述:同一宿主机,不同容器多个(二个以上)容器通信问题接已经解决了!

    六、同一宿主机下不同容器之间的通信(第二种方式)

    不使用Docker容器的    --link命令
    直接使用 docker inspect 容器ID
    查看容器的元信息,
    用例:查看Redis数据库IP

    在配置文件中:修改

    注意:此IP不是容器宿主机的IP,而是宿主机上容器ID的分配的容器IP

    调用Web项目,查看Redis数据库, 同样可以进行数据通信,这种方式

    优点:是不用按照数据库提供服务顺序进行进行启动,不用取别名,较为简单

    缺点:通过观察发现,每一个启动容器的ip地址不是固定的,容器重启后ip地址会改变

    总结:同一个宿主机上的多个docker容器之间如果想进行通信,可以通过使用容器的ip地址来通信,也可以通过宿主机的ip加上容器暴露出的端口号来通信,前者会导致ip地址的硬编码,不方便迁移,并且容器重启后ip地址会改变,除非使用固定的ip,后者的通信方式比较单一,只能依靠监听在暴露出的端口的进程来进行有限的通信。通过docker的link机制可以通过一个name来和另一个容器通信,link机制方便了容器去发现其它的容器并且可以安全的传递一些连接信息给其它的容器

    备注:link的方式只能解决单机容器间的互联,多机的情况下,需要进行网络桥接
     

    展开全文
  • 虚拟机Ubuntu之间相互通信以及虚拟机与宿主机进行通信 在Vmware workstation上打开两台虚拟机 1.在设置里将两台虚拟机改成桥接模式 2.使用命令行静态配置两台虚拟机的IP地址分别为 虚拟机Ubuntu1:192.168.0.3 ...
  • 因为Docker容器思想一个容器只做一件事,所以JavaWeb整体会在一个容器中,数据库(Mysql,redis,Hbase)会单独存在另一个容器中,势必会造成容器之间的通信,由于Docker容器之间采用沙箱隔离运行机制,所以在不同...
  • 先前在玩GEC2410时,有个想法,就是在linux下进行调试,由于目标板上电或复位时会发送信息给PC机的串口,这已在windows下实现过,于是想在linux下看看效果,可是当时我在linux下设好串口后,发现一点反应都没有,...
  • 目标:实现宿主机与容器主机相互访问。 容器容器之间相互访问。1.拉取一个新的centos镜像docker pull centos2.运行一个容器,准备安装必要的环境docker run --privileged -h ssh_server --name ssh_server -i -t ...
  • 1、Docker宿主机和容器之间文件拷贝 2、数据卷 3、数据卷容器 Docker宿主机和容器之间文件拷贝docker copy 前言: Docker 数据管理 在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间...
  • Docker overlay网络宿主机无法连接到容器的解决方案 问题阐述 docker 使用原生跨主机overlay网络部署集群时,发现宿主机无法连接到容器中 测试案例 启动一个resourcemanager来测试 docker run --name test1 --...
  • 宿主机是Centos7.8,装有两台虚拟机是Window Server2019.虚拟机1可以ping通网关和虚拟机2,但虚拟机2和宿主机ping不通虚拟机1。 尝试了很多网上的教程,都不管用。最后尝试关闭各式防火墙,直到把Window Server2019...
  • 宿主机脚本控制虚拟机 内容精选换一换需要准备一台Linux系统的物理服务器或虚拟机作为镜像制作服务器,即宿主机,并为宿主机安装Linux操作系统。以CentOS 7.3 64bit操作系统为例,安装时必须选择安装GUI桌面和虚拟化...
  • bridgehost的区别:bridge模式,容器之间的寻址是借助虚拟网卡,不会影响当前宿主机所在的网络环境;而host模式,容器之间的须知是借助物理网卡,所以可能会影响到当前宿主机所在的网络环境。 容器之间的...
  • 主机目标版的连接方式

    千次阅读 2018-10-13 17:30:55
    由于主机目标板是两个独立的个体,要想在它们之间传输数据,就必须首先建立某种数据连接,才能实现通信、文件传输等功能。通常,在目标板和主机之间可以使用串口、以太网接口、USB接口和JTAG接口等连接方式。下面...
  • 环境说明 主机(实体机):windows7 宿主机:由docker-machine创建的virtualbox 问题 目前使用方式,在主机中通过访问宿主机地址进行容器服务的访问。...需要在主机与宿主机之间建立端口映射关系,实现跳转。
  • docker将数据从宿主机挂载到容器中的三种方式 1、volumes:Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes) 保存数据的最佳方式。将容器数据持久化到宿主机,docker自己来管理的一个位置; volumes...
  • 用--mount命令时,docker版本要高于17.06以上的版本 发现宿主机挂载的目录下没有文件,之前是有两个文件的,这个就是bind mounts和volumes的不同点,如果挂载目标在容器中非空,则该目录现有的内容(宿主机挂载的...
  • [转载]PC宿主机目标机通信方式

    千次阅读 2013-04-17 15:18:57
    (2012-04-23 15:13:45)...由于嵌入式系统本身资源的匮乏,所以在开发时常采用PC宿主机+目标机的交叉调试方式。关于PC宿主机目标机的搭建在此不再累述。开发者一般会首先在PC宿主机上开发,然后通过某种通信方式发送到
  • 背景 目前手上只有虚拟机资源,想通过虚拟机来分析交换机镜像过来的流量。交换机镜像过来的流量可能是主干网络的流量也可能是某台服务器的流量。 KVM环境准备 ...2,宿主机创建了br0,并且绑定了em1,并且测
  • 在dokcer的日常使用过程中,我们可能会遇到将宿主机内文件/目录copy到容器内,或者将容器的文件/目录copy到宿主机中,下面我们就来简单的谈一下关于这种情况的两种操作。1、Docker cp命令:用于容器主机之间的数据...
  • CentOs7.5无法ping通宿主机IP win10,vmare15.5, centos7.5。之前都能访问外网。这两天不能访问外网,不能ping通宿主机,无法用yum,老是提示aliyun镜像源连接超时。百度了好多文章,把nl80211 not found都扯出来了,...
  • 嵌入式Linux开发如何实现宿主机目标之间通信,常用方法又串口通信和网口通信,本文介绍minicom开发环境的配置。
  • 1、拷贝容器内文件到宿主机。 在宿主机上执行命令: docker cp dockername:/usr/local/tomcat/webapps/test/js/test.js /root 其中: dockername为容器名(通过docker ps查看,Name列) /usr/local/tomcat/...
  • 系列索引:《嵌入式系统原理应用》 | 嵌入式系统 重点知识梳理 目录 系列索引:《嵌入式系统原理应用》 | 嵌入式系统 重点知识梳理 ...宿主机 ...宿主机与目标机的连接 要建立交叉开发环...
  • docker容器想要实现一些网络通信的...映射需要的命令是 -p 0000:0001,这里意味着宿主机的0000端口映射到了容器的0001端口,命令是在运行容器的时候加入的。 docker run -tid --name docker_name -p 8888:8888 i...
  • 在不了解 Docker 网络的情况下使用 Docker 部署应用可能会出现 Docker 容器跨过宿主机防火墙(iptables)的限制直接取得外网访问权的情况。 在这篇文章中将会分析安装 Docker 对宿主机网络设备和 iptables 两个重要...
  • 通过fusion的界面添加共享目录 在客户机中通过vmware-hgfsclient查看可用...通过vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other把宿主机共享目录挂载到客户机的/mnt/hgfs 最后通过软连接把共享目录链接到目标路径 ...
  • 笔者在宿主机上的用户,是一个具有“宿主机上sudo权限”的非root用户。现在在宿主机有资源文件夹CPP,里边有各种库。但是有的库需要glibc 2.31才能用。然而,宿主机ubuntu 16.04的glibc版本为2.23,且无法升级(升级...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,344
精华内容 5,337
热门标签
关键字:

宿主机与目标之间