Search Results for '명령어'

2 POSTS

  1. 2008.10.24 필수 AIX 명령어
  2. 2008.10.01 oracle sqlplus 명령 모음

필수 AIX 명령어

Posted 2008. 10. 24. 04:24


필수 AIX 명령어

developerWorks
문서 옵션
이 페이지를 이메일로 보내기
'); //-->
이 페이지를 이메일로 보내기

난이도 : 중급
Shiv Dutta, Technical Consultant, IBM
2003 년 5 월 06 일
2005 년 6 월 14 일 수정
AIX®와 pSeries® 서버로 작업할 때 스스로 문제를 해결하고 싶은가? 전문가의 도움을 받지 않고 시간을 절약하기를 바라는가? Shiv Dutta가 AIX 필수 명령어들을 설명한다.
알다시피 AIX는 많은 명령어들이 있다. 이를 통해서 여러 가지 많은 작업들을 수행할 수 있다. 여러분의 필요에 따라, 이들 명령어들 중 일부만 사용할 수 있을 뿐이다. 사용되는 명령어는 사용자 마다, 그리고 필요마다 다르다. 하지만 공통적으로 사용되는 몇 가지 핵심 명령어들이 있다.
이 글에서 이러한 핵심 명령어들을 설명할 것이다. 여기에서 설명하는 명령어는 모든 AIX 릴리스에서 동일하게 작동하지만 테스트는 AIX 5.3에서 수행되었다.
주:
다음 섹션에서 논의될 bootinfo 명령어는 사용자 레벨 명령어가 아니며, AIX 4.2 이후 버전에서는 지원되지 않는다.



위로


32-bit 커널 또는 64-bit 커널을 실행하고 있다면 이를 어떻게 알 수 있는가?
커널이 32-bit를 실행하는지 아니면 64-bit를 실행하는지를 알고 싶다면 다음 명령어를 사용한다.
bootinfo -K

유니프로세서 커널을 실행하는지, 멀티프로세서 커널을 실행하는지 알려면?
/unix는 부팅된 커널에 대한 심볼릭 링크이다. 어떤 커널 모드가 실행되는지 알고 싶다면 ls -l /unix를 입력하고 어떤 /unix 파일이 링크 되었는지를 본다. 다음은 명령어에서 나올 수 있는 세 가지 아웃풋과 상응하는 커널이다.
 /unix -> /usr/lib/boot/unix_up # 32 bit uniprocessor kernel /unix -> /usr/lib/boot/unix_mp # 32 bit multiprocessor kernel /unix -> /usr/lib/boot/unix_64 # 64 bit multiprocessor kernel 

주:
AIX 5L Version 5.3은 유니프로세서 커널을 지원하지 않는다.
한 개의 커널 모드에서 또 다른 커널 모드로 변경하려면?
설치 프로세스 동안, AIX 버전과 하드웨어에 맞는 커널들 중 하나가 기본적으로 실행된다. 이전 질문에서 메소드를 사용하여 32-bit 커널이 실행된다고 가정해 보자. 이를 64-bit 커널 모드에서 부팅해야 된다고 가정해 보자. 다음과 같은 명령어를 연속적으로 실행한다.
 ln -sf /usr/lib/boot/unix_64 /unix ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix bosboot -ad /dev/hdiskxx shutdown -r 

/dev/hdiskxx 디렉토리는 부트 논리적 볼륨인 /dev/hd5이 위치한 곳이다. 어떤 xx가 hdiskxx에 있는지 알려면 다음 명령어를 실행한다.
  lslv -m hd5 

주:
AIX 5.2에서, 32-bit 커널은 기본적으로 설치된다. AIX 5.3에서, 64-bit 커널은 64-bit 하드웨어에 설치되고, 32-bit 커널은 32-bit 하드웨어에 기본적으로 설치된다.
내 머신이 AIX 5L Version 5.3을 실행할 수 있는지의 여부를 알려면?
AIX 5L Version 5.3은 현재 모든 CHRP(Common Hardware Reference Platform) 기반 POWER 하드웨어에서 실행된다.
내 머신이 CHRP 기반인지를 어떻게 아는가?
prtconf 명령어를 실행한다. 이것이 CHRP 머신이면 chrp 스트링이 Model Architecture 라인에 나타난다.
내 pSeries 머신(하드웨어)가 32-bit인지 아니면 64-bit인지 알 수 있는 방법은?
다음 명령어를 사용한다.
bootinfo -y

