본문 바로가기
반응형

[OS]/Linux25

[참고][Linux] RTC, UTC, Local time 개념 정리!! RTC (real time clock, hardware clock) 전자기기에 존재하는 하드웨어 시계. 디지털 회로의 카운터에 의존하여 시간을 계산. CPU 개입없이 동작하며, 전원이 인가되지 않아도 시간을 유지함. 리눅스에서는 메인보드에 존재하는 CMOS(ROM_BIOS에서 인식하는 시간)을 의미. $hwclock 명령어로 RTC의 조회 & 설정이 가능함. UTC (universal time coordinated, standard time) 원자시계를 기준으로 한 시간 체계를 의미함. UTC를 기준으로 전세계 시간을 동기화함.(Ex. KST/Korea Standard Time, JST/Japan Standard Time …) Local time (software clock, system clock, k.. 2024. 4. 10.
[참고][Linux] Graceful Shutdown이란? Graceful Shutdown 이란? 우아한 종료라고 직역하면 뭔가 어색하지만, 그 역의 경우를 생각해보면 제법 어울리는 표현이라는 생각이 듭니다. 우아한 종료는 프로그램이 종료될 때 최대한 side effect가 없도록 로직들을 잘 처리하고 종료하는 것을 말합니다. Gracueful Shutdown Hard Shutdown hard shutdown: 종료 시그널과 동시에 모든 작업을 중단합니다. e.g. 그대로 컴퓨터를 바로 끄고 퇴근하는 것 graceful shutdown: 하고있던 작업을 적절히 마무리한 뒤 종료되는 것이 핵심입니다. e.g. http 요청을 처리하는 웹서버라면 서버가 종료되기 전, 기존 처리 중이던 요청들을 모두 처리하고 사용했던 리소스(파일, 소켓, DB 연결등)를 닫은 뒤 종.. 2024. 4. 7.
[참고][록키리눅스] 리눅스 시간동기화 설정 | NTP설정 | Chrony 설정 방법 | NTP 서비스포트 Chrony는 NTP(Network Time Protocol)을 구현한 시간 프로토콜이며, Rocky Linux 8.x 버전에서 진행을 했으며, ntp가 아닌 chrony를 사용합니다. ​ 1.시간동기화 프로토콜 'Chrony' 패키지 설치 - 패키지 설치 : dnf install chrony ​ 2.시간동기화 프로토콜 활성화 및 시작 - 활성화 : systemctl enable chronyd - 서비스시작 : systemctl start chronyd - 상태확인 : systemctl status chronyd ​ 3. 시간동기화 받아올 서버 지정 - 설정 파일 경로 : /etc/chrony.conf - 원하는 시간 서버 작성 - iburst : 동기화 시간을 단축시켜주는 옵션 4.chrony 서비스 .. 2024. 3. 17.
[참고][Linux] 패스워드 최소 길이 및 최대/최소 사용기간 설정 (Centos7) 패스워드 최소 길이 설정 일반적으로 계정의 패스워드 길이를 8자 이상으로 설정해야한다. 리눅스에서 이를 설정하기 위해 /etc/login.defs 의 PASS_MIN_LEN 값을 8로 변경해야한다. 패스워드 최대/최소 사용기간 설정 계정 패스워드를 90일(12주) 단위로 변경해주는 것도 계정을 보안하는 방법이다. /etc/login.defs 옵션 중 PASS_MAX_DAYS 를 90으로 값을 변경하여 설정 할 수 있다. 또한, 패스워드 최소 사용기간을 1일로 설정해야한다. 패스워드를 0일로 설정하면 계속해서 패스워드를 변경할 수 있어 1일로 해주는 것이 잦은 패스워드 변경을 방지할 수 있다. 이는 /etc/login.defs 옵션 중 PASS_MIN_DAYS 를 1로 설정하면된다. /etc/login.d.. 2024. 1. 22.
[참고] 리눅스 최근 변경된 파일 찾기(최근 생성 파일)(find -mtime) find / -name *.* -type f -mtime -1 Find 명령으로 리눅스 최근 변경된 파일 찾기(최근 생성 파일) - find 디렉토리경로 -type -f -mtime -변경일 1. find 디렉토리경로 -type -f -mtime -변경일 - ex) home 디렉토리 내에서 최근 5일 이내 생성(수정) 된 파일 검색 find /home -name '*.log' -type f -mtime -5 2. 여기에 파일명으로 추가로 파일명으로도 검색하고자 하는 경우 - ex) home 디렉토리 내에서 최근 3일 이내 생성(수정)된 확장자가 log인 파일 검색 find /home -name '*.log' -type f -mtime -3 find만 입력하는 경우에는 아래와 같이 폴더경로와 파일명만 표시.. 2024. 1. 19.
[중요] 리눅스에서 top 명령어를 통한 CPU 점유율 확인 및 측정하기!! *top 명령어 : 리눅스 시스템의 운용상황을 실시간으로 전반적인 상황을 모니터링하거나 프로세스 관리를 할 수 있는 유틸리티이다. top 사용법 1. 세부 정보 필드별 항목 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND * PID : 프로세스 ID (PID) * USER : 프로세스를 실행시킨 사용자 ID * PRI : 프로세스의 우선순위 (priority) * NI : NICE 값. 일의 nice value값이다. 마이너스를 가지는 nice value는 우선순위가 높음. * VIRT : 가상 메모리의 사용량(SWAP+RES) * RES : 현재 페이지가 상주하고 있는 크기(Resident Size) * SHR : 분할된 페이지, 프로세스에 의해 사용된 .. 2024. 1. 16.
[참고] Putty 터미널 접속 색상 변경 !! Putty 터미널 기본값으로 SSH 접속하면, 글자도 작고 , 색상때문에 글자가 눈에 확들어오지 않는다. 그래서 위 사이트 참고하여, 추가적으로 나에게 필요한 부분들을 더 찾아보았다. 불편한점 1. 글꼴및 글자 크기 - 기본 10포인트 굴림값 2. ls 리스트시에 폴더의 색상 - 짙은 파란색이라서 검정바탕에 잘 보이지 않는다. 3. vi 편집기 - 스크립트나, php 등 파일내용물의 주석 -아주 짙은 파란색으로 보여 잘보이지 않음, - 구문별 색상분리 이 3가지를 해결하고자 일단 다음순서로. 1번 문제는 위 참고 사이트를 통해 글자 크기는 12포인트로, 글꼴은 프로그래머들에게 맞는 D2Coding 글꼴 https://github.com/naver/d2codingfont 2, 3번 문제의 해결을 위해서 아.. 2024. 1. 12.
[참고] 리눅스 CPU 사용률 확인하는 3가지 방법!! top 명령어로 CPU 사용률 확인하기 vmstat 명령어로 CPU 사용률 확인하기 mpstat 명령어로 CPU 사용률 확인하기 마치며 리눅스 서버에서 CPU 사용률을 확인하는 방법은 여러 가지가 있습니다. 이번 글에서는 top, vmstat, mpstat 명령어를 사용하여 CPU 사용률을 확인하는 방법에 대해 알아보겠습니다. top 명령어로 CPU 사용률 확인하기 top 명령어는 리눅스에서 시스템의 상태를 실시간으로 모니터링하는 데 사용되는 명령어입니다. 이를 통해 CPU 사용률을 확인할 수 있습니다. 다음은 top 명령어를 이용하여 CPU 사용률을 확인하는 방법입니다: top -bn1 | grep "Cpu(s)" | awk '{printf("CPU 사용률 : %.1f%%\n", 100 - $8)}' .. 2024. 1. 5.
[참고] 리눅스 date 명령어를 이용한 시간 확인 및 설정하기 (hwclock 포함) !! 리눅스 서버를 사용하다보면 의도치 않게 시간이 느려지거나 빨라지는 경우가 있습니다. 이런 경우에 시간을 새로 설정해 주어야 하는데요. 아래의 명령어들을 통해서 시간을 설정하는 방법에 대해서 알아봅니다. 현재 시간 확인하기 # date 2020. 06. 29. (월) 13:50:13 KST 시:분:초 시간 설정하기 # date -s 11:22:15 2020. 06. 29. (월) 11:22:15 KST 년-월-일 시24:분:초 시간 설정하기 # date -s '2021-07-22 12:09:10' Thu Jul 22 12:09:10 KST 2021 년-월-일 시24:분:초 시간 설정하기 # date -s '2020-07-29 21:05:00' Wed Jul 29 21:05:00 KST 2020 MMDDHH.. 2024. 1. 5.
[참고][Linux][CentOS7] ipv6 비활성화!! 네트워크 인터페이스 ipv6 사용 확인 ifconfig 명령어를 이용하여 ipv6가 활성화 되어 있는지 확인할 수도 있다. 각 인터페이스에 inet6 항목을 확인하자. $ ifconfig ens3: flags=4163 mtu 9000 inet 10.0.0.2 netmask 255.255.255.0 broadcast 10.0.0.255 inet6 xxxx::xxxx:fe00:c1d prefixlen 64 scopeid 0x20 ether xx:xx:17:00:0c:1d txqueuelen 1000 (Ethernet) RX packets 36728 bytes 50635128 (48.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 29973 bytes .. 2023. 12. 27.
[중요][참고][Linux] /dev/null, 2>&1 의미!! 📌 /dev/null dev/null은 특수한 파일로 여기로 오는 모든 데이터를 버리는 마치 💫블랙홀 처럼 동작한다. 일반적으로 stdout 또는 stderr를 화면에 출력하지 않고 버리고 싶을 때 사용한다. stat /dev/null 로 보면 이 파일의 유형은 character special file 이며 파일 size도 0이고 할당된 block도 0이다. 실행 파일이 아니므로 | (pipe) 연산자를 사용할 수 없고 파일 redirection을 사용해야 한다. 📌 /dev/null Usage 1. 원하지 않는 출력 버리기 /dev/null 로 redirect 하면 결과를 버릴 수 있다. 2. 에러 메시지 숨기기 ❌ 위와 같이 > /dev/null 만 작성하면 여전히 오류 메시지가 버려지지 않고 뜨게 .. 2023. 12. 26.
[참고] Virtual Memory (SWAP 메모리) 확인 방법!! (1) Virtual Memory? SWAP? Virtual Memory, 즉 가상 메모리는 우리가 흔히들 RAM이라고 말하는 메모리의 보조적인 역할을 합니다. 우리가 프로그램을 사용하기 위해서는 메모리에 프로그램 코드나 데이터 파일들을 메모리에 적재시켜야 합니다. 그런데 우리의 메모리는 4 GB, 많이 사용하는 분들은 16 GB 정도? 되겠죠? 그러면 우리가 사용하고자 하는 프로그램이 메모리의 허용치를 넘어가거나, 많은 수의 프로그램을 실행해야 해서 메모리가 부족한 경우는 어떻게 될까요? 다른 프로그램이 끝날 때까지 기다렸다가 해야 할까요? 이러한 현상을 해결하기 위해 Virtual Memory라는 개념이 나왔습니다. 말 그대로 가상의 메모리를 디스크에 두고 실제 메모리 인 것처럼 사용하는 것이지요. .. 2023. 12. 22.
[참고] Red Hat Linux, Fedora, CentOS와 Rocky Linux의 관계!! 리눅스는 전세계의 개발자와 전문가가 오픈 소스 커뮤니티에서 활발히 논의하고 함께 개발하는 주제이기 때문에 폐쇄적으로 개발되는 다른 독점 프로그램에 비해 안정적으로 작동합니다. 이 과정에서 개인 개발자나 기업, 재단 등은 필요와 용도에 따라 기존 리눅스를 개량해서 새버전을 만들어 공개하기도 하는데, 다양한 개량 버전을 리눅스 배포판이라고 부릅니다. 배포판의 종류는 수백 가지가 넘으며 우리나라에서 주로 사용되는 유명한 배포판도 10여 가지나 됩니다. 여러 배포판 중에서도 요즘 대세인 Rocky Linux를 살펴보고 Red Hat Linux, Fedora, CentOS, Rocky Linux의 관계도 살펴보겠습니다. Red Hat Linux 전 세계적으로 유명한 배포판 중 하나가 Red Hat사(2019년에 .. 2023. 12. 5.
[참고][Linux] sed 명령어 파일 편집 방법 (특수문자 / 처리 방법) 1. 방법 일반적인 특수문자가 사용된 경우 아래의 명령어를 사용하면 쉘스크립트 포함 파일의 텍스트를 변경할 수 있다. # sed -i s/이전문자열/변경문자열/g /디렉토리위치/파일명 # sed -i s/key=1/key=2/g /home/test.sh 위의 형식을 지키면서 변경하고자하는 파일의 문자열을 손쉽게 변경할 수 있다. 만약에 변경해야하는 문자열에 슬래쉬와 같은 문자열이 포함된다면, 아래와 같은 방법을 사용하면 된다. # sed -i s%key/1%$key/2%g /home/test.sh 기존의 "/" 구분자를 "%" 기호로 변경하면 슬래쉬가 포함된 문자열도 어렵지 않게 변경할 수 있다. 출처 : https://seeminglyjs.tistory.com/462 2023. 11. 28.
[중요][Linux] 환경변수 PATH 추가하기 ☄️ PATH 설정 이유 Linux 쉘에 명령을 입력하면 해당 이름의 프로그램이 있는지 확인하기 위해 모든 디렉토리를 검색하지는 않고 지정한 항목만 찾는다. 이때 $PATH 라는 환경 변수를 이용해 쉘이 어디를 볼지 경로를 확인한다. 즉, PATH에 프로그램 실행 경로를 추가해주면, 명령어 실행 시 경로를 따로 입력하지 않아도 PATH 환경변수에 있는 디렉토리에서 실행파일을 찾아 실행해 준다. 🏓 printenv 명령어로 현재 적용된 환경변수 확인 ubuntu@ip-172-31-42-70:~$ printenv SHELL=/bin/bash PWD=/home/ubuntu LOGNAME=ubuntu XDG_SESSION_TYPE=tty MOTD_SHOWN=pam HOME=/home/ubuntu LANG=C.U.. 2023. 7. 18.
[리눅스/유닉스] du 명령어, 디렉터리별 디스크 사용량 확인하기. 퍼센테이지 비율로 확인하기 , ls명령어와 크기가 다른 이유? du 명령어 그런 의미에서 오늘은 du 명령어 사용법을 알아볼겁니다. du명령어는 디렉터리별로 디스크 사용량을 알려주는 명령어예요. du는 하위 디렉터리부터 거꾸로 용량을 표시해줘요. 무슨말이냐.. a와 b디렉터리가 있고 a안에 aa라는 하위디렉터리와 ab라는 하위 디렉터리가 있을 때, a디렉터리 용량도 보여주고, a/aa 디렉터리 용량, a/ab 디렉터리 용량까지 쭉 내려가서 최하위 디렉터리까지 용량을 보여준단 얘기얘요. 실제 간단하게 디렉터리를 만들어서 테스트 해보면, 가장 포괄적인 a와 b디렉터리만 보여주는게 아니라 그 하위 디렉터리 사용량까지 표시해주고 있죠. 운영체제에 따라 다르지만 리눅스에서는 기본적으로 1024바이트(=1KB)가 기본 단위입니다. [운영체제별 결과가 다를 수 있다] 문법: d.. 2023. 7. 17.
[Linux] 권한 관리 명령어 사용 방법(chmod, chown, chgrp) 리눅스는 멀티 운영 체제이다. 여러명의 사용자가 한 시스템에 접근해서 어떤 행위를 할 수 있는 서버 시스템 환경이라는 의미이다. 여러명의 사용자가 한 시스템에 접속해 작업을 처리하므로 시스템의 중요한 문서나 파일들 같이 보안이 필요한 부분에서 취약점이 드러날 수 있다. 그러므로 권한 관리가 매우 중요하다. 리눅스에서는 각 파일 및 디렉토리에 대한 권한 및 소유권을 부여하고 읽고, 쓰고 ,실행할 수 있는 권한을 제어할 수 있다. 그러므로 리눅스 서버 시스템 관리를 하기 위헤서는 꼭 체크하고 넘어가야 한다. 먼저 ls -l을 통해서 해당하는 위치의 파일들의 권한을 살펴 보자. 먼저 맨 앞을 보면 lrwxrwxrwx 와 같은 10자리의 단어를 확인할 수 있다. 이는 권한으로 총 10필드로 구성된다. 가장 첫번.. 2022. 9. 14.
[Linux] sudo, sudoers에 대해서 우선 sudo에 대해서 알아보도록 하자. 보통 Linux 서버를 운영하면, 관리자 계정과 일반 사용자 계정으로 나뉘어져 운영을 하게 된다. 관리자 계정은, 보통 root 계정이고 사용자 계정은, 운영자가 아닌 일반 사용자 or 개발자에게 개별적으로 할당하는 계정(사용자 권한)을 말한다. 그런데 리눅스 서버에 서비스를 운영하다보면, 일반 사용자 계정을 사용 하는 사람도 때에 따라서 관리자의 권한이 필요할 때가 있다. 이때, 일반 사용자는 su 명령어를 통해서 root 권한으로 로그인하여 관리자 계정으로 재로그인 할수도 있지만, sudo 라는 명령어를 통해서 임시적으로 root 권한을 가질 수 잇다. sudo 명령어는 유닉스 및 유닉스 계열 운영 체제에서, 다른 사용자의 보안 권한, 보통 슈퍼유저로서 프로그.. 2022. 9. 5.
[Linux] ssh port 변경 보통 SSH는 22번 포트를 사용하여 접속한다. AWS에서 Linux를 생성하였다. 하지만 간혹 보안 이슈 때문에, SSH Port를 변경하여 접속하는 경우가 있다. 퍼블릭 IP 주소를 통해서 putty로 접속을 한다. 하지만 이상하게 내가 보안 그룹에 허용한 Port로 접속을 시도해도 접속이 되지 않는다. 그래서 Session Manager로 접속하여 확인해보니 현재 허용된 포트는 22번 포트였다. 그래서 보안 그룹에서 추가로 22번 포트를 허용해준뒤 접속을 한다. 먼저 sshd_config 파일의 위치를 확인해야 한다. find / -name "sshd_config" 2>/dev/null 명령어를 입력하면 현재 sshd_config 파일의 위치를 찾아준다. 필자의 환경은 /etc/ssh/sshd_co.. 2022. 9. 1.
[Linux] 어떤 Linux 파일 시스템을 사용해야합니까? Linux PC에서 파티션을 포맷하면 다양한 파일 시스템 옵션이 표시됩니다. 이러한 옵션은 압도적 일 필요는 없습니다. 어떤 Linux 파일 시스템을 사용해야하는지 잘 모르겠다면 간단한 대답이 있습니다. 빠른 답변 : 확실하지 않은 경우 Ext4를 사용하십시오. 잡초에 들어가서 여러 파일 시스템의 차이점을 잠시 후에 살펴 보 겠지만 확실하지 않은 경우 Ext4를 사용하십시오. Ext4는 대부분의 Linux 배포에서 기본 파일 시스템입니다. 이전 Ext3 파일 시스템의 개선 된 버전입니다. 최첨단 파일 시스템은 아니지만 훌륭합니다. Ext4가 견고하고 안정적이라는 의미입니다. 앞으로 Linux 배포판은 점차 BtrFS로 옮겨 갈 것입니다. BtrFS는 여전히 최첨단이며 많은 개발이 진행되고 있으므로 프로덕.. 2022. 9. 1.
[Linux] scp 명령어 사용법 Linux에서 파일 전송하는 방법에 대해서 검색중 좋은 명령어가 있어 공유하고 기록용으로 포스팅을 진행 했다. 윈도우에서 Linux로 파일 전송은 보통 FTP, SFTP로 진행하면 아주 간단하게 가능하다. 필자는 FileZilla로 보통 활용하고 있다. https://filezilla-project.org/ 하지만, Linux에서 Linux의 경우는 어떻게 할까? 네트워크가 연결되어 있고, ssh 포트가 열려 있다면 ssh 원격 접속 프로토콜을 기반으로 한 Secure Copy(scp)의 약자로서 원격지에 있는 파일과 디렉토리를 보내거나 가져올 때 사용하는 파일 전송 프로토콜이다. 네트워크가 연결되어 있는 환경에서 ssh와 동일한 22번 포트와 identuty file을 사용해서 파일을 송수신하기 때문에.. 2022. 8. 24.
[AWS][Linux] fstab 정의 및 옵션 fstab이란 무엇인가? fstab은 Linux 시스템의 file system table을 의미하는 말이다. 파일 시스템의 정보를 저장하고 있으며 리눅스 부팅 시 마운트 정보를 저장하고 있다. 이 파일 안의 구성값들을 통해 부팅시 자동으로 적용될 수 있도록 지정한다. /etc/fstab 파일의 기능 파일 시스템의 마운트 설정 정보를 저장하고 있다. 리눅스 시스템은 부팅할 때 이 파일을 읽어 설정 내용에 따라 파일 시스템을 자동으로 마운트 한다. 파일에 오류가 존재한다면 시스템의 부팅이 중지될 수 있으니 조심해야 한다. /etc/fstab 파일의 구조 fstab 파일은 총 6가지 항목으로 구성되어 있다. 1. 장치명 /etc/fstab의 첫번째 항목에는 파일 시스템 장치명을 설정한다. 예를 들어 /dev/.. 2022. 8. 10.
[명령어] sar 설명 SAR 명령어는 System Activity Report의 약어이다. CPU, Memory, I/O 사용량을 수집, 레포트하고 저장하는 명령어이다. 시스템 자원 사용율 이력을 파일에 저장 한 후, 레포팅할 때 유용하다. 기본적으로 리눅스에 설치되어 있지 않고, 별도로 "sysstat"라는 툴을 설치하면 함께 설치된다. 참고로, sysstat 툴은 sar는 물론, iostat, pidstat, mpstat 명령어가 포함된다. 주요 옵션 사용 예시 예제1 : 2초마다 5회 CPU 정보 출력 [root@localhost ~]# sar 2 5 Linux 3.10.0-123.el7.x86_64 (localhost.localdomain) Monday 26 October 2015 _x86_64_ (2 CPU) 01:.. 2022. 7. 18.
Linux - chmod 명령어 사용 방법 (권한, 모드 변경) chmod는 파일이나 디렉터리의 권한 등의 모드를 변경합니다. 명령어는 다음과 같이 쓸 수 있습니다. $ chmod [options] mode file1 권한 변경 chmod 폴더에는 다음과 같이 4개의 파일들이 있습니다. 맨 왼쪽에 9개의 문자 rwxr-xr-x는 파일의 권한(모드)을 의미합니다. ls -l을 사용하면 파일의 권한 상태를 볼 수 있습니다. chmod$ ls -l total 16 -rwxrwxrwx 1 js js 6 3월 10 16:02 file1.txt -rw-r--r-- 1 js js 6 3월 10 16:02 file2.txt -rw-r--r-- 1 js js 6 3월 10 16:02 file3.txt -rw-r--r-- 1 js js 6 3월 10 16:02 file4.txt 일반적.. 2022. 7. 18.
[총정리] Crontab 사용법 매일 혹은 정기적으로 실행해야 하는 예약작업이 있다. 리눅스에서는 이런 일을 해 주는 것이 cron이다. cron은 간단한 텍스트 파일에 할 일들을 기록하는데, 관리자인가 아닌가에 따라서 기록할 곳이 달라진다. 관리자 권한이 있다면 /etc/crontab 파일에 기록한다. 이 파일에 기록하면 한 눈에 예약 작업을 확인할 수 있다는 장점이 있고, 명령을 실행할 사용자도 명시할 수 있다. 따라서 관리자 권한에 접근할 수 있다면 여기에 기록하자. 관리자 권한이 없다면 crontab -e 명령어를 실행해서 예약 파일을 편집한다. /etc/crontab 파일을 편집할 때와 달리 실행할 주체를 명시하는 부분이 없다. root 권한 있는 경우 - /etc/crontab 편집 root 권한이 있는 경우 /etc/cro.. 2022. 6. 15.
반응형