251120 TIL

2025. 11. 20. 18:15Courses/아이티윌 오라클 DBA 과정

리눅스 명령어(Cont.)

CP(copy)

  • 파일을 복사하는 명령어
[oracle@oracle ~]$ cp /home/oracle/test1/ex1.txt /home/oracle/test1/ex3.txt
[oracle@oracle ~]$ ls -l test1
total 12
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:12 ex1.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:13 ex2.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:14 ex3.txt

[oracle@oracle ~]$ cp ./test1/ex2.txt ./test1/ex4.txt
[oracle@oracle ~]$ ls -l test1
total 16
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:12 ex1.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:13 ex2.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:14 ex3.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:15 ex4.txt
  • 위치만 지정하면 파일명 복사
[oracle@oracle ~]$ cp ./test1/ex1.txt ./test2/
[oracle@oracle ~]$ ls -l test2
total 4
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:17 ex1.txt

[oracle@oracle ~]$ cp ~/test1/ex2.txt ~/test2
[oracle@oracle ~]$ ls -l ~/test2
total 8
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:17 ex1.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:20 ex2.txt
  • 디렉터리 안의 모든 내용을 다른 디렉터리로 복사
[oracle@oracle ~]$ cp ~/test1/* ~/test3
[oracle@oracle ~]$ ls -l test3
total 16
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:21 ex1.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:21 ex2.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:21 ex3.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:21 ex4.txt
  • -v : 복사 진행 상태를 화면에 출력
[oracle@oracle ~]$ cp -v /etc/bashrc ~/test2
‘/etc/bashrc’ -> ‘/home/oracle/test2/bashrc’
  • -r : 디렉터리 복사
[oracle@oracle ~]$ cp -rv ./test1 ./test4
‘./test1’ -> ‘./test4’
‘./test1/ex1.txt’ -> ‘./test4/ex1.txt’
‘./test1/ex2.txt’ -> ‘./test4/ex2.txt’
‘./test1/ex3.txt’ -> ‘./test4/ex3.txt’
‘./test1/ex4.txt’ -> ‘./test4/ex4.txt’
  • -i : 복사 대상 파일이 이미 해당 위치에 있다면 사용자에게 덮어 쓰기 여부를 묻고 복사
[oracle@oracle ~]$ cp -iv ./test1/ex1.txt ./test2/ex1.txt
cp: overwrite ‘./test2/ex1.txt’? n
  • -f : 복사 대상 파일이 이미 해당 위치에 있다면 물어 보지 않고 복사
[oracle@oracle ~]$ cp -fv ./test1/ex1.txt ./test2/ex1.txt
‘./test1/ex1.txt’ -> ‘./test2/ex1.txt’
  • -b : 복사 대상 파일이 이미 해당 위치에 있다면 백업 파일을 생성
[oracle@oracle ~]$ cp -bv ./test1/ex1.txt ./test2/ex1.txt
‘./test1/ex1.txt’ -> ‘./test2/ex1.txt’ (backup: ‘./test2/ex1.txt~’)
  • -p : 복사할 때 복사 대상의 소유자, 그룹, 권한 등의 정보까지 복사
  • -a : 원본 파일 속성 정보까지 모두 복사
# test2 ~ 4 안에 있는 ex1.txt 삭제
[oracle@oracle ~]$ rm -f ./test[2-4]/ex1.txt
[oracle@oracle ~]$ ls -R
.:
test1  test2  test3  test4

./test1:
ex1.txt  ex2.txt  ex3.txt  ex4.txt

./test2:
bashrc  ex1.txt~  ex2.txt

./test3:
ex2.txt  ex3.txt  ex4.txt

./test4:
ex2.txt  ex3.txt  ex4.txt

# test1의 ex1.txt를 test2로 복사
[oracle@oracle ~]$ cp -v ./test1/ex1.txt ./test2
‘./test1/ex1.txt’ -> ‘./test2/ex1.txt’

# test1 ~ 2에 있는 ex2.txt 파일 정보 조회
[oracle@oracle ~]$ ls -l ./test[1-2]/ex1.txt
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:12 ./test1/ex1.txt
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:56 ./test2/ex1.txt

# # test1의 ex1.txt를 test3로 속성 정보까지 같게 복사
[oracle@oracle ~]$ cp -av ./test1/ex1.txt ./test3
‘./test1/ex1.txt’ -> ‘./test3/ex1.txt’

# test1 ~ 3에 있는 ex2.txt 파일 정보 조회
[oracle@oracle ~]$ ls -l ./test[1-3]/ex1.txt
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:12 ./test1/ex1.txt
# 복사한 시간으로 저장됨
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:56 ./test2/ex1.txt 
# test1의 ex1.txt와 같은 시간으로 저장됨
-rw-rw-r--. 1 oracle oracle 29 Nov 19 18:12 ./test3/ex1.txt 

mv(move)

  • 파일을 이동하는 명령어
  • -i : 이동될 파일이 존재하면 덮어 쓰기 여부를 묻고 이동
  • -v : 이동 진행 상태 출력
[oracle@oracle ~]$ mv -iv ./test1/ex1.txt ./test4
‘./test1/ex1.txt’ -> ‘./test4/ex1.txt’
[oracle@oracle ~]$ mv -iv ./test2/ex1.txt ./test4
mv: overwrite ‘./test4/ex1.txt’? n
  • -f : 이동될 파일이 존재하면 덮어 쓰기
  • -b : 이동될 파일이 존재하면 백업 파일을 생성
[oracle@oracle ~]$ mv -bv ./test3/ex1.txt ./test4
‘./test3/ex1.txt’ -> ‘./test4/ex1.txt’ (backup: ‘./test4/ex1.txt~’)
  • 폴더 이동
[oracle@oracle ~]$ mv test1 test2
[oracle@oracle ~]$ ls test2
bashrc  ex1.txt  ex1.txt~  ex2.txt  test1
[oracle@oracle ~]$ mv test2/test1 .
[oracle@oracle ~]$ ls
test1  test2  test3  test4
  • 이름 수정
[oracle@oracle ~]$ mv ./test1/ex2.txt ./test1/date.txt
[oracle@oracle ~]$ ls -l ./test1
total 12
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:13 date.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:14 ex3.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:15 ex4.txt

vi(visual editor)

  • 문서 편집기

모드

  • 명령 모드(command mode)
    • vi 명령어로 편집기를 시작할 시 단축키를 사용하여 커서 이동, 수정, 삭제, 복사, 붙이기 등 다양한 명령을 수행할 수 있음
    • 입력 모드에 진입한 후 다시 명령 모드로 돌아오려면 ESC 키 사용
  • 입력 모드(insert mode)
    • 명령 모드 상태에서 입력 단축키를 이용하면 입력 모드로 전환할 수 있음
  • 마지막 행 모드(last line mode)
    • 마지막 행 모드는 명령 모드 상태일 때 :(콜론)을 입력하면 화면 맨 하단에 명령을 수행하는 모드
    • 저장, 종료, 치환, 탐색 등의 기능을 수행할 수 있음

편집기

  • vi <파일명> : 편집기 시작
  • :set nu : 라인 번호 출력
  • :set nonu : 라인 번호 해지
  • ESC:q : 편집기 나가기

커서 이동

  • 지금은 방향키도 가능
  • h : 왼쪽
  • j : 아래쪽
  • k : 위쪽
  • l : 오른쪽
  • H : 현재 화면의 맨 위로 이동
  • M : 현재 화면의 중간으로 이동
  • L : 현재 화면의 맨 아래로 이동
  • G : 문서 맨 아래로 이동
  • 1G : 숫자 라인으로 이동
  • gg : 문서 첫 라인으로 이동
  • ^ : 그 줄의 맨 앞으로 이동
  • $ : 그 줄의 맨 뒤로 이동
  • + : 커서를 다음 행의 처음으로 이동
  • - : 커서를 이전 행의 처음으로 이동
  • w : 커서를 다음 단어의 첫 글자로 이동
  • b : 커서를 앞 단어의 첫 글자로 이동
  • e : 커서를 다음 단어의 마지막 글자로 이동
  • Ctrl + b : 페이지 업
  • Ctrl + f : 페이지 다운
  • Ctrl + u : 페이지 업(1/2)
  • Ctrl + d : 페이지 다운(1/2)

문자열 검색

  • /<찾을문자> : 검색
  • n : 검색된 다음 문자로 이동
  • N : 검색된 이전 문자로 이동
  • :noh : 검색 문자열 하이라이트 해지

입력 명령어

  • i : 커서의 왼쪽부터 입력
  • a : 커서의 오른쪽부터 입력
  • I : 커서의 줄 맨 왼쪽부터 입력
  • A : 커서의 줄 맨 오른쪽부터 입력
  • o : 커서의 다음줄부터 입력
  • O : 커서의 이전줄부터 입력
  • cw : 커서 위치의 단어를 지우고 입력
  • s : 커서 위치의 한 글자를 지우고 입력
  • S : 커서 위치 한 줄을 지우고 입력

삭제 명령어

  • x : 글자 하나 삭제
  • dd : 한 행 삭제
  • dw : 한 단어 삭제
  • :2 d : 특정 행 삭제
  • :1,4 d : 1~4번째 행 삭제
  • D : 커서 오른쪽 행 삭제

취소 명령어

u : 작업 취소

대소문자 변환

  • ~ : 커서 위치 한 글자를 대소문자 변환, 대문자 → 소문자, 소문자 → 대문자
  • gUU : 한 줄을 모두 대문자로 변환
  • guu : 한 줄을 모두 소문자로 변환
  • v : 선택 영역(블록)
  • u : v 로 선택된 부분 소문자로 변환
  • U : v 로 선택된 부분 대문자로 변환

복사 붙여넣기

  • yy : 커서의 행을 복사
  • 2yy : 커서부터 숫자(n)행만큼 복사
  • p : 복사한 내용을 현재 행(커서) 이후에 붙여넣기
  • P : 복사한 내용을 현재 행(커서) 이전에 붙여넣기
  • :1,3 co 7 : 1~3행 복사 후 7행 다음에 붙여넣기
  • :1,2 m 3 : 1~2행을 3행 다음으로 이동

문자열 검색 및 수정

  • :s/기존문자/새로운문자 : 지금 커서가 있는 위치에서 첫 번째로 나오는 기존 문자를 새로운 문자로 변경
  • :s/기존문자/새로운문자/g : 지금 커서가 있는 행의 기존 문자를 새로운 문자로 전부 변경
  • :%s/기존문자/새로운문자/g : 문서 전체에서 기존문자를 새로운 문자로 전부 변경

파일 저장 및 종료

  • :q! : 저장하지 않고 종료
  • :w : 저장
  • :wq : 저장 후 종료

사용자

사용자 계정 정보

[root@oracle ~]# head -3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
  • 사용자이름:암호:사용자ID:사용자가 소속된 그룹ID:전체이름:홈디렉터리:기본셸

useradd, adduser

  • 유저를 생성하는 명령어
[root@oracle ~]# useradd ora1
[root@oracle ~]# id ora1
uid=1001(ora1) gid=1001(ora1) groups=1001(ora1)
[root@oracle ~]# tail -1 /etc/passwd
ora1:x:1001:1001::/home/ora1:/bin/bash
[root@oracle ~]# tail -1 /etc/group
ora1:x:1001:
[root@oracle ~]# adduser ora2
[root@oracle ~]# id ora2
uid=1002(ora2) gid=1002(ora2) groups=1002(ora2)
[root@oracle ~]# tail -1 /etc/passwd
ora2:x:1002:1002::/home/ora2:/bin/bash
[root@oracle ~]# tail -1 /etc/group
ora2:x:1002:

passwd

  • 비밀번호를 지정하거나 변경하는 명령어
[root@oracle ~]# passwd ora1
Changing password for user ora1.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@oracle ~]# passwd ora2
Changing password for user ora2.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.

패스워드 관리 파일

[root@oracle ~]# cat /etc/shadow | grep -i oracle
oracle:$6$rqek2tRECQZbP9yq$p4w2TApIrQ0U5i3OeK7R1Y4ZxBjKf32pvHlN0GS9Po15O3nj60PsQMCeh15YJ79W8n7GaXEeqdo/brBk/AlRN0::0:99999:7:::
  • /etc/shadow 에 암호화되어 관리됨

userdel

  • 유저 삭제
[root@oracle ~]# userdel -rf ora2
  • -r : 유저에게 할당된 모든 파일, 디렉터리 삭제
  • -f : 유저가 접속되어 있더라도 kill 시킨 후 삭제

그룹(group)

  • 사용자를 하나로 묶어 관리 가능하게 하는 기능으로 모든 사용자는 그룹에 속하도록 되어있음
  • 사용자를 그룹을 통하여 관리하면 각 그룹에게 보안 설정, 접근 설정, 권한 등을 주고 일괄적으로 그룹에 속한 사용자에게 적용

그룹 정보

[root@oracle ~]# head -3 /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
  • 그룹이름:비밀번호:그룹ID:그룹에 속한 유저

groups

  • 현재 사용자의 그룹 조회
[root@oracle ~]# groups
root

[ora1@oracle ~]$ groups
ora1

groupadd

  • 그룹을 생성하는 명령어
[root@oracle ~]# groupadd oinstall

[root@oracle ~]# groupadd -g 2000 dba

[root@oracle ~]# groupadd -g 2001 oper

[root@oracle ~]# tail -3 /etc/group
oinstall:x:1002:
dba:x:2000:
oper:x:2001:

groupmod

  • 그룹 이름, 그룹 ID를 변경하는 명령어
# 그룹 이름 변경
[root@oracle ~]# groupmod -n dbaoper oper
[root@oracle ~]# tail -1 /etc/group
dbaoper:x:2001:

[root@oracle ~]# groupmod -n oper dbaoper
[root@oracle ~]# tail -1 /etc/group
oper:x:2001:

# 그룹 아이디 변경
[root@oracle ~]# groupmod -g 2002 oinstall
[root@oracle ~]# tail -3 /etc/group
oinstall:x:2002:
dba:x:2000:
oper:x:2001:

usermod

  • 유저 그룹 변경
[root@oracle ~]# usermod -g oinstall -G dba,oper oracle
[root@oracle ~]# id oracle
uid=1000(oracle) gid=2002(oinstall) groups=2002(oinstall),2000(dba),2001(oper)
  • -g : 1차 그룹
  • -G : 2차 그룹
  • 유저 생성 시 그룹 설정
[root@oracle ~]# useradd -g oinstall -G dba,oper ora2
[root@oracle ~]# id ora2
uid=1002(ora2) gid=2002(oinstall) groups=2002(oinstall),2000(dba),2001(oper)

groupdel

  • 그룹을 삭제하는 명령어
[root@oracle ~]# groupdel dba
[root@oracle ~]# id oracle
uid=1000(oracle) gid=2002(oinstall) groups=2002(oinstall),2001(oper)
[root@oracle ~]# id ora2
uid=1002(ora2) gid=2002(oinstall) groups=2002(oinstall),2001(oper)

[root@oracle ~]# groupdel oper
[root@oracle ~]# id oracle
uid=1000(oracle) gid=2002(oinstall) groups=2002(oinstall)
[root@oracle ~]# id ora2
uid=1002(ora2) gid=2002(oinstall) groups=2002(oinstall)

[root@oracle ~]# groupdel oinstall
groupdel: cannot remove the primary group of user 'oracle'
  • 1차 그룹은 삭제 불가 → 오류 발생
[root@oracle ~]# usermod -g oracle oracle
[root@oracle ~]# id oracle
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)

[root@oracle ~]# usermod -g ora2 ora2
usermod: group 'ora2' does not exist

[root@oracle ~]# groupadd ora2
[root@oracle ~]# usermod -g ora2 ora2
[root@oracle ~]# id ora2
uid=1002(ora2) gid=2003(ora2) groups=2003(ora2)

groupdel: group 'oinsatll' does not exist
[root@oracle ~]# groupdel oinstall

파일 접근 권한 관리

-rw-rw-r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

권한 종류

  • 읽기(read)
  • 쓰기(write)
  • 실행(execute)
권한 대표문자 파일 디렉터리
읽기 r 읽기, copy 디렉터리에서 ls 실행 가능
쓰기 w 수정 디렉터리에서 파일 생성
실행 x shell script 실행 디렉터리에 cd 접근 가능

파일 유형

  • 파일이 어떤 종류인지 확인
  • - : 파일
  • d : 디렉터리
  • b : 블록 디바이스(block device) 장치 : 하드디스크, 플로피디스크, CD/DVD 저장장치
  • c : 문자 디바이스(character device) 장치 : 마우스, 키보드, 프린터 등의 입출력장치
  • l : 링크(link) : 실제 파일은 다른 곳에 존재한다는 의미(윈도우 바로 가기)

파일 권한

  1. 파일의 소유자 권한
  2. 그룹 권한
  3. 기타 사용자 권한

chmod

  • 권한을 수정하는 명령어
  • u : 유저
  • g : 그룹
  • o : 기타 유저
  • a : 전체
  • r : read( 읽기)
  • w : write(쓰기)
  • x : execute(실행)
  • + : 권한 부여
  • - : 권한 회수
  • = : 권한 설정
[oracle@oracle ~]$ ls -l
total 4
-rw-rw-r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

# 사용자에게 dbe.txt 파일 실행 권한 부여
[oracle@oracle ~]$ chmod u+x dbe.txt
[oracle@oracle ~]$ ls -l
total 4
-rwxrw-r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

# 사용자로부터 dbe.txt 파일 실행 권한 회수
[oracle@oracle ~]$ chmod u-x dbe.txt
[oracle@oracle ~]$ ls -l
total 4
-rw-rw-r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

# 파일이 속한 그룹으로부터 dbe.txt 파일 쓰기 권한 회수
[oracle@oracle ~]$ chmod g-w dbe.txt
[oracle@oracle ~]$ ls -l
total 4
-rw-r--r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

# 모든 대상으로부터 dbe.txt 파일 읽기, 쓰기, 실행 권한 회수
[oracle@oracle ~]$ chmod a-rwx dbe.txt
[oracle@oracle ~]$ ls -l
total 4
----------. 1 oracle oracle 76 Nov 19 22:08 dbe.txt

# dbe.txt 파일에 대한 읽기 권한이 없으므로 cat 불가
[oracle@oracle ~]$ cat dbe.txt
cat: dbe.txt: Permission denied

# dbe.txt 파일에 대한 읽기 권한을 부여했으므로 cat 가능
[oracle@oracle ~]$ chmod u+r dbe.txt
[oracle@oracle ~]$ cat dbe.txt
SQL
PLSQL
ADMINISTRATIN
BACKUP & RECOVERY
PERFORMANCE TUNING
SQL TUNING
RAC
# /home/oracle/dbe.txt 는 기타 사용자에게도 읽기 권한이 있지만 접근 불가
[ora1@oracle ~]$ ls -l /home/oracle
ls: cannot access /home/oracle/test2: Permission denied
ls: cannot access /home/oracle/test3: Permission denied
ls: cannot access /home/oracle/test4: Permission denied
ls: cannot access /home/oracle/test1: Permission denied
ls: cannot access /home/oracle/dbe.txt: Permission denied
total 0
-????????? ? ? ? ?            ? dbe.txt
d????????? ? ? ? ?            ? test1
d????????? ? ? ? ?            ? test2
d????????? ? ? ? ?            ? test3
d????????? ? ? ? ?            ? test4

[ora1@oracle ~]$ cat /home/oracle/dbe.txt
cat: /home/oracle/dbe.txt: Permission denied

[ora1@oracle ~]$ su - root
Password:
Last login: Thu Nov 20 00:56:29 KST 2025 on pts/1

# /home/oracle 디렉터리는 기타 사용자에 대한 실행 권한이 없음
[root@oracle ~]# ls -l /home
total 8
drwx------. 5 ora1   ora1   4096 Nov 19 23:34 ora1
drwx------. 3 ora2   ora2     78 Nov 19 23:58 ora2
drwx---r--. 9 oracle oracle 4096 Nov 19 23:23 oracle

# /home/oracle 디렉터리에 기타 사용자에 대한 실행 권한 부여
[root@oracle ~]# chmod o+x /home/oracle

[root@oracle ~]# ls -l /home
total 8
drwx------. 5 ora1   ora1   4096 Nov 19 23:34 ora1
drwx------. 3 ora2   ora2     78 Nov 19 23:58 ora2
drwx---r-x. 9 oracle oracle 4096 Nov 19 23:23 oracle

[root@oracle ~]# su - ora1
Last login: Thu Nov 20 00:57:01 KST 2025 on pts/1

# ora1 계정에서 /home/oracle 디렉터리 접근 가능
[ora1@oracle ~]$ ls -l /home/oracle
total 4
-r--r--r--. 1 oracle oracle 76 Nov 19 22:08 dbe.txt
drwxrwxr-x. 2 oracle oracle 52 Nov 19 19:09 test1
drwxrwxr-x. 2 oracle oracle 66 Nov 19 19:08 test2
drwxrwxr-x. 2 oracle oracle 51 Nov 19 19:05 test3
drwxrwxr-x. 2 oracle oracle 37 Nov 19 19:05 test4

# /home/oracle/dbe.txt 파일 읽기 가능
[ora1@oracle ~]$ cat /home/oracle/dbe.txt
SQL
PLSQL
ADMINISTRATIN
BACKUP & RECOVERY
PERFORMANCE TUNING
SQL TUNING
RAC
# 사용자로부터 test1 디렉터리에 대한 쓰기 및 실행 권한 회수
[oracle@oracle ~]$ chmod u-wx test1
[oracle@oracle ~]$ ls -l
total 4
-rw-rw-rw-. 1 oracle oracle 76 Nov 19 22:08 dbe.txt
dr--------. 2 oracle oracle 52 Nov 20 01:42 test1
drwxrwxr-x. 2 oracle oracle 66 Nov 19 19:08 test2
drwxrwxr-x. 2 oracle oracle 51 Nov 19 19:05 test3
drwxrwxr-x. 2 oracle oracle 37 Nov 19 19:05 test4

# test1 디렉터리 접근 불가
[oracle@oracle ~]$ ls -l test1
ls: cannot access test1/ex3.txt: Permission denied
ls: cannot access test1/ex4.txt: Permission denied
ls: cannot access test1/date.txt: Permission denied
total 0
-????????? ? ? ? ?            ? date.txt
-????????? ? ? ? ?            ? ex3.txt
-????????? ? ? ? ?            ? ex4.txt

# 사용자에게 test1 디렉터리 실행 권한 부여 
[oracle@oracle ~]$ chmod u+x ./test1

# test1 디렉터리 접근 가능
[oracle@oracle ~]$ ls -l ./test1
total 12
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:13 date.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:14 ex3.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:15 ex4.txt

# test1 디렉터리에 쓰기 불가
[oracle@oracle ~]$ cp ./test1/ex3.txt ./test1/new.txt
cp: cannot create regular file ‘./test1/new.txt’: Permission denied

# 사용자에게 test1 디렉터리 실행 권한 부여
[oracle@oracle ~]$ chmod u+w ./test1

# test1 디렉터리에 쓰기 가능
[oracle@oracle ~]$ cp ./test1/ex3.txt ./test1/new.txt
[oracle@oracle ~]$ ls -l test1
total 16
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:13 date.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 19 18:14 ex3.txt
-rw-rw-r--. 1 oracle oracle 150 Nov 19 18:15 ex4.txt
-rw-rw-r--. 1 oracle oracle  29 Nov 20 01:50 new.txt

'Courses > 아이티윌 오라클 DBA 과정' 카테고리의 다른 글

251121 TIL  (0) 2025.11.21
251119 TIL  (0) 2025.11.19
251118 TIL  (0) 2025.11.18
251117 TIL  (0) 2025.11.17
251114 TIL  (0) 2025.11.14