리눅스 사용자 권한 (chmod, chown, chgrp)
·
Linux
리눅스 파일 권한 구조1. 기본 권한의 구성리눅스의 파일 권한은 ls -l 명령으로 확인할 수 있습니다. 예를 들어:-rw-r--r-- 1 hong devteam 1024 Jan 9 10:00 example.txt 항목 설명 -rw-r--r-- 권한: 소유자(owner), 그룹(group), 기타 사용자(others) 권한. 1 하드 링크의 개수. hong 소유자(owner): 파일의 주인 사용자. devteam 그룹(group): 소유자가 속한 그룹. 1024 파일 크기(바이트 단위). ..
리눅스 sudo(superuser do) 와 su(substitute user) 명령어
·
Linux
리눅스 관리에서 중요한 명령어인 sudo와 su는 각각 특정 명령 실행과 사용자 전환을 목적으로 사용된다.이 글에서는 두 명령의 특징과 사용법을 정리했다.sudo 명령어sudo란? "superuser do"의 약자로, 현재 사용자 비밀번호를 입력하여 관리자 권한으로 특정 명령을 실행한다.보안성을 유지하면서 필요한 작업만 관리자 권한으로 실행할 수 있게 설계되었다.sudo의 주요 특징권한 제한 : 특정 명령만 관리자 권한으로 실행 가능.안전성 : 관리자 비밀번호 대신 사용자 비밀번호를 사용하며 로그로 기록됨.시간 제한 : 인증 후 기본 5분 동안 추가 인증 없이 사용 가능 (설정 변경 가능).로그 기록 : 실행 기록은 /var/log/auth.log 또는 /var/log/secure 에 저장sudo 사용법..
리눅스 사용자 계정
·
Linux
리눅스 사용자 계정의 구조사용자 정보 파일/etc/passwd모든 사용자 계정 정보를 저장.형식: username:x:UID:GID:comment:home_directory:shell설명:username: 사용자 이름.x: 비밀번호 필드(보안상 /etc/shadow에 저장).UID: 사용자 ID.GID: 그룹 ID.comment: 사용자 설명(예: 이름).home_directory: 홈 디렉토리 위치.shell: 로그인 셸(기본값: /bin/bash)./etc/shadow암호화된 비밀번호를 저장.형식: username:encrypted_password:last_change:min:max:warn:inactive:expire/etc/group그룹 정보를 저장.형식: group_name:x:GID:membe..
Docker 기초 이론
·
docker
1) DockerDocker도커는 애플리케이션과 필요한 실행 환경을 하나의 컨테이너로 묶어 어디서나 동일하게 실행할 수 있도록 도와주는 오픈소스 가상화 플랫폼이다.특징컨테이너 기반 : 애플리케이션과 실행 환경을 격리하여 경량화된 가상화 환경 제공이식성 : 로컬, 서버, 클라우드 등 어디서나 동일하게 실행 가능.빠름 : 기존 가상머신(VM)보다 가볍고 실행 속도가 빠름.자동화 : 배포와 관리를 단순화하여 CI/CD 파이프라인에 활용 가능.구성 요소도커 이미지(Image) : 컨테이너 실행에 필요한 템플릿.도커 컨테이너(Container) : 이미지를 실행한 독립적인 환경.도커 허브(Docker Hub) : 이미지 저장소.도커 엔진(Docker Engine) : 컨테이너를 관리하는 핵심 소프트웨어. 1. D..
Docker 설치 및 실행
·
docker
MacInstall Docker for Mac to get started. This guide covers system requirements, where to download, and instructions on how to install and update.docs.docker.com  rosetta 설치로제타(Rosetta)Docker 컨테이너 내에서 다른 아키텍처의 바이너리를 실행할 수 있도록 지원하는 도구라고 한다.다른 아키텍처의 바이너리를 컨테이너 환경에서 실행할 수 있어서 다양한 플랫폼 간의 익성을 높일 수 있다.특정 아키텍처에 종속되지 않고 효율적인 배포와 관리를 할 수 있다는 장점 터미널에서 Docker 설치되었는지 확인Docker 동작 확인Docker 동작 과정으로 Docker Imag..
리눅스 vi 텍스트 에디터 사용법
·
Git
리눅스 vi 텍스트 에디터 사용법vi는 리눅스와 유닉스 시스템에서 기본 제공되는 강력한 텍스트 에디터입니다. 다소 직관적이지 않지만, 기본적인 사용법만 익히면 효율적인 파일 편집이 가능합니다.vi의 3가지 모드vi는 3가지 주요 모드로 동작합니다.모드모드명령 모드 (Command mode)기본 모드로, 커서 이동, 명령 실행(저장, 종료 등)을 수행합니다.입력 모드 (Insert mode)텍스트를 입력할 수 있는 모드로, 키보드로 직접 내용을 작성합니다.명령행 모드 (Command-line mode)명령 모드에서 : 키를 눌러 실행하며, 파일 저장, 종료, 검색 등 고급 명령을 수행합니다.vi 실행 및 종료1. 파일 열기 :vi 파일이름파일이 존재하지 않으면 새 파일이 생성됨2. 종료 및 저장 : 저장 ..
코틀린 문법 총정리
·
Kotlin
메인 함수fun main() { }맨 뒤에 세미콜론( ; )이 붙지 않음. (있어도 되고 없어도 되지만 안 붙이는게 맞다.)print, printlnclass PrintEx { fun printKotlin() { println("Hello, Kotlin!") // Hello, Kotlin! print("Hello, Kotlin!") // Hello, Kotlin! }} 변수class VariableEx { fun variableEx() { var i : Int = 10 var name : String = "현구" var point : Double = 3.3 }}변수를 선언할 때는 var 라는 키워드를 사용.코틀린은 ..
리눅스 디렉토리 계층 구조
·
Linux
리눅스의 디렉토리 계층 구조는 FHS(Filesystem Hierarchy Standard)에 따라 설계되었습니다. 이 표준은 리눅스 및 유닉스 계열 시스템에서 파일과 디렉토리가 어떻게 구성되고 배치되어야 하는지를 정의합니다. 이를 통해 사용자는 디렉토리의 역할과 파일의 위치를 쉽게 이해할 수 있습니다.리눅스 디렉토리 계층 구조의 핵심리눅스 파일 시스템은 루트 디렉토리(/)에서 시작하며, 모든 디렉토리와 파일은 이곳에서 파생됩니다. 루트 디렉토리 아래에는 기능별로 나뉜 하위 디렉토리가 존재합니다.주요 디렉토리와 역할디렉토리설명/루트 디렉토리: 모든 파일과 디렉토리의 최상위 디렉토리입니다./bin사용자 명령어 바이너리: 시스템 실행에 필요한 기본 명령어(ls, cp, mv 등)가 포함됨./boot부팅 파일..
가상화(Virtualization)
·
Linux
가상화(Virtualization)는 물리적인 컴퓨팅 리소스를 논리적으로 분리하여 더 유연하고 효율적으로 사용할 수 있도록 하는 기술입니다. 이를 통해 하나의 물리적인 하드웨어를 여러 개의 독립된 환경으로 나누거나, 반대로 여러 하드웨어를 하나의 논리적인 환경으로 통합할 수 있습니다. 가상화는 현대 IT 환경에서 중요한 개념으로, 클라우드 컴퓨팅, 서버 관리, 네트워킹 등 다양한 분야에서 활용됩니다.가상화의 핵심 개념1. 물리적 자원과 논리적 자원의 분리물리적인 하드웨어(서버, 스토리지, 네트워크 등)를 가상 자원으로 추상화합니다.가상 자원은 실제 하드웨어처럼 작동하지만, 소프트웨어로 제어되며 독립적으로 동작합니다.2. 하이퍼바이저(Hypervisor)가상화를 구현하는 핵심 소프트웨어입니다.하드웨어와 가..
리눅스의 계층 구조(커널, 셸 등)
·
Linux
리눅스 계층 구조의 개요리눅스 운영 체제는 크게 다음과 같은 4가지 계층으로 나눌 수 있습니다.하드웨어 계층커널 계층유틸리티 계층사용자 계층 (셸 포함)이제 각 계층을 자세히 살펴보겠습니다.하드웨어 계층이 계층은 물리적인 컴퓨터 하드웨어를 포함합니다.예: CPU, 메모리(RAM), 저장 장치(SSD, HDD), 네트워크 카드 등리눅스 운영 체제는 하드웨어를 직접 제어할 수 없으며, 이를 위해 커널이 존재합니다.하드웨어는 커널이 제공하는 인터페이스를 통해 접근됩니다.커널 계층커널은 리눅스 운영 체제의 핵심이며, 하드웨어와 소프트웨어 간의 중재자 역할을 합니다.커널은 다음과 같은 주요 기능을 수행합니다:프로세스 관리CPU 시간을 각 프로세스에 할당하고, 여러 프로세스가 동시에 실행되도록 스케줄링합니다.프로세..