머신의 실제 메모리가 얼마나 되는지 알고 싶다면?
실제 메모리(kilobytes (KB))를 알고 싶다면 다음 명령어를 사용한다.
bootinfo -r 

lsattr -El sys0 -a realmem 

내 머신이 64-bit 커널을 실행할 수 있을까?
64-bit 커널을 실행하려면 64-bit 하드웨어가 필요하다.
내 시스템 장치에 필요한 애트리뷰트 값은?
테이프 장치(rmt0)용 애트리뷰트 값을 알려면:
 lsattr -l rmt0 -E

테이프 장치(rmt0)용 디폴트 애트리뷰트 값을 알려면:
lsattr -l rmt0 -D

TTY 장치(tty0)용 로그인 애트리뷰트 값을 알려면:
lsattr -l tty0 -a login -R

시스템 레벨 애트리뷰트를 디스플레이 하려면:
lsattr -E -l sys0

시스템이 얼마나 많은 프로세서를 갖고 있는가?
다음 명령어를 사용한다.
lscfg | grep proc

시스템이 보유한 하드 디스크의 수와 사용중인 하드 디스크를 알려면?
다음 명령어를 사용한다.
lspv

시스템에 대한 상세한 설정을 보려면?
다음 명령어를 사용한다.
 lscfg

아래 옵션들은 특별한 정보를 제공한다.
-p 플랫폼 스팩의 장치 정보를 디스플레이 한다. 이 플래그는 AIX 4.2.1과 이후 버전에 적용된다.
-v 커스터마이징된 VPD 객체 클래스에서 발견된 VPD를 디스플레이 한다.
테이프 드라이브(rmt0)에 대한 자세한 정보를 디스플레이 하려면:
 lscfg -vl rmt0

prtconf 명령어를 실행하면 비슷한 정보를 얻을 수 있다.
칩 유형, 시스템 이름, 노드 이름, 모델 번호 등을 알려면?
uname 명령어가 시스템에 대한 제세한 정보를 제공한다.
uname -p 시스템의 칩 유형을 디스플레이 한다. 예를 들어, PowerPC.
uname -r 운영 체계의 릴리스 번호를 디스플레이 한다.
uname -s 시스템 이름을 디스플레이 한다. 예를 들어, AIX.
uname -n 노드 이름을 디스플레이 한다.
uname -a 시스템 이름, nodename, 버전, 머신 ID를 디스플레이 한다.
uname -M 시스템 모델 이름을 디스플레이 한다. 예를 들어, 9114-275.
uname -v 운영 체계 버전을 디스플레이 한다.
uname -m 시스템이 실행되는 하드웨어의 머신 ID 번호를 디스플레이 한다.
uname -u 시스템 아이디 ID 번호를 디스플레이 한다.
AIX의 어떤 버전, 릴리스, 관리 레벨 등이 내 시스템에서 실행되고 있는가?
다음 명령어를 사용한다.
oslevel -r

lslpp -h bos.rte

파일시스템 크기를 변경하는 방법은?
/usr 파일시스템 크기를 1000000 512-byte 블록으로 늘리려면:
chfs -a size=+1000000 /usr

주:
AIX 5.3에서 JFS2 파일 시스템의 크기는 줄어들 수도 있다.
CD를 마운트 하려면?
다음 명령어를 사용한다.
mount -V cdrfs -o ro /dev/cd0 /cdrom

머신의 IP 주소를 얻으려면?
다음 명령어를 사용한다.
ifconfig -a

host Fully_Qualified_Host_Name 

예를 들어, host cyclop.austin.ibm.com.
어떤 파일세트가 특정 바이너리를 포함하고 있는가?
bos.acct/usr/bin/vmstat를 포함하고 있다는 것을 확인하려면:
lslpp -w /usr/bin/vmstat

또는, bos.perf.tools/usr/bin/svmon을 포함하고 있다는 것을 보여주려면:
which_fileset svmon

관리 레벨의 모든 파일세트가 내 시스템에 설치되어 있는지를 확인하려면?
다음을 명령어를 사용한다.
instfix -i | grep ML

시스템에 픽스가 설치되었는지를 알고 싶다면?
IY24043가 설치되었는지를 알려면:
instfix -ik IY24043

파일세트가 필요한 사전 조건들을 갖추고 있고 완벽히 설치되어 있다는 것을 확인하려면?
어떤 파일세트가 설치 또는 수정되어야 하는지를 알려면:
lppchk -v

심볼릭 표현에서 로더 섹션의 헤더의 덤프와 심볼 엔트리를 얻으려면?
다음 명령어를 사용한다.
dump -Htv

