debian配置iSCSI
以下为在deiban上配置iSCSI,什么是iSCSI,具体参见百科。通俗来讲,就是在一个大硬盘上,划一小块给其它的电脑使用。我们现在就在debian划一块硬盘出来。
服务器端的iSCSI称作iSCSI Target,客户机上的iSCSI叫iSCSI Initiator,我们先来创建iSCSI Target。
安装系统:debian 11 bullseye
一,安装iSCSI Target
apt-get install tgt
二,配置iSCSI Target.
1,创建一个磁盘
root@dlp:~# mkdir /var/lib/iscsi_disks root@dlp:~# dd if=/dev/zero of=/var/lib/iscsi_disks/disk01.img count=0 bs=1 seek=2G
一个2G的磁盘已建好
root@debian:~# ls -la /var/lib/iscsi_disks total 8 drwxr-xr-x 2 root root 4096 Sep 19 20:26 . drwxr-xr-x 26 root root 4096 Sep 19 20:25 .. -rw-r--r-- 1 root root 2147483648 Sep 19 20:26 disk01.img
2,编辑Target配置
nano /etc/tgt/conf.d/target01.conf
创建一个新的Target
# create new # 命名规则:[ iqn.(年份/如2021)-(月份)/如09.(颠倒的域名):(自定义名字) ] # naming rule : [ iqn.(year)-(month).(reverse of domain name):(any name you like) ] <target iqn.2021-09.lan.debian:target01> # 生成iSCSI target的硬盘,上面of后面生成的 backing-store /var/lib/iscsi_disks/disk01.img # 同意客户端连接这个Target # initiator-name iqn.2021-09.lan.debian:192.168.0.3 # 设置用户名和密码authentication info ( set any name you like for "username", "password" ) # incominguser username password </target>
3,重启一下
systemctl restart tgt
4,查看Target状态
root@dlp:~# tgtadm --mode target --op show
显示如下
root@debian:~# tgtadm --mode target --op show Target 1: iqn.2021-09.lan.debian:target01 System information: Driver: iscsi State: ready I_T nexus information: LUN information: LUN: 0 Type: controller SCSI ID: IET 00010000 SCSI SN: beaf10 Size: 0 MB, Block size: 1 Online: Yes Removable media: No Prevent removal: No Readonly: No SWP: No Thin-provisioning: No Backing store type: null Backing store path: None Backing store flags: LUN: 1 Type: disk SCSI ID: IET 00010001 SCSI SN: beaf11 Size: 2147 MB, Block size: 512 Online: Yes Removable media: No Prevent removal: No Readonly: No SWP: No Thin-provisioning: No Backing store type: rdwr Backing store path: /var/lib/iscsi_disks/disk01.img Backing store flags: Account information: username ACL information: ALL iqn.2021-09.lan.debian:192.168.0.3
2021-9-25更新
在debian 10下面,重启时发现一个问题,每当重启debian之后,发现tgt运行之后不挂载生成的img文件,要重启一次才生效,解决方法如下:
打开/etc/rc.local文件,在exit 0上面一行,加上命令
systectl restart tgt
这样,在每次开机后,都会重启一次tgt服务。
root@debian:~# cat /etc/rc.local #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. ipset restore < /etc/ipset.conf iptables-restore < /etc/iptables.conf systemctl restart tgt exit 0