{"id":11355,"date":"2018-06-20T17:33:03","date_gmt":"2018-06-20T15:33:03","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/"},"modified":"2023-06-09T16:57:55","modified_gmt":"2023-06-09T14:57:55","slug":"migrating-from-asmlib-to-asmfd","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/","title":{"rendered":"Migrating from ASMLIB to ASMFD"},"content":{"rendered":"<p><strong>By Mouhamadou Diaw<\/strong><\/p>\n<p>Before Oracle 12.1 the methods used to configure ASM were<br \/>\n\u2022 udev<br \/>\n\u2022 asmlib<br \/>\nOracle 12.1 comes with a new method called Oracle ASM Filter Driver (Oracle ASMFD).<br \/>\nIn Oracle documentation we can find following:<br \/>\n<em>Oracle ASM Filter Driver (Oracle ASMFD) is a kernel module that resides in the I\/O path of the Oracle ASM disks. Oracle ASM uses the filter driver to validate write I\/O requests to Oracle ASM disks.<br \/>\nThe Oracle ASMFD simplifies the configuration and management of disk devices by eliminating the need to rebind disk devices used with Oracle ASM each time the system is restarted.<br \/>\nThe Oracle ASM Filter Driver rejects any I\/O requests that are invalid. This action eliminates accidental overwrites of Oracle ASM disks that would cause corruption in the disks and files within the disk group. For example, the Oracle ASM Filter Driver filters out all non-Oracle I\/Os which could cause accidental overwrites.<\/em><\/p>\n<p>In the following blog I am going to migrate from asmlib to asmfd. I am using a cluster 12.1 with 2 nodes.<\/p>\n<p>Below we present our actual configuration.<\/p>\n<div>\n<div id=\"highlighter_310002\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<div class=\"line number23 index22 alt2\">23<\/div>\n<div class=\"line number24 index23 alt1\">24<\/div>\n<div class=\"line number25 index24 alt2\">25<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># crsctl check cluster -all<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">**************************************************************<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">rac12a:<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">CRS-4537: Cluster Ready Services is online<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">CRS-4529: Cluster Synchronization Services is online<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">CRS-4533: Event Manager is online<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">**************************************************************<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">rac12b:<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">CRS-4537: Cluster Ready Services is online<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">CRS-4529: Cluster Synchronization Services is online<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">CRS-4533: Event Manager is online<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">**************************************************************<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><\/div>\n<div class=\"line number15 index14 alt2\"><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># crsctl get cluster mode status<\/code><\/div>\n<div class=\"line number17 index16 alt2\"><code class=\"bash plain\">Cluster is running <\/code><code class=\"bash keyword\">in<\/code> <code class=\"bash string\">\"flex\"<\/code> <code class=\"bash plain\">mode<\/code><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># ps -ef | grep pmon<\/code><\/div>\n<div class=\"line number21 index20 alt2\"><code class=\"bash plain\">grid\u00a0\u00a0\u00a0\u00a0\u00a0 7217\u00a0\u00a0\u00a0\u00a0 1\u00a0 0 11:20 ?\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 00:00:00 asm_pmon_+ASM1<\/code><\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"bash plain\">grid\u00a0\u00a0\u00a0\u00a0\u00a0 8070\u00a0\u00a0\u00a0\u00a0 1\u00a0 0 11:21 ?\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 00:00:00 apx_pmon_+APX1<\/code><\/div>\n<div class=\"line number23 index22 alt2\"><code class=\"bash plain\">oracle\u00a0\u00a0\u00a0 8721\u00a0\u00a0\u00a0\u00a0 1\u00a0 0 11:22 ?\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 00:00:00 ora_pmon_mydb_1<\/code><\/div>\n<div class=\"line number24 index23 alt1\"><code class=\"bash plain\">root\u00a0\u00a0\u00a0\u00a0 14395\u00a0 2404\u00a0 0 11:32 pts<\/code><code class=\"bash plain\">\/0<\/code>\u00a0\u00a0\u00a0 <code class=\"bash plain\">00:00:00 <\/code><code class=\"bash functions\">grep<\/code> <code class=\"bash plain\">--color=auto pmon<\/code><\/div>\n<div class=\"line number25 index24 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>First let\u2019s get information about our ASM disks. We will use these outputs later to migrate the disks to ASMFD disks<\/p>\n<div>\n<div id=\"highlighter_847425\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># oracleasm listdisks | xargs oracleasm querydisk -p\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_DATA\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">\/dev\/sdc1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_DATA\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_DIVERS\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">\/dev\/sdd1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_DIVERS\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_OCR1\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">\/dev\/sdg1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_OCR1\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_OCR2\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">\/dev\/sdi1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_OCR2\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_VOT1\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">\/dev\/sde1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_VOT1\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_VOT2\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">\/dev\/sdh1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_VOT2\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"bash plain\">Disk <\/code><code class=\"bash string\">\"ASM_VOT3\"<\/code> <code class=\"bash plain\">is a valid ASM disk<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"bash plain\">\/dev\/sdf1<\/code><code class=\"bash plain\">: LABEL=<\/code><code class=\"bash string\">\"ASM_VOT3\"<\/code> <code class=\"bash plain\">TYPE=<\/code><code class=\"bash string\">\"oracleasm\"<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>To migrate to ASMFD, we first have to change the value of the parameter diskstring for the ASM instance. The actual value can be get by using<\/p>\n<div>\n<div id=\"highlighter_950006\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd dsget<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">parameter:ORCL:*<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">profile:ORCL:*<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[grid@rac12a trace]$<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Let\u2019s set the new value on both nodes<\/p>\n<div>\n<div id=\"highlighter_664328\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">grid@rac12a trace]$ asmcmd dsset <\/code><code class=\"bash string\">'ORCL:*'<\/code><code class=\"bash plain\">,<\/code><code class=\"bash string\">'AFD:*'<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can then verify<\/p>\n<div>\n<div id=\"highlighter_244253\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd dsget<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">parameter:ORCL:*, AFD:*<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">profile:ORCL:*,AFD:*<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[grid@rac12a trace]$<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Once the new value of the diskstring set, let stop the cluster on both nodes<\/p>\n<div>\n<div id=\"highlighter_603505\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># crsctl stop cluster<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\"># crsctl stop cluster<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Once the cluster is stopped we have to disable and stop asmlib on both nodes<\/p>\n<div>\n<div id=\"highlighter_188552\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># systemctl disable oracleasm<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Removed <\/code><code class=\"bash functions\">symlink<\/code> <code class=\"bash plain\">\/etc\/systemd\/system\/multi-user<\/code><code class=\"bash plain\">.target.wants<\/code><code class=\"bash plain\">\/oracleasm<\/code><code class=\"bash plain\">.service.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># oracleasm status<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">Checking <\/code><code class=\"bash keyword\">if<\/code> <code class=\"bash plain\">ASM is loaded: <\/code><code class=\"bash functions\">yes<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">Checking <\/code><code class=\"bash keyword\">if<\/code> <code class=\"bash plain\">\/dev\/oracleasm<\/code> <code class=\"bash plain\">is mounted: <\/code><code class=\"bash functions\">yes<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># oracleasm exit<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">Unmounting ASMlib driver filesystem: <\/code><code class=\"bash plain\">\/dev\/oracleasm<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">Unloading module <\/code><code class=\"bash string\">\"oracleasm\"<\/code><code class=\"bash plain\">: oracleasm<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># ls -ltr \/dev\/oracleasm\/<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"bash plain\">total 0<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Now let\u2019s remove all packages relative to ASMLIB on both nodes<\/p>\n<div>\n<div id=\"highlighter_351326\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\"># rpm -e oracleasm-support-2.1.11-2.el7.x86_64 oracleasmlib-2.0.12-1.el7.x86_64<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">warning: <\/code><code class=\"bash plain\">\/etc\/sysconfig\/oracleasm<\/code> <code class=\"bash plain\">saved as <\/code><code class=\"bash plain\">\/etc\/sysconfig\/oracleasm<\/code><code class=\"bash plain\">.rpmsave<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>The next step is to stop acfsload on both nodes<\/p>\n<div>\n<div id=\"highlighter_995168\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># lsmod | grep acfs<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">oracleacfs\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3343483\u00a0 0<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">oracleoks\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 500109\u00a0 2 oracleacfs,oracleadvm<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># acfsload stop<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># lsmod | grep acfs<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>As root, we can now configure Oracle ASMFD to filter at the node level. In my case steps were done on both nodes<\/p>\n<div>\n<div id=\"highlighter_608542\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\"># asmcmd afd_configure<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">AFD-627: AFD distribution files found.<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">AFD-636: Installing requested AFD software.<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">AFD-637: Loading installed AFD drivers.<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">AFD-9321: Creating udev <\/code><code class=\"bash keyword\">for<\/code> <code class=\"bash plain\">AFD.<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">AFD-9323: Creating module dependencies - this may take some <\/code><code class=\"bash functions\">time<\/code><code class=\"bash plain\">.<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">AFD-9154: Loading <\/code><code class=\"bash string\">'oracleafd.ko'<\/code> <code class=\"bash plain\">driver.<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">AFD-649: Verifying AFD devices.<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">AFD-9156: Detecting control device <\/code><code class=\"bash string\">'\/dev\/oracleafd\/admin'<\/code><code class=\"bash plain\">.<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">AFD-638: AFD installation correctness verified.<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Once the configuration done, we can check AFD state on all nodes<\/p>\n<div>\n<div id=\"highlighter_100481\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\"># asmcmd afd_state<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">ASMCMD-9526: The AFD state is <\/code><code class=\"bash string\">'LOADED'<\/code> <code class=\"bash plain\">and filtering is <\/code><code class=\"bash string\">'DISABLED'<\/code> <code class=\"bash plain\">on host <\/code><code class=\"bash string\">'rac12a.localdomain'<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[root@rac12a oracle]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can see that afd module is loaded but the filtering is disabled. We then have to edit the oracleafd.conf to enable the filtering<\/p>\n<div>\n<div id=\"highlighter_631396\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># cat oracleafd.conf<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">afd_diskstring=<\/code><code class=\"bash string\">'\/dev\/sd*1'<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>And then we have to run on both nodes<\/p>\n<div>\n<div id=\"highlighter_732317\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_filter -e<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\">#\u00a0 asmcmd afd_filter -e<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Running again the afd_state command, we can confirm that the filtering is now enabled.<\/p>\n<div>\n<div id=\"highlighter_614390\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_state<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">ASMCMD-9526: The AFD state is <\/code><code class=\"bash string\">'LOADED'<\/code> <code class=\"bash plain\">and filtering is <\/code><code class=\"bash string\">'ENABLED'<\/code> <code class=\"bash plain\">on host <\/code><code class=\"bash string\">'rac12a.localdomain'<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Now we can migrate all asm disks.<\/p>\n<div>\n<div id=\"highlighter_785208\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_DATA \/dev\/sdc1 --migrate<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_DIVERS \/dev\/sdd1 --migrate<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_OCR1 \/dev\/sdg1 --migrate<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_OCR2 \/dev\/sdi1 --migrate<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_VOT1 \/dev\/sde1 --migrate<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_VOT2 \/dev\/sdh1 --migrate<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># asmcmd afd_label ASM_VOT3 \/dev\/sdf1 --migrate<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can verify the ASMFD disks using the command<\/p>\n<div>\n<div id=\"highlighter_401240\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\"># asmcmd afd_lsdsk<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Connected to an idle instance.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">--------------------------------------------------------------------------------<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">Label\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Filtering\u00a0\u00a0 Path<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">================================================================================<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">ASM_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdc1<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">ASM_DIVERS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdd1<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">ASM_OCR1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdg1<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">ASM_OCR2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdi1<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">ASM_VOT1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sde1<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">ASM_VOT2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdh1<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">ASM_VOT3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ENABLED\u00a0\u00a0 <\/code><code class=\"bash plain\">\/dev\/sdf1<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Let&#8217;s update the afd.conf so that ASMFD can mount ASMFD disks.<\/p>\n<div>\n<div id=\"highlighter_624668\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># cat afd.conf<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">afd_diskstring=<\/code><code class=\"bash string\">'\/dev\/sd*'<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">afd_filtering=<\/code><code class=\"bash functions\">enable<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>When the ASMFD disks are visible on both nodes, we can start acsfload on both nodes<\/p>\n<div>\n<div id=\"highlighter_679034\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\"># acfsload start<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">ACFS-9391: Checking <\/code><code class=\"bash keyword\">for<\/code> <code class=\"bash plain\">existing ADVM<\/code><code class=\"bash plain\">\/ACFS<\/code> <code class=\"bash plain\">installation.<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">ACFS-9392: Validating ADVM<\/code><code class=\"bash plain\">\/ACFS<\/code> <code class=\"bash plain\">installation files <\/code><code class=\"bash keyword\">for<\/code> <code class=\"bash plain\">operating system.<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">ACFS-9393: Verifying ASM Administrator setup.<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">ACFS-9308: Loading installed ADVM<\/code><code class=\"bash plain\">\/ACFS<\/code> <code class=\"bash plain\">drivers.<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">ACFS-9154: Loading <\/code><code class=\"bash string\">'oracleoks.ko'<\/code> <code class=\"bash plain\">driver.<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">ACFS-9154: Loading <\/code><code class=\"bash string\">'oracleadvm.ko'<\/code> <code class=\"bash plain\">driver.<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">ACFS-9154: Loading <\/code><code class=\"bash string\">'oracleacfs.ko'<\/code> <code class=\"bash plain\">driver.<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">ACFS-9327: Verifying ADVM<\/code><code class=\"bash plain\">\/ACFS<\/code> <code class=\"bash plain\">devices.<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">ACFS-9156: Detecting control device <\/code><code class=\"bash string\">'\/dev\/asm\/.asm_ctl_spec'<\/code><code class=\"bash plain\">.<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"bash plain\">ACFS-9156: Detecting control device <\/code><code class=\"bash string\">'\/dev\/ofsctl'<\/code><code class=\"bash plain\">.<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"bash plain\">ACFS-9322: completed<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"bash plain\">[root@rac12a etc]<\/code><code class=\"bash comments\">#<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Now the conversion is done and we can start crs on both nodes<\/p>\n<div>\n<div id=\"highlighter_949764\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[root@rac12a ~]<\/code><code class=\"bash comments\"># crsctl start crs<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">[root@rac12b ~]<\/code><code class=\"bash comments\"># crsctl start crs<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can remove all asmlib references in the parameter diskstring<\/p>\n<div>\n<div id=\"highlighter_917277\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd dsget<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">parameter:ORCL:*, AFD:*<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">profile:ORCL:*,AFD:*<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd dsset <\/code><code class=\"bash string\">'AFD:*'<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd dsget<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">parameter:AFD:*<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">profile:AFD:*<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">[grid@rac12a trace]$<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Once the cluster started, we can verify the disk names<\/p>\n<div>\n<div id=\"highlighter_935664\" class=\"syntaxhighlighter  bash\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"bash plain\">[grid@rac12a trace]$ asmcmd lsdsk<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"bash plain\">Path<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"bash plain\">AFD:ASM_DATA<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"bash plain\">AFD:ASM_DIVERS<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"bash plain\">AFD:ASM_OCR1<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"bash plain\">AFD:ASM_OCR2<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"bash plain\">AFD:ASM_VOT1<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"bash plain\">AFD:ASM_VOT2<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"bash plain\">AFD:ASM_VOT3<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"bash plain\">[grid@rac12a trace]$<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can also use following command to confirm that now ASMFD is being used<\/p>\n<div>\n<div id=\"highlighter_410238\" class=\"syntaxhighlighter  sql\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<div class=\"line number23 index22 alt2\">23<\/div>\n<div class=\"line number24 index23 alt1\">24<\/div>\n<div class=\"line number25 index24 alt2\">25<\/div>\n<div class=\"line number26 index25 alt1\">26<\/div>\n<div class=\"line number27 index26 alt2\">27<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"sql keyword\">set<\/code> <code class=\"sql plain\">linesize 300<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"sql plain\">col PATH <\/code><code class=\"sql keyword\">for<\/code> <code class=\"sql plain\">a20<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"sql keyword\">set<\/code> <code class=\"sql plain\">pages 20<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"sql plain\">col LIBRARY <\/code><code class=\"sql keyword\">for<\/code> <code class=\"sql plain\">a45<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"sql plain\">col <\/code><code class=\"sql keyword\">NAME<\/code> <code class=\"sql keyword\">for<\/code> <code class=\"sql plain\">a15<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"sql keyword\">select<\/code> <code class=\"sql plain\">inst_id,group_number grp_num,<\/code><code class=\"sql keyword\">name<\/code><code class=\"sql plain\">,state,header_status header,mount_status mount,path, library<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"sql keyword\">from<\/code> <code class=\"sql plain\">gv$asm_disk <\/code><code class=\"sql keyword\">order<\/code> <code class=\"sql keyword\">by<\/code> <code class=\"sql plain\">inst_id,group_number,<\/code><code class=\"sql keyword\">name<\/code><code class=\"sql plain\">;<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><\/div>\n<div class=\"line number9 index8 alt2\"><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">INST_ID\u00a0\u00a0\u00a0 GRP_NUM <\/code><code class=\"sql keyword\">NAME<\/code>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <code class=\"sql plain\">STATE\u00a0\u00a0\u00a0 HEADER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 MOUNT\u00a0\u00a0 PATH\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 LIBRARY<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"sql comments\">---------- ---------- --------------- -------- ------------ ------- -------------------- ---------------------------------------------<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1 ASM_DIVERS\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_DIVERS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 ASM_OCR1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_OCR1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 ASM_OCR2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_OCR2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3 ASM_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number17 index16 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 1 ASM_DIVERS\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_DIVERS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 ASM_OCR1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_OCR1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number21 index20 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2 ASM_OCR2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_OCR2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 3 ASM_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number23 index22 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number24 index23 alt1\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number25 index24 alt2\"><code class=\"sql spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"sql plain\">2\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 4 ASM_VOT3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 NORMAL\u00a0\u00a0 MEMBER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 CACHED\u00a0 AFD:ASM_VOT3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 AFD Library - Generic , version 3 (KABI_V3)<\/code><\/div>\n<div class=\"line number26 index25 alt1\"><\/div>\n<div class=\"line number27 index26 alt2\"><code class=\"sql plain\">14 <\/code><code class=\"sql keyword\">rows<\/code> <code class=\"sql plain\">selected.<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>By Mouhamadou Diaw Before Oracle 12.1 the methods used to configure ASM were \u2022 udev \u2022 asmlib Oracle 12.1 comes with a new method called Oracle ASM Filter Driver (Oracle ASMFD). In Oracle documentation we can find following: Oracle ASM Filter Driver (Oracle ASMFD) is a kernel module that resides in the I\/O path of [&hellip;]<\/p>\n","protected":false},"author":27,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[37,1376,1377,1378,1379],"type_dbi":[],"class_list":["post-11355","post","type-post","status-publish","format-standard","hentry","category-database-administration-monitoring","tag-asm","tag-asmfd","tag-asmlib","tag-grid-infrastrure","tag-oracle-12-1"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Migrating from ASMLIB to ASMFD - dbi Blog<\/title>\n<meta name=\"description\" content=\"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Migrating from ASMLIB to ASMFD\" \/>\n<meta property=\"og:description\" content=\"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-20T15:33:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-09T14:57:55+00:00\" \/>\n<meta name=\"author\" content=\"Oracle Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oracle Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\"},\"author\":{\"name\":\"Oracle Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"headline\":\"Migrating from ASMLIB to ASMFD\",\"datePublished\":\"2018-06-20T15:33:03+00:00\",\"dateModified\":\"2023-06-09T14:57:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\"},\"wordCount\":475,\"commentCount\":2,\"keywords\":[\"ASM\",\"asmfd\",\"asmlib\",\"grid infrastrure\",\"oracle 12.1\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\",\"name\":\"Migrating from ASMLIB to ASMFD - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2018-06-20T15:33:03+00:00\",\"dateModified\":\"2023-06-09T14:57:55+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"description\":\"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Migrating from ASMLIB to ASMFD\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\",\"name\":\"Oracle Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"caption\":\"Oracle Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Migrating from ASMLIB to ASMFD - dbi Blog","description":"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/","og_locale":"en_US","og_type":"article","og_title":"Migrating from ASMLIB to ASMFD","og_description":"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd","og_url":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/","og_site_name":"dbi Blog","article_published_time":"2018-06-20T15:33:03+00:00","article_modified_time":"2023-06-09T14:57:55+00:00","author":"Oracle Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Oracle Team","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/"},"author":{"name":"Oracle Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"headline":"Migrating from ASMLIB to ASMFD","datePublished":"2018-06-20T15:33:03+00:00","dateModified":"2023-06-09T14:57:55+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/"},"wordCount":475,"commentCount":2,"keywords":["ASM","asmfd","asmlib","grid infrastrure","oracle 12.1"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/","url":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/","name":"Migrating from ASMLIB to ASMFD - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2018-06-20T15:33:03+00:00","dateModified":"2023-06-09T14:57:55+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"description":"grid infrastrure, ASM, oracle 12.1 , asmlib, asmfd","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/migrating-from-asmlib-to-asmfd\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Migrating from ASMLIB to ASMFD"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee","name":"Oracle Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","caption":"Oracle Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11355","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=11355"}],"version-history":[{"count":1,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11355\/revisions"}],"predecessor-version":[{"id":25770,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/11355\/revisions\/25770"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=11355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=11355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=11355"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=11355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}