페이징 공간 할당과 사용을 결정하려면?
다음 명령어를 사용한다.
lsps -a

내 시스템이 Simultaneous Multi-threading(SMT)를 사용할 수 있는지의 여부를 알려면?
AIX 5L Version 5.3을 실행하는 POWER5 기반 시스템이라면 SMT가 가능하다.
SMT가 내 시스템에서 실행되는지를 아는 방법은?
옵션 없이 smtctl 명령어를 실행하면 실행 여부를 알려준다.
SMT가 32-bit 커널에도 지원되는가?
그렇다. SMT는 32-bit와 64-bit 커널 모두 지원된다.
SMT를 실행하는 또는 실행하지 않는 방법은?
smtctl 명령어를 실행한다. 구문은 다음과 같다.
 smtctl [ -m off | on [ -w boot | now]]

다음 옵션들을 사용할 수 있다.
-m off SMT 모드를 실행하지 않도록 설정한다.
-m on SMT 모드가 실행되도록 설정한다.
-w boot 다음 시스템 재부팅 전에 bosboot를 실행하면 다음 번 재부팅에 SMT 변경이 적용된다.
-w now SMT 모드를 일시적으로 변경하지만 재부팅 까지는 지속되지 않는다.
-w boot 또는 -w now 옵션이 지정되지 않았다면 모드 변경은 일시적으로 발생한다. 다음에 시스템을 재부팅 하기 전에 bosboot 명령어를 실행하면 후속 재부팅까지 지속된다.
파티션 스팩의 정보와 통계를 알고 싶다면?
lparstat 명령어는 파티션 정보 리포트와 사용 통계를 제공한다. 또한 하이퍼바이저 정보를 디스플레이 한다.
볼륨 그룹이 정상인지, 큰지, 확장 가능한지를 알고 싶다면?
볼륨 그룹에 lsvg 명령어를 실행하고 MAX PV의 값을 확인한다. 값이 32 면 정상이고, 128 이면 큰 것이고, 1024 확장성 볼륨 그룹이다.
볼륨 그룹을 만드는 방법은?
아래 명령어를 사용하면 s partition_size가 각 물리적 파티션에 있는 메가바이트(MB)의 수를 설정한다. 물리적 파티션에서는 partition_size가 MB 단위로 1 에서 1024 까지 나타난다.(AIX 5.3의 경우 1 에서 131072 까지다.) partition_size 변수는 2의 제곱과 같다. (예를 들어: 1, 2, 4, 8). 표준 볼륨 그룹과 큰 볼륨 그룹의 디폴트 값은 가장 적은 값이다. 물리적 볼륨 당 1016 물리적 파티션이 그 한도이다. 확장성 볼륨 그룹의 디폴트 값은 물리적 볼륨 당 2040 물리적 파티션을 수용할 수 있는 가장 적은 값이다.
 mkvg -y name_of_volume_group -s partition_size list_of_hard_disks 

논리적 볼륨을 만드는 방법은?
다음 명령어를 사용한다.
 mklv -y name_of_logical_volume name_of_volume_group number_of_partition 

볼륨 그룹에 대한 쿼리
시스템에 볼륨 그룹을 보려면:
lsvg

rootvg의 모든 특징을 알려면:
lsvg rootvg

rootvg에서 사용되는 디스크를 보려면:
lsvg -p rootvg

디스크를 볼륨 그룹에 추가하는 방법은?
다음 명령어를 사용한다.
 extendvg VolumeGroupName hdisk0 hdisk1 ... hdiskn 

내 하드 디스크에서 최대로 지원되는 논리적 트랙 그룹(LTG) 크기를 알려면?
lquerypv 명령어와 -M 플래그를 함께 사용한다. KB 단위로 LTG 크기를 보여준다. 아래 예제의 경우, hdisk0의 LTG 크기는 256 KB이다.
 /usr/sbin/lquerypv -M hdisk0 256 

하드 디스크 상에 lspv 명령어를 실행하여 MAX REQUEST의 값을 볼 수 있다.
디스크를 바꾸려면?
  1. extendvg VolumeGroupName  hdisk_new
  2. migratepv hdisk_bad hdisk_new
  3. reducevg -d VolumeGroupName hdisk_bad
논리적 볼륨을 미러링 하려면?
  1. mklvcopy LogicalVolumeName Numberofcopies
  2. syncvg VolumeGroupName
