7월, 2025의 게시물 표시

리눅스 /run/user/ 디렉터리: 언제 마운트되고 로그인 없이도 유지될까?

/run/user/<UID> 디렉터리 언제 생기나? Lingering으로 세션 유지하는 법 📌 목차 보기 /run/user/<UID>의 정체 언제 마운트될까? su/sudo 전환의 차이 Lingering으로 유지하기 마무리 정리 /run/user/<UID>의 정체 /run/user/<UID> 디렉터리는 리눅스 시스템에서 로그인한 사용자를 위한 런타임 임시 파일들을 저장하는 전용 디렉터리 입니다. UID는 User ID를 의미하며, 일반적으로 1000 이상부터 시작되는 숫자입니다. 예를 들어, 여러분이 첫 번째 일반 사용자라면 보통 UID가 1000입니다. 그렇다면 /run/user/1000 이라는 디렉터리가 생성될 수 있겠죠. 이 디렉터리에는 GNOME, KDE와 같은 데스크톱 환경이 사용하는 소켓 파일이나, 사용자 단위 systemd 서비스가 사용하는 임시 파일, 파이프 등 다양한 파일들이 저장됩니다. 중요한 점은 이 디렉터리가 휘발성 이라는 것입니다. 즉, 시스템을 재시작하거나 사용자가 로그아웃하면 이 디렉터리는 자동으로 사라진다 는 의미입니다. 해당 디렉터리는 보통 tmpfs 파일 시스템으로 마운트됩니다. 이는 실제 디스크가 아닌 메모리(RAM)에 파일이 저장된다는 뜻이며, 덕분에 속도가 빠르고 자동 삭제가 가능합니다. 언제 마운트될까? 이 디렉터리는 정확히 언제 생길까요? 정답은 사용자가 시스템에 로그인할 때입니다. 로그인은 여러 경로를 통해 이뤄질 수 있습니다. 예를 들어 GDM, SDDM 등 GUI 로그인 매니저를 사용할 때 터미널에서 TTY를 통해 로그인할 때 SSH로 원격 접속할 때 이러한 로그인 과정에서는 PAM(Pluggable Authentication Modules)이라는 인증 모듈 체계가 동작하게 되며, 이 중 pam_systemd 라는 모듈이 systemd에게 해당 사용자의 세...

MySQL 라이선스 종류와 선택 가이드

이미지
  📌 목차 보기 MySQL이란? 고속 트랜잭션과 복제 MySQL 인기 이유 MySQL 에디션 비교 마치며 MySQL이란? 먼저 MySQL에 대해 알아보겠습니다.  MySQL은 관계형 데이터베이스 관리 시스템 입니다. 데이터를 테이블, 행, 열 로 구조화하여 프로그래밍과 데이터 관리를 효율적으로 해줍니다. MySQL의 중요한 특징 중 하나는 트랜잭션 기반 시스템 이라는 점입니다. 예를 들어 데이터를 입력(insert), 수정(update), 삭제(delete)하는 작업들이 하나의 묶음으로 처리됩니다. 이를 "트랜잭션"이라고 하며, 모든 작업이 성공해야만 실제로 저장 됩니다. MySQL은 기본적으로 InnoDB라는 스토리지 엔진 을 사용합니다. 이 엔진은 복잡한 작업과 대용량 데이터를 빠르게 처리하고, 데이터 손실 없이 안정적인 작업을 가능하게 해줍니다. 고속 트랜잭션과 복제 MySQL은 특히 온라인 트랜잭션 처리(OLTP) 에 강합니다. 즉, 빠른 속도로 많은 거래가 일어나는 환경 — 예를 들어 은행 시스템, 온라인 쇼핑몰 등에서 매우 유용합니다. 게다가 MySQL은 데이터를 단순히 저장하는 것뿐만 아니라 복제(Replication) 도 지원합니다. 메인 서버의 데이터를 여러 개의 복제 서버로 자동으로 전달하여 데이터 가용성을 높이고 부하를 분산 시켜줍니다. 이를 통해 서버의 안정성과 처리 속도 가 향상됩니다. MySQL 인기 있는 이유 MySQL이 웹에서 가장 인기 있는 데이터베이스인 데는 여러 이유가 있습니다. SQL 기반의 관계형 시스템 이면서 문서 기반(NoSQL) 저장 방식도 지원 하여 하나의 시스템에서 두 가지 방식을 모두 사용할 수 있습니다. 또한, 보안 기능이 우수 하고 테이블스페이스 기능 으로 디스크 공간을 효율적으로 관리할 수 있으며 설치와 사용이 간편 해서 초보자부터 전문가까지 모두 사용할 수 있습...

MySQL 주요 기능 하나씩 쉽게 살펴보기

이미지
📌 목차 보기 MySQL Shell MySQL Server MySQL Enterprise Edition MySQL Enterprise Plugins MySQL Enterprise Backup MySQL Workbench Enterprise MySQL Enterprise Monitor Oracle Enterprise Manager Plugin MySQL Enterprise Thread Pool MySQL Enterprise Authentication MySQL Enterprise Audit MySQL Enterprise Firewall MySQL Enterprise Asymmetric Encryption MySQL Transparent Data Encryption (TDE) MySQL Enterprise Masking 마치며 ✅ MySQL Shell – 통합 클라이언트 도구 먼저 소개된 도구는 MySQL Shell 입니다. 이 도구는 MySQL 데이터베이스에서 작업하고 관리하는 데 쓰는 통합 클라이언트 예요. 다시 말하면, 이 도구 하나만으로 데이터 입력, 삭제, 수정은 물론이고, 시스템을 설정하고 모니터링하는 관리 기능까지 다룰 수 있습니다. MySQL Shell은 사용자가 선호하는 언어로 작업할 수 있도록 JavaScript, Python, SQL 세 가지 언어를 지원합니다. 그래서 자동화 작업을 할 때나 복잡한 명령을 작성할 때 익숙한 언어로 작업할 수 있어 코딩이 훨씬 유연하고 효율적 입니다. 또한 이 Shell은 두 가지 데이터 형태 도 모두 지원합니다 문서형 모델 (NoSQL) : 유연하고 자유로운 데이터 구조 관계형 모델 (SQL) : 테이블 형태의 정형화된 구조 즉, 프로젝트에 따라 어떤 데이터 모델을 쓰더라도 MySQL Shell 하나로 처리할...