본 시리즈는 작성자의 이해와 경험을 바탕으로 실습 위주의 설명을 기반으로 작성되었습니다.
실습 위주의 이해를 목표로 하기 때문에 다소 과장이 많고 생략된 부분이 많을 수 있습니다.
따라서, 이론적으로 미흡한 부분이 있을 수 있는 점에 대해 유의하시기 바랍니다.
또한, 본 시리즈는 ChatGPT의 도움을 받아 작성되었습니다.
수 차례의 질문을 통해 도출된 여러가지 다양한 방식의 코드를 종합하여
작성자의 이해와 경험을 바탕으로 가장 정석으로 생각되는 코드를 재정립하였습니다.
$ sudo timedatectl set-timezone Asia/Seoul
$ timedatectl
$ date
미러 서버는 데비안 계열 리눅스(Debian, Ubuntu)에서
시스템에 설치할 수 있는 deb 패키지들을 가지고 있는 서버이며,
이 서버에 빠르게 접근할 수 있도록 서버를 통째로 복제해둔 로컬 서버입니다.
$ sudo apt update
등 패키지 다운로드시 불편http://kr.archive.ubuntu.com/ubuntu/
http://ap-southeast-2.ec2.archive.ubuntu.com/ubuntu/
http://ap-northeast-2.ec2.archive.ubuntu.com/ubuntu/
cdmirrors
: Ubuntu 설치용 CD 이미지 배포 저장소archivemirrors
: Ubuntu 패키지 저장소http://ftp.kaist.ac.kr/ubuntu/
http://mirror.kakao.com/ubuntu/
# 문자열 변경 명령어
:%s/원본 문장/변경 문장
# 카이스트 미러서버 변경
$ sudo vi /etc/apt/sources.list
:%s/kr.archive.ubuntu.com/ftp.kaist.ac.kr/
:%s/ap-southeast-2.ec2.archive.ubuntu.com/ftp.kaist.ac.kr/
:%s/ap-northeast-2.ec2.archive.ubuntu.com/ftp.kaist.ac.kr/
# 카카오 미러서버 변경
$ sudo vi /etc/apt/sources.list
$ :%s/kr.archive.ubuntu.com/mirror.kakao.com/
$ :%s/ap-southeast-2.ec2.archive.ubuntu.com/mirror.kakao.com/
$ :%s/ap-northeast-2.ec2.archive.ubuntu.com/mirror.kakao.com/
Launchpad
에서 제공하는 우분투 공식 패키지 저장소에는 없는$ sudo apt update
$ sudo apt upgrade
$ sudo add-apt-repository --remove ppa:certbot/certbot
[AWS EC2 Swap 메모리 할당방법]
https://repost.aws/knowledge-center/ec2-memory-swap-file
[AWS EC2 Swap 메모리 권장크기]
https://help.ubuntu.com/community/SwapFaq#How_much_swap_do_I_need.3F
# 메모리 사용량, 여유량, 캐시 크기
$ free
$ free -b # 메모리 크기를 바이트 단위로 출력
$ free -k # 메모리 크기를 키비바이트 단위로 출력
$ free -m # 메모리 크기를 메비바이트 단위로 출력
$ free -g # 메모리 크기를 기비바이트 단위로 출력
$ free -h # 메모리 크기를 사람이 읽기 쉬운 단위로 출력
# 활성화 중인 Swap 메모리가 있다면 비활성화
$ sudo free -m
$ sudo swapon -s
$ sudo swapoff -a
$ sudo swapoff -v /swapfile
# In this example dd command, the swapfile is 2 GB (64 MB x 32):
$ sudo dd if=/dev/zero of=/swapfile bs=64M count=32
$ sudo chmod 600 /swapfile # 권한 수정
$ sudo mkswap /swapfile # swapfile 생성
$ sudo swapon /swapfile # swapfile 활성화
$ sudo nano /etc/fstab # 파일 편집
/swapfile swap swap defaults 0 0 # 내용 추가 (권장)
/swapfile none swap sw 0 0 # 내용 추가 (옵션)
# [파일시스템장치] [마운트포인트] [파일시스템 종류] [옵션] [dump설정] [파일점검옵션]
/swapfile swap swap defaults 0 0
/swapfile none swap sw 0 0
# linux/ubuntu dd command
# In this example dd command, the swapfile is 1 GB (64 MB x 16):
# In this example dd command, the swapfile is 2 GB (64 MB x 32):
# In this example dd command, the swapfile is 4 GB (128 MB x 32):
# In this example dd command, the swapfile is 8 GB (128 MB x 64):
$ sudo dd if=/dev/zero of=/swapfile bs=64M count=16
$ sudo dd if=/dev/zero of=/swapfile bs=64M count=32
$ sudo dd if=/dev/zero of=/swapfile bs=128M count=32
$ sudo dd if=/dev/zero of=/swapfile bs=128M count=64
# if [File] = 지정한 파일을 입력대상으로 설정
# of [File] = 지정한 파일을 출력대상으로 설정
# bs [Bytes] = 한 번에 읽고 쓸 최대 바이트 크기 지정
# count [Number Blocks] = 지정한 블록 수 만큼 복사
# /dev/zero 내용을 읽고, /swapfile 파일에 쓰기, 64M 크기로 16번
fallocate
를 사용하여 빈 파일을 생성하는 것은, dd
를 사용하는 것보다 더 간단하고 빠름fallocate
를 지원해야 하며,$ sudo fallocate -l 8G /swapfile # Swap 메모리 할당 8GB
$ sudo chmod 600 /swapfile # 권한 수정
$ sudo mkswap /swapfile # swapfile 생성
$ sudo swapon /swapfile # swapfile 활성화
$ sudo nano /etc/fstab # 파일 편집
/swapfile swap swap defaults 0 0 # 내용 추가 (옵션)
/swapfile none swap sw 0 0 # 내용 추가 (권장)
# [파일시스템장치] [마운트포인트] [파일시스템 종류] [옵션] [dump설정] [파일점검옵션]
/swapfile swap swap defaults 0 0
/swapfile none swap sw 0 0
마운트 포인트
필드: 일반적으로 swap 파일의 경우 마운트 포인트로 none
을 사용합니다.옵션
필드: defaults
또는 sw
와 같은 옵션들이 있으며, swap에 관련된 옵션을 지정합니다.defaults
: 파일 시스템에 대한 기본 마운트 옵션을 의미합니다. swap의 경우, 특별한 마운트 옵션이 필요 없기 때문에 이 옵션은 실질적으로 무시될 수 있습니다.sw
: swap 파일이나 파티션을 활성화하기 위해 사용되는 옵션이며, swapon 명령어에 해당하는 옵션입니다. 일반적으로 swap 항목에서는 sw 옵션이 더 명확한 의미를 가집니다.결론 - 일반적으로 사용되는 방법
/swapfile none swap sw 0 0
이/swapfile swap swap defaults 0 0
보다 더 명확하고 표준적인 표현으로, swapfile 이나 파티션을/etc/fstab
에 추가할 때 일반적으로 사용됩니다.
none
을 사용하는 것이 마운트 포인트가 필요 없는 swap에 더 적합하며,
sw
옵션은 swap 활성화를 명시적으로 나타냅니다.
# swapfile 삭제
$ sudo free -m
$ sudo swapon -s
$ sudo swapoff -a # 모두 비활성화
$ sudo swapoff -v /swapfile # swapfile 비활성화
$ sudo nano /etc/fstab
/swapfile swap swap defaults 0 0 # 내용 삭제
$ sudo rm /swapfile # swapfile 삭제
SI 접두어: 국제단위계(International System of Units; 약칭 SI)에서
각 단위의 양의 크기를 쉽게 나타내기 위해 각 단위의 앞에 붙여 쓰는 접두어
킬로바이트(KiloByte)
: 킬로 바이트, SI 접두어
1 KB = 10³ bytes = 1000 bytes
키비바이트(KibiByte)
: 킬로 이진 바이트, Kilo Binary Byte의 준말
1 KiB = 2¹⁰ bytes = 1024 bytes
https://80000coding.oopy.io/c51ad838-cde0-4f1e-b93b-7dd8d60ef6a2