rootvg를 복사(복제) 하려면?
alt_disk_copy 명령어를 실행하여 현재 rootvg를 대체 디스크에 복사한다. 아래 예제는 rootvg을 hdisk1에 복제하는 방법이다.
 alt_disk_copy -d hdisk1 

네트워크 매개변수에 대한 값을 디스플레이 또는 설정하려면?
no 명령어가 네트워크 튜닝 매개변수에 대한 현재 또는 앞으로의 부트 값을 설정 및 디스플레이 한다.



위로


지금까지 설명한 명령어 리스트가 분명 도움이 될 것이다. 하지만 이것이 다는 아니다. 유용하다고 생각되는 여러 가지 다른 명령어들도 여러분이 얼마든지 추가할 수 있다.



위로





위로


Shiv Dutta, Technical Consultant, IBM.

 

'OS 운영체제 및 보안 > AIX' 카테고리의 다른 글

항목별 명령어  (0) 2008.10.24
AIX 명령어  (0) 2008.10.24

oracle sqlplus 명령 모음

Posted 2008. 10. 1. 10:41

시작

데이터베이스 시작하기
SQL> STARTUP

단계별로 시작하기
SQL> STARTUP NOMOUNT; //NOMOUNT 단계
SQL> ALTER DATABASE MOUNT; //MOUNT 단계
SQL> ALTER DATABASE OPEN; //OPEN 단계

옵션 사용하여 시작하기
SQL> STARTUP RESTRICT; //OPEN 단계까지 구동. 일반 사용자 사용 금지
SQL> STARTUP FORCE; //자동 종료 후 다시 시작
SQL> STARTUP PFILE; //파라미터 파일을 별도로 설정
SQL> STARTUP EXCLUSIVE MOUNT; //마운트 상태로 시작. 일반 사용자 접속 금지

시작 후 몇 가지 실행

RESTRICT 사용하여 시작하였을 때 모든 사용자가 접근할 수 있게 변경하기
SQL> ALTER SYSTEM DISABLE RESTRICTED SESSION;

메모리 영역 확인으로 정상 구동 여부 확인하기
SQL> show sga

생성되어 있는 사용자 확인하기
SQL> SELECT * FROM ALL_USERS;

자료사전 테이블 조회하기
SQL> SELECT * FROM V$SGA; //메모리 영역 정보 참조
SQL> SHOW SGA; //메모리 영역 정보 참조
SQL> SELECT * FORM V$PARAMETER; //DB 환경 정보 참조
SQL> SHOW PARAMETER; //DB 환경 정보 참조
SQL> SELECT * FROM DBA_USERS; //일반적인 자료 사전. 오픈 단계가 되어야 사용 가능

※ SYS 사용자와 SYSTEM 사용자가 만든 테이블을 자료사전(Data Dictionary)라고 한다.

종료

종료하기
SQL> shutdown normal //CLOSE단계->DISMOUNT단계->DISCONNECT단계. 사용자 접속 해제(disconnect)까지 기다렸다가 종료
SQL> shutdown //normal 옵션 사용과 동일

옵션과 함께 종료하기
SQL> SHUTDOWN TRANSACTINAL //사용자가 트랜잭션 종료까지 기다렸다가 종료
SQL> SHUTDOWN IMMEDIATE //즉시 종료. 사용자 존재 시 모든 트랜잭션은 롤백된다
SQL> SHUTDOWN ABORT //트랜잭션 롤백하지 않고 즉시 강제 종료. 정전 발생 시와 같다. 백업과 복구 작업 시에나 사용

SQL*PLUS 명령어

SQL*PLUS 실행 명령어
SQL> / //SQL문 또는 PL/SQL 블록을 실행한다
SQL> RUN //SQL문 또는 PL/SQL 블록을 실행한다
SQL> HELP //SQL, PL/SQL, SQL/PLUS 명령어 온라인 도움말
SQL> HOST //EXIT로 정상 종료하지 않고 호스트 운영체제로 빠져나갔다가 다시 복귀할 수 있다
SQL> TIMING //시스템의 CPU 사용 시간을 보여준다

SQL*PLUS 편집 명령어 (입력되는 모든 정보가 버퍼 영역에서 작업될 때 버퍼 영역을 편집할 수 있다)
SQL> APPEND text
SQL> CHANGE /old/new
SQL> CLEAR BUFFER
SQL> DEL
SQL> DEL x
SQL> DEL y z
SQL> DEL *
SQL> DEL LAST
SQL> GET /경로/파일명
SQL> INPUT
SQL> INPUT text
SQL> LIST no
SQL> LIST y z
SQL> LIST LAST
SQL> SAVE /경로명/파일명
SQL> START

