首页 文章 精选 留言 我的

精选列表

搜索[linux],共10000篇文章
优秀的个人博客,低调大师

基于linux下的iscsi网络磁盘共享

iSCSI 主要是通过 TCP/IP 的技术,将储存设备端通过 iSCSI target 功能,做成服务端,再通过 iSCSI initiator (iSCSI 初始化用戶) 功能,做成使用 iSCSI target 的用戶端。 客户端可以通过局域网连接服务器上的iSCSI 服务器,在本地虚拟出一块硬盘,以达到通过网络共享服务器硬盘的效果。 iSCSI target:就是储存设备端,它能够为用户提供可用的存储资源。 iSCSI客户端则是用户使用的软件,用于获取远程服务端的存储资源, 配置服务端 [root@server ~]# yum install targetcli -y //策略编写工具; [root@server ~]# systemctl start target //启动服务 [root@server ~]# fdisk /dev/vdb //建立一个2G普通分区; [root@server ~]# partprobe //刷新 [root@server ~]# targetcli //进入编辑环境: /> /backstores/block create westos:storage1 /dev/vdb1 //改名 Created block storage object westos:storage1 using /dev/vdb1. /> /iscsi create iqn.2018-06.com.example:storage1 //修改iscsi的共享名称 Created target iqn.2018-06.com.example:storage1. Created TPG 1. /> /iscsi/iqn.2018-06.com.example:storage1/tpg1/acls create iqn.2018-06.com.example:westoskey //加密;iqn:网络名称查询方式;每个发起端和目标需要唯一的名称;iqn 年月域名反写标签年月域名反写标签 Created Node ACL for iqn.2018-06.com.example:westoskey /> /iscsi/iqn.2018-06.com.example:storage1/tpg1/luns create /backstores/block/westos:storage1 //关联设备,创建一个链接,将共享与分区关联起来; Created LUN 0. Created LUN 0->0 mapping in node ACL iqn.2018-06.com.example:westoskey /> /iscsi/iqn.2018-06.com.example:storage1/tpg1/portals create 172.25.254.247 //端口打开到服务器的ip Using default IP port 3260 Created network portal 172.25.254.247:3260. /> ls //查看内容 o- / .................................................................... [...] o- backstores ......................................................... [...] | o- block ............................................. [Storage Objects: 1] | | o- westos:storage1 ............ [/dev/vdb1 (2.0GiB) write-thru activated] | o- fileio ............................................ [Storage Objects: 0] | o- pscsi ............................................. [Storage Objects: 0] | o- ramdisk ........................................... [Storage Objects: 0] o- iscsi ....................................................... [Targets: 1] //共享资源 | o- iqn.2018-06.com.example:storage1 ............................. [TPGs: 1] | o- tpg1 .......................................... [no-gen-acls, no-auth] | o- acls ..................................................... [ACLs: 1] | | o- iqn.2018-06.com.example:westoskey ............... [Mapped LUNs: 1] | | o- mapped_lun0 .................. [lun0 block/westos:storage1 (rw)] | o- luns ..................................................... [LUNs: 1] | | o- lun0 ......................... [block/westos:storage1 (/dev/vdb1)] | o- portals ............................................... [Portals: 1] | o- 172.25.254.214:3260 ......................................... [OK] o- loopback .................................................... [Targets: 0] /> exit //退出 Global pref auto_save_on_exit=true Last 10 configs saved in /etc/target/backup. Configuration saved to /etc/target/saveconfig.json 注意:/iscsi/iqn.2018-06.com.example:storage1/tpg1/portals/ delete ip ip_port //删除操作 客户端设置 客户端: [root@client ~]# yum install iscsi-initiator-utils.x86_64 -y [root@client ~]# vim /etc/iscsi/initiatorname.iscsi //编辑认证文件; InitiatorName=iqn.2018-06.com.example:westoskey //编辑内容,加密字符是服务端设定的 [root@client ~]# iscsiadm -m discovery -t st -p 172.25.254.247 //发现设备 172.25.254.247:3260,1 iqn.2018-06.com.example:storage1 [root@client ~]# iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.254.247 -l //登陆发现设备;-t 网络设备的类型,-T 网络设备名称,-l 登陆 [root@client ~]# fdisk -l //查看分区是否出现 Disk /dev/sda: 2477 MB, 2477483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 4194304 bytes 设备使用以及开机自动挂载 //客户端: [root@client ~]# fdisk /dev/sda //新建分区sda1 [root@client ~]# partprobe //刷新 [root@client ~]# mkfs.xfs /dev/sda1 //格式化 [root@client ~]# mount /dev/sda1 /mnt //挂载 [root@client ~]# vim /etc/fstab //编辑文件 /dev/sda1 /mnt xfs defaults,_netdev 0 0 //先启动网络服务,再去读取文件;0 0 不备份,不检测; 第一次需要手动关闭虚拟机,再挂载设备; [root@client ~]# mount -a [root@client ~]# df 设备的删除 [root@client ~]# yum install tree -y //安装树; [root@client ~]# umount /mnt //解挂 [root@client ~]# vim /etc/fstab //注释掉自动挂载的命令; [root@client ~]# iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.254.247 -u //登出设备;其中, -u是登出,跟-l相对; [root@client ~]# iscsiadm -m node -T iqn.2018-06.com.example:storage1 -p 172.25.254.247 -o delete //删除文件(如果只登出设备,不删除文件,systemctl restart iscsi 重启服务后,fidk -l设备还是存在;删除文件后,再重启设备文件都不会恢复) [root@client ~]# systemctl restart iscsi //重启服务 [root@client ~]# tree /var/lib/iscsi/ //查看树 /var/lib/iscsi/ |-- ifaces |-- isns |-- nodes |-- send_targets | `-- 172.25.254.247,3260 | `-- st_config |-- slp `-- static

