파일시스템
리눅스 파일시스템 : ext3, ext4, xfs
윈도우 파일시스템 : NTFS, FAT
디렉토리 (/ 부터 시작)
- bin
- boot
- etc : 설정파일
- home : 유저 디렉토리
- opt : 실행 프로그램
- sbin : 명령어 & 스크립트
파일 & 디렉토리 생성 명령어
- touch : 빈 파일 생성
- cp : 기존 파일 복사
- vi
- mkdir : 디렉토리 생성
파일 유지 & 변경 명령어
- cp : 파일 복사
- rm : 파일 제거
- mv : 파일 위치 이동 & 파일명 변경
- mkdir : 디렉토리 생성
- rmdir : 디렉토리 삭제 (혹은 rm -r 로도 가능)
- chgrp
- chown
- echo
파일 생성 후 문자열 저장됨
echo "문자열" > [파일명]
Soft & Hard Links
- inode
리눅스 및 유닉스 파일 시스템에서 각 파일에 대한 정보를 저장하는 데이터 구조.
파일 이름은 디렉토리에서 inode 번호와 매핑되어 관리됨.
inode는 파일의 메타데이터(소유자, 권한, 크기, 생성 및 수정 시간, 블록 위치 등)를 포함하지만, 파일 이름은 저장하지 않음. - Hard Link
동일한 파일을 가리키는 또 다른 이름
원본 파일과 동일한 inode 번호를 공유하며, 하드 링크는 파일 자체가 아니라 inode에 대한 추가 참조임.
원본 파일을 삭제해도, 다른 하드 링크가 존재하면 파일 데이터는 유지됨.
같은 파일 시스템 내에서만 생성 가능.
ln [original_file] [hard_link]
- Soft Link
원본 파일이 삭제되면 링크가 깨짐.
다른 파일 시스템 또는 디렉토리를 넘어 생성 가능.
하드 링크와 달리 별도의 inode 번호를 가짐.
파일 크기는 원본이 아닌 경로 문자열 크기에 따라 달라짐.
ln -s [original_file] soft_link
Input & Output
- stdin (파일번호 0)
< 기호 통해 내용을 입력받아 명령어 실행
cat < [filename]
cat이 직접 파일을 읽는 것이 아닌, 입력 리디렉션 통해 실행된다.
mail -s "메일 제목" [이메일주소] < [보낼 내용 저장된 파일명]
파일에 있는 내용 메일로 보내짐
- stdout (파일번호 1)
> 기호 통해 파일로 저장 가능 (기존에 동일 파일명 존재하면 새로 덮어씌운다)
>> 기호 통해 기존 파일에 내용을 추가할 수 있다.
ls -l > [파일명]
ls -l 이 수행된 내용 파일에 저장됨
- stderr (파일번호 2)
에러를 파일로 라우팅 할 수 있다.
ls -l /root 2 > [파일명]
/root 디렉토리에서 ls -l로 실행했을 때 오류 발생시 해당 메세지를 파일에 기록함
파이프 ( | )
리눅스/유닉스에서 한 명령어 출력을 다음 명령어 입력으로 전달시 사용
[command1] | [comman2]
command1 출력(stdout)을 command2 입력(stdin)으로 전달한다.
ls -l | grep "txt"
ls -l 출력에서 "txt" 포함된 것 출력
ls -l | more
ls -l 출력 내용 한페이지씩 보여줌 (스페이스바로 페이지 넘길 수 있음)
Help Commands
- whatis [명령어]
명령어 관련 설명 - [명령어] --help
옵션 설명 - man [명령어]
명령어 관련 상세 설명
File Editor
- vi : visual editor
- ed : standard line editor
- ex : extended line editor
- emacs : full screen editor
- pico : beginner's editor
- vim : advanced version of vi
vi
옵션
- a/i : 삽입모드
- d : 한 줄 삭제
- u : 복구
- x : 한 문자 삭제
- r : 한 문제 대체
- o : 다음줄에서 삽입모드 시작
- 검색 : / 와 검색할 단어 함께 입력
User Account Management
useradd
groupadd
userdel
groupdel
usermod
/etc/passwd : 사용자 계정 정보 저장
/etc/group : 그룹정보 저장
/etc/shadow : 암호화된 비밀번호 저장
유저 생성 & 그룹 생성
- useradd [유저명]
생성 후
id [유저명] : 생성되었는지 확인
ls -ltr 통해서 확인 - groupadd [그룹명]
cat /etc/group 통해 확인
유저 삭제 & 그룹 삭제
- userdel -r [유저명]
생성 후
ls -ltr 로 확인 - groupdel [그룹명]
사용자 수정
- usermod -G [그룹명] [유저명]
그룹에 추가하기
일반적으로 많이 사용되는 명령어는
useradd -g [그룹명] -s [쉘 - /bin/bash] -c "설명" -m -d [홈 디렉토리 - /home/ironman] [유저명]
암호생성
passwd [유저명]
chage (사용자 패스워드 만기정보 관리)
- 사용자마다 변경
chage [-m mindays] [-M maxdays] [-d lastday] [-I inactive] [-E expiredate] [-W warndays] [유저명]
- 공통적용 위한 파일 (/etc/login.defs)
PASS_MAX_DAYS
PASS_MIN_DAYS
PASS_MIN_LEN
PASS_WARN_AGE
Switch Users & Sudo Access
- su - [유저명] : [유저명] 으로 계정 변경
- su - : 루트 계정으로 변경
- sudo [명령어]
- visudo : /etc와 같은 구성파일 실행, 편집 권한 주어짐
'Study > 리눅스' 카테고리의 다른 글
RHCSA 정리 (5) - SELinux, Storage, NFS, Samba (0) | 2025.02.27 |
---|---|
RHCSA 정리 (4) - Shell, 작업 스케쥴링, 시스템 성능 튜닝, ACL (0) | 2025.02.27 |
RHCSA 정리 (3) - Security, Networking, File (0) | 2025.02.19 |
RHCSA 정리 (2) - File Permission, Monitoring (0) | 2025.02.19 |
[RHCSA] 실습환경 설정 & 로컬 SSH 접속 (2) | 2025.02.06 |