마운트된 CIFS 파일 시스템의 파일 문제

마운트된 CIFS 파일 시스템의 파일 문제

동일한 CIFS 스토리지를 사용하는 서버(CentOS 7)가 여러 대 있는데, 한 서버에서 파일을 생성하는 문제가 발생해 이후 불안정해졌습니다.

프로세스는 다음과 같습니다.

  1. server1이 /DATA/CARTO_TEST에 데이터를 생성 중입니다.
  2. server1은 server2 API를 호출하여 새 이미지 웨어하우스를 구성합니다.
  3. server2가 동일한 /DATA/CARTO_TEST 파일에 액세스하고 있습니다.

하지만 3단계에서 이 문제에 직면했습니다.

2021-09-22 13:15:30,042 WARN [shapefile.shp] - Could not open the .shx file, continuing assuming the .shp file is not sparse
java.io.FileNotFoundException: /DATA/CARTO_TEST/TEST_LEVEL5/pyramid/2/2.shx (No such file or directory)
        at java.base/java.io.RandomAccessFile.open0(Native Method)
        at java.base/java.io.RandomAccessFile.open(RandomAccessFile.java:345)

CIFS 스토리지에서 데이터를 생성한 후 이상한 동작이 발생했습니다.

[geoproc@server1 pyramid]$ cd 10/
[geoproc@server1 10]$ ls -al
total 17
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:13 .
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:13 ..
drwxr-xr-x 2 geoproc geoproc   0 Sep 28 10:57 1
-rwxr-xr-x 1 geoproc geoproc  65 Sep 29 11:13 10.dbf
-rwxr-xr-x 1 geoproc geoproc  13 Sep 29 11:13 10.fix
-rwxr-xr-x 1 geoproc geoproc 929 Sep 29 11:13 10.prj
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shp
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shx

[geoproc@server1 10]$ rm 10.*
rm: cannot remove ‘10.shp’: No such file or directory

[geoproc@server1 10]$ ls -al
total 16
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:14 .
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:13 ..
drwxr-xr-x 2 geoproc geoproc   0 Sep 28 10:57 1
-rwxr-xr-x 1 geoproc geoproc  65 Sep 29 11:13 10.dbf
-rwxr-xr-x 1 geoproc geoproc 929 Sep 29 11:13 10.prj
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shp
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shx

[geoproc@server1 10]$ rm 10.*
rm: cannot remove ‘10.dbf’: No such file or directory
rm: cannot remove ‘10.prj’: No such file or directory
rm: cannot remove ‘10.shp’: No such file or directory
rm: cannot remove ‘10.shx’: No such file or directory

[geoproc@server1 10]$ ls -al
total 16
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:14 .
drwxr-xr-x 2 geoproc geoproc   0 Sep 29 11:13 ..
drwxr-xr-x 2 geoproc geoproc   0 Sep 28 10:57 1
-rwxr-xr-x 1 geoproc geoproc  65 Sep 29 11:13 10.dbf
-rwxr-xr-x 1 geoproc geoproc 929 Sep 29 11:13 10.prj
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shp
-rwxr-xr-x 1 geoproc geoproc 100 Sep 29 11:13 10.shx

[geoproc@server1 10]$ cat 10.prj
cat: 10.prj: No such file or directory

CIFS 스토리지는 다음 옵션을 사용하여 server1 및 server2 서버에 설치됩니다.

//<servername>/<share>$/GEOSERVER /DATA/CARTO_TEST cifs vers=2.0,noserverino,username=<username>,password=<password>,domain=<domaine name>,uid=<uid>,gid=<gid> 0 0

var/log/messages에서도 이를 읽을 수 있지만 관련성이 있는지는 확실하지 않습니다.

kernel: CIFS VFS: DFS capability contradicts DFS flag

비슷한 문제가 발생한 사람이 있습니까?

의견 있으십니까

  • 문제의 근본 원인은 무엇입니까?
  • 어떻게 해결하나요?

마운트에서 noserverino 옵션을 사용하거나 사용하지 않고 시도했습니다. 차이가 없습니다.

로컬 파일을 기반으로 빌드해 보았습니다. 여기서는 문제가 없습니다.

관련 정보