优秀的个人博客,低调大师

linux下新加磁盘的实现方法

生产中硬盘会不断的出现故障此时我们就需要更换新的硬盘,那么拿到一个新的硬盘之后我们该如何 来使用呢?一个新的硬盘首先我们要把旧硬盘上的东西进行备份然后用新的硬盘替代。 新硬盘使用之前我们必须要先对新硬盘进行 分区—>创建文件系统—>挂载—>设置开机自启 这 几个步骤,那么接下来我们一个一个来说明每个步骤的实现过程 分区: 拿到一个新的硬盘第一步肯定是要先将其进行分区,一般来说主要分为主分区、 SWAP分区 扩展分区等 主分区:如果没有额外分boot分区,内核镜像就在这上面;如果分了boot分区, 内核镜像放在boot分区里,但内核还得知道所有路径里的第一个/是相对于哪个分区而言的 swap分区:swap不分也可,但一般要分,现代操作系统普遍使用虚拟内存技术, 当内存空间不够时就把暂时不用的内存数据腾到硬盘的swap分区上 添加硬盘之后我们通过lsblk来查看块设备 确认硬盘存在之后我们就可以开始了,不过第一步还是要为硬盘指定一个类型,主要有 逻辑分区MBR和GPT分区 指定分区类型的工具有两个:fdisk parted parted是一个即时生效的工具而fdisk是一个非即时生效的 parted 来指定分区类型和分区大小 格式为: 指定分区类型:parted /dev/sd* mklabel gpt|msdos 若想更改分区类型则再执行此命令但之前的数据则全部清空 对硬盘进行分区:parted /dev/sd* mkpart primary 1 100 说明:为硬盘分出一个大小为(100-1)M的分区(默认单位是:M) 若要删除硬盘分区则执行 parted /dev/sd* rm 1 1为分区编号 若要查看分区后的硬盘则执行 parted ls fdisk /dev/sd* 然后执行子命令进行操作 p 分区列表 t 更改分区类型 n 创建新分区 d 删除分区 v 校验分区 u 转换单位 w 保存并退出 q 不保存并退出 硬盘分区后使用fdisk -l 可查看硬盘中的分区信息,但lsblk和其他查看硬盘信息的命令只能 查看内存中的设备信息,此时会出现不同步的现象,也就是说在fdisk中可以显示出以添加的 设备信息,但在lsblk中不能看到,对于这样不同步的现象centos6和centos7的解决方案不同 centos6中 对于添加的分区同步 partx -a /dev/sd* 对于删除的分区同步 kpartx -d /dev/sd* centos7中 partprobe [/dev/sd*] 若不加设备名称则同步所有,指定设备则只同步指定的 创建文件系统 centos6中常用的文件系统是ext4 centos7中常用的文件系统是xfs 创建之前我们应先查看是否已经有文件系统 blkid /dev/sd* 创建文件系统时会自动分配一个UUID当然可以随机生成 命令是:uudigen 创建文件系统的命令是mkfs 格式为: (1)mkfs.FS_TYPE /dev/sd* (2)mkfs -t FS_TPYE /dev/sd* 也可-L‘LABEL’:设定卷标 mkfs.查看系统中所支持的文件类型 如果出现逻辑性错误还可用fsck进行修复 例:mkfs -t ext4 /dev/sd* mkfs.sfs /dev/sd* 如果设置的是ext系列的文件系统还可以通过下列工具进行管理 修改 mke2fs :ext系列文件系统专用管理工具 -t {ext2|ext3|ext4} -b {1024|2048|4096} -L ‘LABEL’ -j: 相当于-t ext3 mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3 -i #: 为数据空间中每多少个字节创建一个inode;此大小 不应该小于block的大小 -N #:指定分区中创建多少个inode -I 一个inode记录占用的磁盘空间大小,128—4096 -m #: 默认5%,为管理人员预留空间占 总空间的百分比 -O FEATURE[,…]:启用指定特性 -O ^FEATURE:关闭指定特性 tune2fs:查看ext系列文件系统特性 tune2fs:重新设定ext系列文件系统可调整参数的值 -l:查看指定文件系统超级块信息;super block -L ‘LABEL’:修改卷标 -m #:修预留给管理员的空间百分比 -j: 将ext2升级为ext3 -O: 文件系统属性启用或禁用, –O ^has_journal -o: 调整文件系统的默认挂载选项,–o ^acl -U UUID: 修改UUID号 挂载 把新的硬盘经过分区和创建文件系统之后接下来就是往里面存储数据了那么如何往里面存储 数据,通过一个例子来说 如果一个硬盘的家目录的文件过多导致硬盘空间即将占满此时我们已经将新硬盘分区并且创 建了文件系统此时就可以把新硬盘挂载到家目录下: 1、将硬盘分区50G 2、设置文件系统 3、建一个临时文件夹存放原来的数据并将硬盘挂载 创建临时文件夹:mkdir /mnt/home 挂载: mount /dev/sdb1 /mnt/home 4、将要转移的文件夹复制到临时文件夹中(复制过程中可能有人在修改目录下的内容) 可先发通知然后 init 1 切换至单用户只有一个人访问 复制:cp -av /home/* /mnt/home/ 5、vim /etc/fstab 更改配置文件 查看 blkid /dev/sdb1 6、rm -rf /home/ 删除home下的文件否则不显示还占用空间mount -a 使其生效 7、init 5切换至图形界面 8、umount /mnt/home 取消临时文件夹的挂载并删除 rm -fr /mnt/home