※ SQL*PLUS 사용 시 주의 사항

- CREATE TYPE 또는 CREATE LIBRARY 사용하여 실행할 때는 마지막 라인에 반드시 /를 사용한다.
- 공백 라인을 삽입하지 않는다.
- 주석 라인을 사용할 때 #을 사용하지 않는다.
- 아주 긴 SQL 명령문을 사용하여 다음 라인으로 연속적으로 사용 시 -를 사용하지 않는다.

사용자 생성, 변경, 삭제

사용자 생성하기
SQL> CREATE USER [사용자명]
SQL> IDENTIFIED BY [암호]
SQL> DEFAULT TABLESPACE [테이블스페이스명]
SQL> TEMPORARY TABLESPACE [임시 테이블스페이스명]
SQL> QUOTA [숫자]M ON [사용자명]
SQL> PFILE [프로파일명];

사용자 변경하기
SQL> ALTER USER [사용자명]
SQL> IDENTIFIED BY [암호]
SQL> DEFAULT TABLESPACE [테이블스페이스명]
SQL> TEMPORARY TABLESPACE [임시 테이블스페이스명]
SQL> QUOTA [숫자]M ON [사용자명]
SQL> PFILE [프로파일명];

사용자 삭제하기
SQL> DROP USER [사용자명] CASCADE; //사용자가 가지고 있던 테이블, 인덱스 등의 객체를 함께 삭제하는 옵션. 사용 객체가 있는데 CASCADE 옵션을 사용하지 않으면 에러가 날 수 있다

프로파일 생성하기

프로파일 생성하기
-프로파일을 사용할 때는 init<DB명>.ora파일에 RESOURCE_LIMIT=TRUE로 설정해야 한다. 패스워드 기능은 FALSE 상태에서도 실행 가능하다.
P.62

패스워드 함수 사용하기

함수를 이용하여 패스워드를 확인하기
SQL> CREATE PROFILE [프로파일명] LIMIT PASSWORD_VERIFY_FUNCTION [함수명];

- {우선 해야할 일} 오라클이 제공하는 검증 함수를 사용하기 위해서는 C:\oracle\ora92\rdbms\admin\utlpwdmg.sql을 실행한다. VERYFY_FUNCTION이라는 함수가 생성된다.
- CREATE OR REPLACE FUNCTION [함수이름] [이하 함수 프로그래밍] 으로 사용자가 함수를 생성할 수도 있다.
- 프로파일을 생성 또는 변경할 때 함수를 설정한다.

패스워드실행과 관련된 옵션절(CREATE USER 혹은 ALTER USER와 함께 사용되는 절)
SQL> PASSWORD EXPIRE
SQL> ACCOUNT UNLOCK
SQL> ACCOUNT LOCK

권한 관리: 시스템 권한

시스템 권한 부여하기
SQL> GRANT [시스템권한] TO [사용자명 혹은 PUBLIC]; //PUBLIC은 모든 사용자에게 권한을 부여한다.
SQL> GRANT [시스템권한] TO [사용자명 혹은 PUBLIC] WITH ADMIN OPTION; //부여받은 시스템 권한을 다른 사용자에게 양도할 수 있다.

※ 시스템 권한 종류
CREATE | DROP | ALTER SESSION
CREATE | DROP | ALTER TABLE
CREATE | DROP | ALTER INDEX
CREATE | DROP | ALTER VIEW
CREATE | DROP | ALTER SEQUENCE
CREATE | DROP | ALTER CLUSTER...등등등

시스템 권한 부여 취소하기
SQL> REVOKE [시스템권한,시스템권한..] FROM [사용자명 혹은 PUBLIC];

권한 관리: 객체 권한

객체 권한 부여하기
SQL> GRANT [객체권한](컬럼명,컬럼명,..) ON [객체명] TO [사용자명 혹은 PUBLIC] WITH GRANT OPTION;

※ 객체 권한 종류
SELECT
UPDATE
INSERT
ALTER
DELETE
EXECUTE
INDEX //CREATE INDEX ON [테이블명] 문장을 사용할 수 있는 권한
REFERENCES //객체에 대해 외부 키를 정의할 수 있는 권한

객체 권한 부여 취소하기
SQL> REVOKE [객체권한] ON [객체명] FROM [사용자명 혹은 PUBLIC] CASCADE CONSTRAINTS; //CASCADE CONSTRAINTS는 REFERENCES 권한으로 정의된 제약 조건을 함께 삭제하여 준다.

SQL>
SQL>
SQL>