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. Flink之状态之状态存储 state backends

    流计算中可能有各种方式来保存状态: 窗口操作 使用 了KV操作的函数 继承了CheckpointedFunction的函数 当开始做checkpointing的时候,状态会被持久化到checkpoin ...

  2. [CF45G]Prime Problem

    题目大意:将$1$到$n(1<n\leqslant6000)$分成若干组数,要求每组数的和均为质数,若存在一种分配方式,输出每个数所在的组的编号,有多组解输出任意一组解,若不存在,输出$-1$ ...

  3. [洛谷P1420]最长连号

    题目大意:输入$n$个正整数,($1\leq n\leq 10000$),要求输出最长的连号的长度.(连号指从小到大连续自然数) 题解:考虑从小到大连续自然数差分为$1$,所以可以把原数列差分(后缀自 ...

  4. ContestHunter#17-C 舞动的夜晚

    Description: L公司和H公司举办了一次联谊晚会.晚会上,L公司的N位员工和H公司的M位员工打算进行一场交际舞.在这些领导中,一些L公司的员工和H公司的员工之间是互相认识的,这样的认识关系一 ...

  5. CSS3边框会动的信封

    <!DOCTYPE html><html> <head> <title>酷炫的CSS3</title> <meta charset=& ...

  6. 洛谷P1522 牛的旅行 Cow Tours

    ---恢复内容开始--- P1522 牛的旅行 Cow Tours189通过502提交题目提供者该用户不存在标签 图论 USACO难度 提高+/省选-提交该题 讨论 题解 记录 最新讨论 输出格式题目 ...

  7. js 内置对象属性及方法

    1.Date 属性(1): constructor      所建立对象的函数参考 prototype       能够为对象加入的属性和方法 方法(43): getDay()        返回一周 ...

  8. Spring学习--泛型依赖注入

    暂时没有搞懂.

  9. koala 编译scss不支持中文解决方案

    方法一: 在scss文件第一行加上代码:@charset "utf-8"; 方法二: 进入到Koala 安装目录 C:\Koala\rubygems\gems\sass-3.4.9 ...

  10. Android推送使用--文章集锦

    Android之基于百度云推送IM Android实现推送方式解决方案 Android消息推送(一)--AndroidPn(XMPP协议)Demo版到正式上线 采用XMPP协议实现Android推送 ...