iSCSI 发起程序是一种用于同 iSCSI 目标器认证并访问服务器上共享的LUN的客户端。我们可以在本地挂载的硬盘上部署任何操作系统,只需要安装一个包来与目标器验证。

初始器客户端设置

功能

  • 可以处理本地挂载磁盘上的任意文件系统
  • 在使用fdisk命令分区后不需要重启系统

前置阅读

我的客户端设置

  • 操作系统 – CentOS 6.5 (Final)
  • iSCSI 目标器 IP – 192.168.0.50
  • 使用的端口 : TCP 3260

警告:永远不要在LUN还挂载在客户端(发起程序)时停止服务。

客户端设置

1. 在客户端,我们需要安装包‘iSCSI-initiator-utils’,用下面的命令搜索包。

  1. # yum search iscsi

示例输出

  1. ============================= N/S Matched: iscsi ================================
  2. iscsi-initiator-utils.x86_64 : iSCSI daemon and utility programs
  3. iscsi-initiator-utils-devel.x86_64 :Development files for iscsi-initiator-utils

2. 找到了包,就用下面的yum命令安装初始化包。

  1. # yum install iscsi-initiator-utils.x86_64

3. 安装完毕后,我们需要发现目标器上的共享。客户端的命令有点难记,因此我们使用man找到需要运行的命令列表。

  1. # man iscsiadm

man iscsiadm

4. 按下SHIFT+G 进入man页的底部并且稍微向上滚动找到示例的登录命令。下面的发现命令中,需要用我们的服务器IP地址来替换。

  1. # iscsiadm --mode discoverydb --type sendtargets --portal 192.168.0.200 --discover

5. 这里我们从下面的命令输出中找到了iSCSI的限定名(iqn)。

  1. 192.168.0.200:3260,1 iqn.2014-07.com.tecmint:tgt1

发现服务器

6. 要登录就用下面的命令来连接一台LUN到我们本地系统中,这会与服务器验证并允许我们登录LUN。

  1. # iscsiadm --mode node --targetname iqn.2014-07.com.tecmint:tgt1 --portal 192.168.0.200:3260 --login

登录到服务器

注意:登出使用登录命令并在命令的最后使用logout来替换。

  1. # iscsiadm --mode node --targetname iqn.2014-07.com.tecmint:tgt1 --portal 192.168.0.200:3260 --logout

登出服务器

7. 登录服务器后,使用下面的命令列出节点的记录行。

  1. # iscsiadm --mode node

列出节点

8. 显示特定节点的所有数据

  1. # iscsiadm --mode node --targetname iqn.2014-07.com.tecmint:tgt1 --portal 192.168.0.200:3260

示例输出

  1. # BEGIN RECORD 6.2.0-873.10.el6
  2. node.name = iqn.2014-07.com.tecmint:tgt1
  3. node.tpgt =1
  4. node.startup = automatic
  5. node.leading_login =No
  6. iface.hwaddress =<empty>
  7. iface.ipaddress =<empty>
  8. iface.iscsi_ifacename =default
  9. iface.net_ifacename =<empty>
  10. iface.transport_name = tcp
  11. iface.initiatorname =<empty>
  12. iface.bootproto =<empty>
  13. iface.subnet_mask =<empty>
  14. iface.gateway =<empty>
  15. iface.ipv6_autocfg =<empty>
  16. iface.linklocal_autocfg =<empty>
  17. ....

9. 接着列出使用的磁盘,fdisk会列出所有的登录认证过的磁盘。

  1. # fdisk -l /dev/sda

列出磁盘

10. 运行fdisk命令来创建一个新的分区

  1. # fdisk -cu /dev/sda

创建新分区

注意:在使用fdisk创建新分区之后,我们无需重启,就像使用我们本地的文件系统一样就行。因为这个将远程共享存储挂载到本地了。

11. 格式化新创建的分区

  1. # mkfs.ext4 /dev/sda1

格式化新分区

12. 创建一个目录来挂载新创建的分区

  1. # mkdir /mnt/iscsi_share
  2. # mount /dev/sda1 /mnt/iscsi_share/
  3. # ls -l /mnt/iscsi_share/

挂载新分区

13. 列出挂载点

  1. # df -Th
  • -T – 输出文件系统类型
  • -h – 以易读的方式显示大小

列出新分区

14. 如果需要永久挂载,使用fdtab文件

  1. # vim /etc/fstab

15.在fstab后追加下面行

  1. /dev/sda1 /mnt/iscsi_share/ ext4 defaults,_netdev 00

注意: 在fdtab中使用_netdev,说明这是一个网络设备。

自动挂载分区

16. 最后检查我们fstab文件是否有错误。

  1. # mount -av
  • -a – 所有挂载点
  • -v – 冗余模式

