이 사이트는 전자정부 표준프레임워크 구버전(1.0 ~ 4.3) 가이드 아카이브입니다. 내용은 더 이상 갱신되지 않습니다. 최신 내용은 최신 버전 문서에서 확인하세요.

공통컴포넌트 2

디스크 속성정보 체크

개요

시스템에 존재하는 DISK, CD, USB에 대한 정보를 확인한다.

본 기능은 전자정부 표준프레임워크 공통컴포넌트 요소기술 내에 구성되어 있다.

설명

  ① 디스크 속성정보를 확인하는 기능

관련소스

관련소스
유형대상소스명설명비고
Serviceegovframework.com.utl.service.EgovSysInfo.java시스템 정보 확인 요소기술 클래스
JSPWEB_INF/jsp/egovframework/cmm/utl/EgovDiskAttrb.jsp테스트 페이지

메소드

메소드
결과값메소드명설명내용
ArrayListgetDiskAttribute()디스크속성정보 조회DISK, CD, USB에 대한 정보를 조회한다. 디스크명, 디스크속성, 디스크종류, 전체사이즈, 사용사이즈, 잔여사이즈 정보를 문자열정보로 LIST에 담아서 리턴

Input

N/A

Output

  • ArrayList 타입 : 속성정보 목록 {“hdisk1”,“disk_001”,“disk”,“2000000”,“1000000”,“1000000”}

환경설정

getDiskAttribute 메소드는 쉘스크립트의 실행결과를 활용하여 정보를 확인한다. 호출시 활용되는 쉘스크립트의 정보는 globals.properties에 등록한다.

  • globals.properties
getDiskAttribute 메소드에 해당되는 쉘 스크립트
SHELL.UNIX.getDiskAttrb= /product/jeus/egovProps/prg/getDiskAttrb.sh
  • getDiskAttrb.sh (유닉스용 디스크속성 조회 스크립트)
#$A = lspv | awk '{print $1}'

#### DISK CHECK ####
#for A in `lspv | awk '{print $1}' ` 
for A in `lsdev -Cc disk | awk '{print $1}'`
do 
    # NAME
    echo $A
    # ATTRIBUTE
    echo `lscfg -l $A  | awk -F $A '{print $2}'`
    # TYPE
    echo "disk"
    # AUTHORITY

    # SIZE
    isEq="FALSE"
    for B in `lspv | awk '{print $1}' `
    do
        if [ $A = $B ]
        then
            isEq="TRUE"
        fi
    done

    if [ $isEq = "TRUE" ]
    then
        # TOTAL SIZE 
        lspv $A | grep "TOTAL PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # USED SIZE 
        lspv $A | grep "USED PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # FREE SIZE 
        lspv $A | grep "FREE PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
    else
        echo ""
        echo ""
        echo ""
    fi 

done

#### USB CHECK ####
for A in `lsdev -Cc usb | awk '{print $1}'`
do
# NAME
echo $A
# ATTRIBUTE
echo `lscfg -l $A  | awk -F $A '{print $2}'`
# TYPE
echo "usb"
# AUTHORITY

# SIZE
    isEq="FALSE"
    for B in `lspv | awk '{print $1}' `
    do
        if [ $A = $B ]
        then
            isEq="TRUE"
        fi
    done

    if [ $isEq = "TRUE" ]
    then
        # TOTAL SIZE 
        lspv $A | grep "TOTAL PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # USED SIZE 
        lspv $A | grep "USED PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # FREE SIZE 
        lspv $A | grep "FREE PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
    else
        echo ""
        echo ""
        echo ""
    fi 

done


#### CDROM CHECK ####
for A in `lsdev -Cc cdrom | awk '{print $1}'`
do
# NAME
echo $A
# ATTRIBUTE
echo `lscfg -l $A  | awk -F $A '{print $2}'`
# TYPE
echo "cdrom"
# AUTHORITY

# SIZE
    isEq="FALSE"
    for B in `lspv | awk '{print $1}' `
    do
        if [ $A = $B ]
        then
            isEq="TRUE"
        fi
    done

    if [ $isEq = "TRUE" ]
    then
        # TOTAL SIZE 
        lspv $A | grep "TOTAL PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # USED SIZE 
        lspv $A | grep "USED PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
        # FREE SIZE 
        lspv $A | grep "FREE PPs" | awk -F"(" '{print $2}' | awk '{print $1}'
    else
        echo ""
        echo ""
        echo ""
    fi 

done

사용방법

     import egovframework.com.utl.sim.service.EgovSysInfo;
 
     //디스크명, 디스크속성, 디스크종류, 전체사이즈, 사용사이즈, 잔여사이즈 항목이 순차적으로 등록됨
     ArrayList result = EgovSysInfo.getDiskAttribute();
 

참고자료

N/A

원본 페이지 ID
egovframework:디스크속성정보체크
원본 수정일