본문 바로가기

리눅스

C276x260.fwebp.q85 [draft] PHP의 공유 라이브러리와 정적 라이브러리의 차이점과 주요 사용 사례 PHP의 공유 라이브러리와 정적 라이브러리의 차이점과 주요 사용 사례PHP에서 공유 라이브러리와 정적 라이브러리는 라이브러리의 코드를 실행 파일에 포함하는 방법에 따라 구분됩니다.공유 라이브러리(Shared Library)는 실행 파일에 포함되지 않고, 실행 시점에 로더에 의해 메모리에 로드됩니다. 공유 라이브러리는 여러 프로그램에서 공유할 수 있기 때문에 메모리 사용량을 줄일 수 있고 업데이트가 용이하다는 장점이 있습니다. 정적 라이브러리(Static Library)는 실행 파일에 포함되어 실행 시점에 로더에 의해 메모리에 로드됩니다. 정적 라이브러리는 공유 라이브러리보다 실행 파일의 크기가 커지지만 프로그램의 실행 속도가 빠르고, 업데이트가 어려운 단점이 있습니다.PHP에서의 공유 라이브러리와 정적 .. 더보기
C276x260.fwebp.q85 [draft] 우분투에 Go를 설치하는 방법 우분투에 Go를 설치하는 방법패키지 매니저를 통한 설치대부분의 리눅스 배포판은 패키지 매니저를 통해 Go를 설치할 수 있습니다. Go 설치 패키지 업데이트sudo apt-get updateGo 언어 패키지 설치sudo apt-get install -y golang소스 코드를 통한 설치기존 Go 버전 제거sudo apt-get remove golang-gosudo apt-get remove --auto-remove golang-go공식 Go 웹사이트에서 설치 파일 다운로드Go 언어의 공식 웹사이트(go.dev)에서 다운로드 페이지로 이동합니다.wget https://golang.org/dl/go1.15.linux-amd64.tar.gz압축 해제tar -C /usr/local -xzf go1.15.linux.. 더보기
C276x260.fwebp.q85 [draft] 우분투 22.04에서 LVM ROOT(vg0-lv-0) 파티션을 확장하는 방법 우분투 22.04에서 LVM ROOT(vg0-lv-0) 파티션을 확장하는 방법(ext4)운영 중인 우분투 서버에서 LVM으로 구성된 ROOT(/) 파일시스템을 디스크 증설 후 확장하는 방법입니다.작업 순서디스크 추가LVM 파티션 생성 (fdisk, type 8e)pvcreatevgextendlvextendresize2fs(ext4)1. 테스트 환경운영체제 정보$ cat /etc/os-releasePRETTY_NAME="Ubuntu 22.04.1 LTS"NAME="Ubuntu"VERSION_ID="22.04"VERSION="22.04.1 LTS (Jammy Jellyfish)"VERSION_CODENAME=jammyID=ubuntuID_LIKE=debianHOME_URL="https://www.ubuntu.. 더보기
C276x260.fwebp.q85 [draft] CentOS 7에서 LVM ROOT(centos-root) 파티션을 확장하는 방법 CentOS 7에서 LVM ROOT(centos-root) 파티션을 확장하는 방법(XFS)운영 중인 시스템에서 LVM으로 구성된 ROOT 파일시스템(/)을 디스크 증설 후 확장하는 방법입니다.순서 요약디스크 추가LVM 파티션 생성 (8e)pvcreatevgextendlvextendxfs_growfs1. 테스트 환경운영체제 정보$ cat /etc/redhat-releaseCentOS Linux release 7.9.2009 (Core)초기 디스크 구성$ df -Th | egrep -v tmpfsFilesystem Type Size Used Avail Use% Mounted on/dev/mapper/centos-root xfs 8.0G 1.6G 6.5G 19.. 더보기
C276x260.fwebp.q85 [draft] 우분투에서 IPv6를 영구적으로 비활성화하는 방법 우분투에서 IPv6를 영구적으로 비활성화하는 방법sysctl 설정을 통한 비활성화sysctl 설정 파일 수정sudo vim /etc/sysctl.confIPv6 비활성화 설정 추가net.ipv6.conf.all.disable_ipv6 = 1net.ipv6.conf.default.disable_ipv6 = 1net.ipv6.conf.lo.disable_ipv6 = 1변경 사항 적용(즉시 적용)sudo sysctl -pIPv6 비활성화 확인ip a | grep inet6GRUB 설정을 통한 비활성화GRUB 설정 파일 수정sudo vim /etc/default/grubGRUB 설정에 IPv6 비활성화 옵션 추가GRUB_CMDLINE_LINUX_DEFAULT="quiet splash ipv6.disable=1".. 더보기
C276x260.fwebp.q85 [draft] fuser 명령어 fuser 명령어(umount 옵션이 안될 때 사용)리눅스에서 파일 또는 소켓에 의해 열려 있는 프로세스를 확인하고 관리하는 데 사용됩니다. 이 명령어는 주로 파일 시스템의 특정 파일이나 디렉토리 또는 소켓에 접근하고 있는 프로세스의 PID(Process ID)를 찾는 데 유용합니다.사용법fuser [options] [file|socket|directory...]주요 옵션-a, --all : 지정된 파일 또는 소켓과 관련된 모든 프로세스를 표시(기본적으로는 해당 파일을 열고 있는 프로세스만 표시)-k, --kill : 지정된 파일을 사용 중인 프로세스를 종료(-k 옵션 뒤에 시그널을 지정하지 않으면 기본적으로 SIGKILL 시그널을 사용)-i, --interactive : 프로세스를 종료할 때 사용자에게.. 더보기
C276x260.fwebp.q85 [draft] dd 명령어 dd 명령어dd 명령어는 리눅스나 유닉스 운영 체제에서 사용하는 명령어 중 하나로 다양한 용도로 사용됩니다. 일반적으로는 디스크나 파티션 이미지를 만들거나 복사할 때 사용합니다.명령어의 기본 문법dd if= of= bs= count=여기서 if는 입력 파일 경로, of는 출력 파일 경로, bs는 블록 크기, count는 블록 수를 의미합니다. 이 명령어를 실행하면 입력 파일에서 지정한 크기의 블록을 읽어 출력 파일로 씁니다. 이때 입력 파일에서 읽은 블록의 크기는 bs로 지정한 크기와 같거나 작아야 하며, 출력 파일에 쓰인 블록의 수는 count로 지정한 수와 같거나 작아야 합니다. 예를 들어, /dev/sda 디스크의 전체 이미지를 파일로 저장하려면 다음과 같이 입력합니다.dd if=/dev/sda o.. 더보기
C276x260.fwebp.q85 [draft] dd를 사용하여 디스크의 읽기/쓰기 속도를 측정하는 방법 dd를 사용하여 디스크의 읽기/쓰기 속도를 측정하는 방법dd 명령을 사용하여 디스크의 읽기/쓰기 속도를 측정하는 방법은 다음과 같습니다.1. 디스크의 읽기 속도 측정다음 명령어를 입력하여 디스크의 읽기 속도를 측정합니다.dd if=/dev/sda of=/dev/null bs=1M count=1000위 명령어는 /dev/sda에서 1MB씩 1000번 읽어 /dev/null로 출력하는 명령어입니다. 이 명령어를 실행하면, 디스크의 읽기 속도가 표시됩니다.2. 디스크의 쓰기 속도 측정다음 명령어를 입력하여 디스크의 쓰기 속도를 측정합니다.dd if=/dev/zero of=/tmp/testfile bs=1M count=1000 conv=fdatasync위 명령어는 /dev/zero에서 1MB씩 1000번 읽어 .. 더보기