반응형 IT118 [리눅스 기초 #16] "응답 없는 너를 보내며" : top과 kill로 폭주하는 프로세스 진압하기 >리눅스 기초 시리즈의 새로운 장을 여는 16번째 시간입니다! 그동안 시스템의 신분증을 확인하고 파일의 위치를 찾는 법을 배웠다면, 이제는 살아 움직이는 시스템의 심박수를 체크하고 관리할 때가 되었습니다.개발을 하다 보면 내가 짠 코드가 무한 루프에 빠지거나, Flutter 빌드가 멈춰버려 시스템 전체가 먹통이 되는 아찔한 순간을 마주하게 됩니다. 윈도우라면 '작업 관리자'를 켜서 강제 종료를 하겠지만, 터미널에서는 어떻게 해야 할까요? 오늘은 시스템의 폭주를 막는 두 가지 핵심 무기, **top**과 **kill**에 대한 저의 생생한 '진압' 기록을 공유합니다.1. 나의 경험담: "멈춰버린 플러터 빌드와 뜨거워진 내 노트북"최근 WSL2 환경에서 복잡한 애니메이션이 포함된 Flutter 앱을 빌드하던.. 2026. 1. 30. [리눅스 기초 #15] "너는 누구냐?" : uname과 hostname으로 시스템 정체성 확인하기 리눅스 기초 시리즈의 15번째 주제에 오신 것을 환영합니다! 그동안 우리는 파일의 미로를 탐험하고(find), 권한의 문을 열며(chmod), 도커(Docker)라는 거대한 컨테이너를 다루는 법까지 숨 가쁘게 달려왔습니다.하지만 정작 우리가 발을 딛고 서 있는 이 시스템이 어떤 운영체제인지, 커널 버전은 무엇인지, 그리고 이 컴퓨터의 이름은 무엇인지 정확히 알고 계신가요? 오늘은 시스템의 프로필을 확인하는 가장 기본적이면서도 중요한 두 명령어, **uname**과 **hostname**에 대한 저의 생생한 경험담을 공유합니다.1. 나의 경험담: "커널 버전이 왜 중요해?"라고 묻는 당신에게최근 WSL2 환경에 최신 AI 라이브러리를 설치하려던 때의 일입니다. 모든 가이드라인을 완벽하게 따랐음에도 불구하고.. 2026. 1. 29. [리눅스 기초 #14] "도대체 넌 어디에 있니?" : which와 whereis로 실행 파일 추적하기 어느덧 리눅스 기초 시리즈가 14번째 시간에 접어들었습니다. 지난 시간에는 터미널의 블랙박스인 history를 통해 과거의 나를 만났다면, 오늘은 현재 내 명령어가 어디서 실행되고 있는지를 찾아내는 탐정 놀이를 해보려 합니다.리눅스 환경에서 Flutter나 Python, 혹은 Java 같은 개발 도구를 다루다 보면 "분명 설치했는데 왜 실행이 안 되지?"라거나 "내가 지금 쓰고 있는 게 정식 버전이 맞나?" 하는 의구심이 들 때가 있습니다. 오늘은 실행 파일의 행방을 쫓는 두 가지 필살기, **which**와 whereis 활용기를 공유합니다.1. 나의 경험담: "중복 설치의 늪에서 길을 잃다"최근 WSL2 우분투 환경에서 Flutter 개발 환경을 다시 세팅할 때의 일입니다. 예전에 설치해둔 버전과 새.. 2026. 1. 29. [리눅스 기초 #13] "어제 쓴 그 명령어 뭐였지?" : history로 기억력을 해킹하는 법 개발자로 살다 보면 어제 분명히 성공했던 복잡한 명령어가 오늘 아침엔 도저히 떠오르지 않아 당황하는 순간이 있습니다. 특히 여러 개의 플래그(Flag)가 붙은 Docker 실행 명령어라든지, 한참 구글링해서 찾아낸 Flutter 빌드 최적화 옵션 같은 것들이 그렇죠."내 머릿속엔 지우개가 있나?"라고 자책할 필요 없습니다. 리눅스 터미널은 우리가 입력한 모든 명령을 묵묵히 기록하고 있으니까요. 오늘은 터미널의 블랙박스이자 개발자의 훌륭한 복습 도구인 history 명령어 활용기를 공유합니다.1. 나의 경험담: "30분의 구글링을 1초 만에 복구하다"어제 저녁, 특정 라이브러리 충돌을 해결하기 위해 약 30분간 구글링을 한 끝에 아주 긴 한 줄의 명령어를 찾아내어 해결에 성공했습니다. 그런데 오늘 아침, .. 2026. 1. 29. [리눅스 기초 #12] 귀차니즘이 만든 혁명: alias로 나만의 비밀 명령어 만들기 리눅스를 사용하다 보면 필연적으로 '반복의 늪'에 빠지게 됩니다. 매번 sudo apt update && sudo apt upgrade를 치거나, 복잡한 옵션이 붙은 tar -cvzf ... 명령어를 입력하다 보면 "이걸 좀 더 짧게 줄일 수는 없을까?"라는 강렬한 귀차니즘이 밀려오죠.사실 '귀차니즘'은 개발자의 가장 큰 덕목 중 하나입니다. 반복되는 수고를 자동화하려는 본능이 곧 생산성으로 이어지기 때문입니다. 오늘은 긴 명령어를 단 한 줄, 아니 단 한 단어로 줄여주는 마법 같은 명령어 **alias**와 이를 영구적으로 보관하는 .bashrc 커스터마이징 경험을 공유합니다.1. 나의 경험담: "오타와의 전쟁, 그리고 해방"Flutter 프로젝트를 빌드하거나 Docker 컨테이너를 관리할 때, 명령어.. 2026. 1. 28. [리눅스 기초 #11] "내 컴퓨터에선 됐는데?" : 도커(Docker)로 환경 문제 완벽하게 끝내기 리눅스 기본 명령어를 마스터하고 나면 개발자로서 마주하는 다음 커다란 장벽은 바로 **'환경 설정'**입니다. 새로운 팀 프로젝트에 합류하거나 서버를 옮길 때마다 Python 버전을 맞추고, DB를 깔고, 라이브러리 충전 문제를 해결하다 보면 "분명 내 컴퓨터에서는 잘 돌아갔는데 왜 서버에선 안 되지?"라는 탄식이 터져 나옵니다.오늘은 리눅스 활용의 꽃이자, 현대 개발자의 필수 덕목인 **도커(Docker)**를 처음 접하며 느꼈던 해방감과 실전 활용법을 공유합니다.1. 나의 경험담: "지옥의 환경 설정에서 탈출하다"최근 AI API를 연동한 Flutter 백엔드 서버를 구축하던 중이었습니다. 로컬 윈도우(WSL2)에서 공들여 세팅한 개발 환경을 실제 리눅스 서버로 옮겨야 했죠. 하지만 서버의 OS 버전.. 2026. 1. 28. 이전 1 ··· 15 16 17 18 19 20 다음 반응형