리눅스 디렉토리 안의 대량 파일 삭제하기
2022. 5. 3. 20:52
리눅스/Linux
리눅스에서 여러 디렉토리에 대량의 파일이 쌓여 삭제해야할 때 적지 않은 시간이 걸리는 것을 확인할 수 있었다. 그래서 어떻게 하면 더 빠르게 대량의 파일들을 삭제할 수 있는 방법이 없을까 찾아보았다. $ rsync 그래서 찾은 명령어가 rsync 명령어다. 보통 rsync 명령어를 통해 특정 디렉토리를 백업할 때 사용하거나 동기화 시킬때 주로 사용하곤 한다. rsync 라는 명령어를 사용해서 대량의 파일들을 삭제하는 방법을 보게 되었는데 얼마나 빠른지 직접 사용해보고 시간을 재보았다. 아, 우선 rsync 를 사용해 대량의 파일들을 삭제하는 방법으로 비어있는 디렉토리를 생성하고 대량의 파일들이 들어있는 디렉토리를 비어있는 디렉토리에 동기화 시키는 것이다. 그럼 대량의 파일들이 들어있는 디렉토리가 비어있는..
리눅스 정규 표현식(Regular Expression) 정리 (3) - regex101 task 1 풀이
2022. 4. 14. 19:47
리눅스/Linux
정규 표현식을 하나씩 찾아보면서 사용해보다가 문제를 풀어보면서 정리하고 싶어서 정규 표현식 문제 풀이 사이트를 찾아보았다. https://regex101.com regex101: build, test, and debug regex Regular expression tester with syntax highlighting, explanation, cheat sheet for PHP/PCRE, Python, GO, JavaScript, Java, C#/.NET. regex101.com 각 언어별 정규 표현식을 직접 사용해볼 수도 있고 문제를 풀어볼 수 있는 사이트다. 이 사이트에서 문제를 풀면서 사용했던 정규 표현식에 대해서 정리해야겠다. 정규 표현식 요약 정리 (?i)[문자] 뒤에 나오는 문자를 대소문자 ..
리눅스 정규 표현식(Regular Expression) 정리 (2)
2022. 4. 9. 20:32
리눅스/Linux
지난 번에 11 가지의 간단한 리눅스 정규표현식을 알아보고 직접 사용해봤다. 이번에는 사용해보지 않은 다른 정규 표현식들을 사용해보고 정리해보려고 한다. 정규 표현식 요약 정리 [문자1]|[문자2] 문자1 또는(or) 문자2 가 포함된 문자열 [문자]{n} 문자를 n 번 반복하는 문자열 [문자]{n,} 문자를 최소 n 번 이상 반복하는 문자열 [문자]{m,n} 문자를 최소 m 번 이상 n 번 이하 반복하는 문자열 [0-9], [a-z], [A-Z] 0부터 9까지, a 부터 z 까지, A 부터 Z 까지의 범위를 나타냄 이번에 정규 표현식을 사용해보기 위해서 텍스트 파일을 하나 만들어보았다. 저번에 사용했던 텍스트 파일에서 살짝 추가했다. $ cat example.txt Hello world Linux sh..
리눅스 정규 표현식(Regular Expression) 정리 (1)
2022. 4. 3. 20:56
리눅스/Linux
리눅스에서 자주 사용하는 정규 표현식에 대해서 정리하려고 한다. 정규 표현식은 리눅스 뿐만 아니라 다양한 언어에서 사용되고 있다. 정규 표현식이란 "특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어" 라고 정의되어 있다. 굳이 정규 표현식을 알아야 하나 라는 궁금증이 생길 수도 있다. 사실 실무에서 굳이 정규 표현식을 사용하지 않아도 여러 명령어를 사용해 충분히 원하는 결과를 얻을 수 있다. 나도 마찬가지로 정규 표현식을 사용하기 보다 내가 알고 있는 명령어를 사용해 결과를 얻는 게 더 편했기 때문에 사용하지 않았던 것 같다. 하지만 정규 표현식을 사용하게 된다면 보다 쉽고 간단하게 원하는 결과를 얻을 수 있다는 장점이 있다. 물론 다 좋은 것 만은 아니다. 간결하게 표현하는 만큼 가독성..
리눅스 레이드(RAID)
2022. 1. 30. 17:06
리눅스/Linux
이전에도 RAID에 대해서 정리했지만 너무 오래돼서 잘 기억이 나지 않아 다시 정리해보는 시간을 가졌다. RAID 란 무엇이고 왜 사용하고 어떤 종류가 있는지 다시 정리해봤다. RAID 란 RAID 는 Redundant Array of Independant Disk의 약자로 독립된 여러개의 디스크를 중복해서 묶는다 라고 해석해볼 수 있다. 음,, 그러니까 RAID는 여러 개의 디스크들을 묶어서 사용하는 것이구나라고 생각할 수 있다. 그럼 여러 개의 디스크를 왜 묶어서 사용하지? 디스크 "1개"만 사용한다고 해보자. 1개의 디스크를 사용한다고 했을 때 만약 문제가 생겨 디스크를 사용하지 못하게 된다면 디스크에 저장된 데이터를 모두 사용하지 못하게 된다. 그리고 디스크에 크기가 큰 파일을 저장하려고 하면 엄..
메모리 Buffer 와 Cache 이해하기
2022. 1. 20. 19:45
리눅스/Linux
free 명령어에 대해서 정리하다가 컬럼에 나오는 buffer 와 cache 에 대해 정확히 무엇을 의미하는지 궁금해졌다. 그래서 혼자 열심히 찾아 공부한 내용을 정리해보려고 한다. 우선 메모리를 확인하는 명령어 중 하나인 free 명령어 결과를 확인해보면 buffer 와 cache 컬럼을 볼 수 있다. $ free -h total used free shared buff/cache available Mem: 486M 78M 297M 4.4M 110M 391M Swap: 2.0G 0B 2.0G 이전에 면접을 봤을 때 면접을 보시는 엔지니어분이 나에게 이런 질문을 했다. 현재 서비스가 작동중인 서버에 새로운 서비스를 작동시키기 위해서 free 명령어를 통해 메모리가 충분한지 확인해야 한다고 가정했을 때 그럼..
리눅스 시스템 재시작 로그 확인
2021. 11. 18. 14:31
리눅스/Linux
리눅스 서버에서 시스템이 언제 재시작 되었는지 확인하고 싶다면 last 명령어를 통해서 확인할 수 있다. last 명령어와 lastlog 명령어에 대해서 헷갈릴 수도 있다. last 명령어는 /var/log/wtmp 로그를 통해 사용자의 성공한 로그인/로그아웃 정보와 시스템 부팅 정보를 보여준다. lastlog 명령어는 /var/log/lastlog 가장 최근에 성공한 로그인 기록을 보여준다. 따라서 last 명령어를 통해 시스템 부팅 정보를 확인해보려면 아래의 명령어를 사용하면 된다. # last reboot 명령어를 실행시키면 언제, 누가 부팅했는지 알 수 있다. 누군가에 의해 부팅된 게 아닌 커널에 의해 부팅된 경우 누군가 명령어로 시스템을 부팅한 게 아닌 시스템 자체적으로 부팅되었다고 생각하면 된..
리눅스 네트워크 확인 명령어 정리
2021. 9. 12. 20:06
리눅스/Linux
리눅스에서 네트워크를 확인하기 위한 명령어를 정리해봤다. 일단 네트워크가 이상 없는지 확인할 때 주로 ping, netstat, traceroute 등 많은 명령어를 통해 네트워크를 확인한다. ping (Packet INternet Groper) 네트워크 상태를 확인할 때 정말 많이 사용하는 명령어다. ping 명령어는 IP 네트워크를 통해 특정 목적지까지 네트워크가 잘 동작하고 있는지 확인하는 명령어다. 그래서 ping 명령어를 통해 서버로 패킷이 잘 보내지는지 확인해 서버 네트워크 상태를 확인한다. 잘 작동중이던 서버에 패킷이 가지 않는다면 보통 서버에 hung 이 걸려 다운되거나 다운되기 직전의 상황일 것이다. ping 명령어는 이렇게 사용한다. # ping [옵션] [목적지 IP 주소] [옵션] ..