linux 초중급

떵떵·2022년 5월 13일
0

ls - 파일 보기

ls 하위 옵션들을 조합 할 수 있음
ex) -al

-l

디렉터리, 파일 정보를 좀 더 구체적으로 표현

-a

숨긴파일 포함 모두 표시

파일들 첫 이름에 '.'이나 ','로 시작하면 숨긴파일임
ex) .text.txt

다른 경로 파일 보기

# ls [경로]

# ls ../os_concepts

상위 폴더에서 os_concepts라는 하위 폴더의 파일 보기

-l 상세 설명

drwxr-xr-x   2 root root   4096 Mar 25 06:40 opt
dr-xr-xr-x 167 root root      0 May 13 18:46 proc
|권한 설명|   |소유자와 그룹||크기||최종 수정 일|

약자에 대한 권한 이름

r: read, w: write, x: excute

ex)
순서: user-group-other

1.drwxr-xr-x 
d : dir

권한 목록
rwxr-xr-x

설명
user-group-other
rwx   r-x   r-x

2.-rwxr-xr-x 
- : file 

권한 목록
rwxr-xr-x 

설명
user-group-other
rwx   r-x   r-x

3.lrwxrwxrwx
l : link

권한 목록
rwxrwxrwx

설명
user-group-other
rwx   rwx   rwx

권한 비트로 조작

한 파일의 권한이 rwxrwxrwx로 되어있다고 예를 들었을 때
user의 권한은 rwx로 모두 열려있다.

rwx를 2진수로 계산하면

r: 2^2 = 4, w: 2^1 = 2, x: 2^0 = 1 로 계산하여

user의 권한은 7이다.

그외로 r-x: 5, -wx: 3, --x: 1 으로 표현할 수 있다.

chmod - 권한설정

# chmod [권한부여] [파일]

10진수로 권한설정

a.out이라는 c언어 프로그램을 컴파일한 파일이 있을때, 해당 파일의 권한을 rw- r-- --x 로 하고싶다!

# chmod 641 a.out
# ls -l

> -rw-r----x 1 root root 16696 May 13 21:33 a.out

2진수를 10진수로 계산하여 부여하고싶은 권한을 설정할 수 있다.

문자로 권한설정

a.out이라는 c언어 프로그램을 컴파일한 파일이 있을때, 해당 파일의 권한 중 other이 작성할 수 있게 하고싶다

# chmod o+w a.out
# ls -l

> -rw-r---wx 1 root root 16696 May 13 21:33 a.out

권한을 빼고싶을 떈 '-'를 사용하면 되며

user = u, group = g, other = o 이다

touch - 빈파일 생성

# touch [파일이름]

touch 명령어 뒤 [파일이름]을 옵션으로 주면 해당 이름의 빈 파일이 생성됨

cd - 경로 이동

/ :최상위 경로
/home/guest1 : 리눅스에 계정 생성시 'home' dir에 계정 dir 생성

cd 이용시
/ : 절대 위치 기준
./ : 현재 위치
../ : 현자 위치 상위
~/ : home 위치 기준

mv - 파일 이동, 이름 변경

-파일 이동-
# mv [옮길 파일] [옮길 위치]

-이름 변경-
# mv [현재 이름] [바꿀 이름]

파일 이동

신나게 짜놓은 c파일을 project 폴더에 넣고싶을 때

# mv a.out ~/project

이름 변경

짜놓은 파일이 겁나 맘에 안들때
file1을 handsom.txt 로 변경

# mv file1 handsom.txt
# ls

> handsome.txt

cp - 파일 복사

-현재 위치에 복사-
# cp [복사할 파일] [새로운 이름]

-다른 위치에 복사-
# cp [복사할 파일] [원하는 경로]

-디렉터리 복사-
# cp -r [복사할 폴더] [새로운 이름]

link file 우리가 직관적으로 보고있는 파일들, 이러한 파일들은 filesystem에서 물리적인 하드디스크의 위치가 적힌 데이터로 되어있음

파일마다 고유의 inode를 가지고 있으며 inode번호로 link file과 filesystem이 연결되어있음

link file이 filesystem을 참조하는 방식

기존의 filesystem의 파일을 참조하고 있던 파일이 있을때 hardlink로 참조 한다면 참조된 filesystem의 파일의 Ref 값이 1증가하고 서로의 입력과 수정을 공유한다. 하지만 참조하고있던 다른 파일이 삭제되어도 filesystem의 파일은 삭제되지않음

why? filesystem의 삭제조건은 Ref값이 0일 때 삭제되므로 Ref값이 2에서 1로 줄어든다고 하드웨어적 파일은 없어지지 않음

link file이 link file을 참조하는 방식

흔히 '바로가기 설정'을 떠올리면 이해하기 쉽다

0개의 댓글