验证fstab文件

我们已经成功完成了我们的客户端配置。现在让我们像本地磁盘一样使用它吧。

设置iSCSI的发起程序(客户端)(三)的更多相关文章

  1. Creating Dialogbased Windows Application (3) / 创建基于对话框的Windows应用程序(三)Checkbox的应用、窗体置顶、设置图标 / VC++, Windows

    创建基于对话框的Windows应用程序(三) —— Checkbox的应用.窗体置顶.设置图标 上一节创建的窗体应用程序中,我们用到了Button和StaticText这两个控件.这一节中我们将学习使 ...

  2. SharePoint使用BCS开发你第一个应用程序(三)

    SharePoint使用BCS开发你第一个应用程序(三) 创建外部内容类型.         创建外部内容类型有三种不同方式: 1. 在记事本上手写XML代码(不推荐). 2. 使用SharePoin ...

  3. 微信小程序把玩(三)tabBar底部导航

    原文:微信小程序把玩(三)tabBar底部导航 tabBar相对而言用的还是比较多的,但是用起来并没有难,在app.json中配置下tabBar即可,注意tabBar至少需要两个最多五个Item选项 ...

  4. Tomcat部署发布JSP应用程序的三种方法 (转)

    Tomcat部署发布JSP应用程序的三种方法     1.直接放到Webapps目录下      Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应 ...

  5. Spring MVC 程序首页的设置 - 一号门-程序员的工作,程序员的生活(java,python,delphi实战)

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  6. 20171018 微信小程序客户端数据和服务器交互

    -- 时常在想,怎么样才能把知识写的清晰,其实是我理解的不够清晰 微信小程序其实是一个客户端页面,也是需要和服务器交互才能体现数据. 1 --服务器搭建Web API :MVC4 中的一个模板, 如下 ...

  7. Linux上设置开机启动Java程序

    在Linux上设置开机启动Java程序,例如:test.jar 在Linux上启动Java程序的命令: nohup java -jar test.jar >/dev/>& & ...

  8. (转载)Recyclerview | Intent与Bundle在传值上的区别 | 设置布局背景为白色的三种方法

    用Recyclerview实现列表分组.下拉刷新以及上拉加载更多  http://www.jianshu.com/p/be62ce21ea57 Intent与Bundle在传值上的区别http://b ...

  9. Linux 下用 crontab 设置定时执行python 程序

    Linux 下用 crontab 设置定时执行python 程序 方法/步骤   1,先大概了解crontab,/etc/crontab 就是crontab 的配置文件. crontab命令详解可以查 ...

随机推荐

  1. Oracle锁表查询以及解锁

    一.查看锁表进程SQL语句 select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo ...

  2. 多线程 调用多线程的方法 Runtime与ProcessBuilder

    一般我们使用Java运行其他类中的方法的时候,无论是静态调用还是动态调用,都是在当前的进程中执行的.也就是只有一个Java虚拟机实例在运行.有时候需要通过Java代码启动多个Java子进程,这样做会消 ...

  3. 2017南开ACM校赛(网络赛) 民间题解

    orz 首先说一下这个只是民间题解,可能会有很多错误 程序还没有评测,所以可能存在问题 C题比赛的时候没想到..后来发现是个模板题,所以没有代码 希望这份题解能对读者有所启发吧... A题 直接倒序枚 ...

  4. MySQL触发器写法

    触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/dele ...

  5. 【可持久化线段树?!】rope史上最全详解

    https://www.luogu.org/problemnew/show/P3919 看到上面链接中的题时,我在学会可持久化线段树的同时,第一次学会了一个非常屌(cai)的STL大法——rope!! ...

  6. Codeforces Round #526 (Div. 2) C. The Fair Nut and String

    C. The Fair Nut and String 题目链接:https://codeforces.com/contest/1084/problem/C 题意: 给出一个字符串,找出都为a的子序列( ...

  7. Codeforces Round #487 (Div. 2) A Mist of Florescence (暴力构造)

    C. A Mist of Florescence time limit per test 1 second memory limit per test 256 megabytes input stan ...

  8. C#弱引用

    加菲猫 Just have a little faith. C#弱引用 .NET框架提供了另一有趣的特色,被用于实现多样的高速缓存.在.NET中弱引用通过System.WeakReference类实现 ...

  9. php SPL四种常用的数据结构

    1.栈[先进后出] $stack = new SplStack(); $stack->push('data1'); $stack->push('data2'); $stack->pu ...

  10. [05] css优先级

    1.优先级计算规则(特殊性) 在css中,有不同的方式编写css,如果想给同一个标签设置样式,选择器的写法有很多种,那么当多个样式都应用于同一个标签,标签优先选择哪个样式呢?按照以下规则: 现有 0, ...