优秀的个人博客,低调大师

Linux命令:lspci显示PCI总线设备信息

lspci:显示所有的PCI总线设备信息。 下面试lspci的全部功能介绍: $lspci- Usage:lspci[<switches>] Basicdisplaymodes: -mmProducemachine-readableoutput(single-mforanobsoleteformat) #生成机器可读的输出(单个-m用于过时的格式) -tShowbustree #显示巴士树 Displayoptions: -vBeverbose(-vvforveryverbose) #详细(-vv非常详细) -kShowkerneldrivershandlingeachdevice #显示处理每个设备的内核驱动 -xShowhex-dumpofthestandardpartoftheconfigspace #显示配置空间的标准部分的十六进制转储 -xxxShowhex-dumpofthewholeconfigspace(dangerous;rootonly) #显示整个配置空间的十六进制转储(危险;只有root) -xxxxShowhex-dumpofthe4096-byteextendedconfigspace(rootonly) #显示4096字节扩展配置空间的十六进制转储(仅限root用户) -bBus-centricview(addressesandIRQ'sasseenbythebus) #以总线为中心的视图(巴士所看到的地址和IRQ) -DAlwaysshowdomainnumbers #始终显示域名编号 ResolvingofdeviceID'stonames: -nShownumericID's#将设备ID解析为名称: -nnShowbothtextualandnumericID's(names&numbers) #显示文本和数字ID(姓名和号码) -qQuerythePCIIDdatabaseforunknownID'sviaDNS #通过DNS查询未知ID的PCIID数据库 -qqAsabove,butre-querylocallycachedentries #如上所述,但重新查询本地缓存条目 -QQuerythePCIIDdatabaseforallID'sviaDNS #通过DNS查询所有ID的PCIID数据库 Selectionofdevices: -s[[[[<domain>]:]<bus>]:][<slot>][.[<func>]]Showonlydevicesinselectedslots #仅显示选定插槽中的设备 -d[<vendor>]:[<device>][:<class>]ShowonlydeviceswithspecifiedID's #仅显示具有指定ID的设备 Otheroptions: -i<file>UsespecifiedIDdatabaseinsteadof/usr/share/hwdata/pci.ids #使用指定的ID数据库而不是/usr/share/hwdata/pci.ids -p<file>Lookupkernelmodulesinagivenfileinsteadofdefaultmodules.pcimap #查找给定文件中的内核模块而不是默认的modules.pcimap -MEnable`busmapping'mode(dangerous;rootonly) #启用`总线映射'模式(危险;只有root) PCIaccessoptions: -A<method>UsethespecifiedPCIaccessmethod(see`-Ahelp'foralist) #使用指定的PCI访问方法(请参阅`-Ahelp'获取列表) -O<par>=<val>SetPCIaccessparameter(see`-Ohelp'foralist) #设置PCI访问参数(请参阅“-O帮助”获取列表) -GEnablePCIaccessdebugging #启用PCI访问调试 -H<mode>Usedirecthardwareaccess(<mode>=1or2) #使用直接硬件访问(<mode>=1或2) -F<file>ReadPCIconfigurationdumpfromagivenfile #从给定文件读取PCI配置转储 简单的几个例子:(grep指令:https://blog.csdn.net/rong_toa/article/details/79799127) #查看显卡信息 $lspci|grep-ivga 00:0f.0VGAcompatiblecontroller:VMwareSVGAIIAdapter #只显示制定槽中的设备 $lspci-s00:0f.0 00:0f.0VGAcompatiblecontroller:VMwareSVGAIIAdapter #用机器可读的形式输出 $lspci-mm-s00:0f.0 00:0f.0"VGAcompatiblecontroller""VMware""SVGAIIAdapter""VMware""SVGAIIAdapter" $lspci-Q-s00:0f.0 00:0f.0VGAcompatiblecontroller:VMwareSVGAIIAdapter $lspci-D-s00:0f.0 0000:00:0f.0VGAcompatiblecontroller:VMwareSVGAIIAdapter 查看详细信息: $lspci-v-s00:0f.0 00:0f.0VGAcompatiblecontroller:VMwareSVGAIIAdapter(prog-if00[VGAcontroller]) Subsystem:VMwareSVGAIIAdapter Flags:busmaster,mediumdevsel,latency64,IRQ16 I/Oportsat1070[size=16] Memoryate8000000(32-bit,prefetchable)[size=128M] Memoryatfe000000(32-bit,non-prefetchable)[size=8M] [virtual]ExpansionROMatc0000000[disabled][size=32K] Capabilities:<accessdenied> Kerneldriverinuse:vmwgfx Kernelmodules:vmwgfx

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册