운영체제/Linux 17

[Linux] GROB(Grand Unified Boot Loader)

GNU 프로젝트에서 만든 부트로더로 /boot/grub/grub.conf 를 환경설정 파일로 사용한다. grub.conf의 주요 설정 변수 boot : 부팅 디스크를 설정한다. 디스크가 하나인 경우 주석 표시되어 있다. default : 사용자가 아무런 선택을 하지 않을 때 기본으로 부팅할 운영체제의 순서를 설정한다. 0번은 grub.conf 상의 첫번째 운영체제이고 1번은 grub.conf 상의 두 번째 운영체제를 뜻한다. (0번부터 시작하네) timeout : 설정된 시간(초 단위)동안 선택하지 않으면 default 에 설정된 운영체제가 로드된다. timeout을 설정하지 않으면 사용자가 선택할 때까지 대기한다. splashimage : GRUB 화면의 배경 이미지를 설정하며 형식은 xpm.gz 압축..

운영체제/Linux 2023.06.09

[Linux] /etc/fstab 파일

==/etc/fstab 파일 리눅스가 부팅될 때마다 자동으로 읽는 중요한 파일이다. 이 파일에는 마운트 정보가 있으며 글자가 틀릴 경우 아예 부팅이 되지 않을 수 있으므로 수정 시 주의기 필요하다. 6개의 필드 장치이름 마운트될 디렉토리 파일시스템 속성 dump 사용여부 파일시스템 체크 여부를 의미한다. 파일 시스템과 속성을 defaults로 설정하면 읽기/쓰기/실행 등의 대부분 작업이 가능하다. dump 사용여부를 1로 설정하면 리눅스 dump 명령을 이용한 백업이 가능하다. 파일 시스템 체크 여부를 1 또는 2로 설정히면 부팅 시에 이 파티션을 체크하는데 1인 파일 시스템을 먼저 체크하고, 2는 1을 체크한 후에 체크한다. 3은 없다. 일반적으로 파일 시스템을 1로 설정하고 이외에는 2로 설정하거나 ..

운영체제/Linux 2023.05.31

[Linux] 커널 컴파일 (Kernel compile)

현 커널 버전 확인 # uname -r 커널 소스 다운로드 www.kernel.orgThe Linux Kernel Archiveswww.kernel.org# cd /usr/src 디렉토리에 다운로드 커널 소스 압축 풀기 # tar xvfJ linux-5.18.15.tar.xz # cd linux-5.18.15 커널 설정 초기화 # make mrproper 커널 환경 설정 # make xconfig .config 편집 및 이전 정보 삭제 .config 파일 편집 # make clean 커널 컴파일 및 설치 # make # make modules_install # make install # ls-l /boot 새로운 커널로 부팅

운영체제/Linux 2023.05.31

[Linux] SAMBA 서비스

삼바는 GPL 기반의 자유 소프트웨어로 리눅스와 윈도우 간 디렉토리, 파일, 프린터, USB 등을 공유하는데 사용할 수 있다. 삼바는 TCP/IP를 기반으로 NetBIOS상에서 동작하는 'SMB(Server Message Block) 프로토콜'을 이용한다. 삼바에서 설정한 그룹과 호스트명이 윈도우의 Network Neighborhood에 컴퓨터 이름으로 표시된다. 또한 삼바를 이용하면 상대 호스트의 IP주소 대신 '컴퓨터 이름'을 이용하여 접속할 수 있다. 이를 'WINS(Windows Internet Name Service)'라 한다. 'CIFS(Common Internet File System)'는 SMB를 인터넷까지 확장한 표준 프로토콜로, 유닉스와 유닉스 환경을 동시에 지원한다. 삼바 서버는 sm..

운영체제/Linux 2023.05.29

[Linux] Shell 쉘 정리

==쉘의 설정 및 확인 (1) 현재 쉘의 확인 환경변수 SHELL을 통하여 현재 로그인한 사용자의 쉘을 확인한다. $ echo $SHELL /bin/bash (2) 시스템이 지원하는 쉘 목록 확인 - 1 'chsh 명령어'의 -l, --list-shells 옵션을 사용하여 시스템이 지원하는 쉘 목록을 확인할 수 있다. (list) $ chsh -l 또는 $ chsh --list=shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh (3) 시스템이 지원하는 쉘 목록 확인 - 2 '/etc/shells 파일'에 시스템이 지원하는 쉘 목록이 기록되어 있으므로 이 파일을 확인해보기 (concatenate) $ cat /etc/shells /bi..

운영체제/Linux 2023.04.29

[Linux] rpm, dnf

rpm : 레드햇 기반 리눅스에서의 패키지 관리. rpm 기본옵션 rpm 설치 및 업데이트 옵션 rpm 제거 옵션 rpm 질의 옵션 rpm 검증 옵션 rpm 패키지 검증 코드 rpm 기본옵션 -v : 자세한 정보를 출력한다. (verbose) --quiet : 에러 메시지 외에는 다른 정보를 출력하지 않는다. --version : rpm의 버전을 출력 rpm 설치 및 업데이트 옵션 -i : 동일한 패키지가 설치되어 있지 않은 경우, 패키지를 새로 설치한다. (install) -h : 설치 혹은 업그레이드 진행 상황을 # 문자를 이용하여 표시한다. (show) -U : 패키지를 업그레이드한다. 단, 기존에 설치된 패키지가 없을 경우 새로 설치한다. (upgrade) -F : 업그레이드한다. 단, 이전 버전..

운영체제/Linux 2023.04.07

[Linux] Shell programming | Shell script 쉘스크립트 정리 (수정)

쉘스크립트를 통해 주기적인 '백업', 시스템 모니터링 등 반복 작업을 자동화할 수 있다. 쉘스크립트는 프로그래밍언어에 비해 문법이 간단하여 작성하기 쉽고 빠르게 작성할 수 있다. 또한 '인터프리터(ex. Python. 프로그래밍 언어의 소스코드를 '바이너리'로의 변환과정없이 텍스트의 구문을 해석하여 바로 실행하는 방식)'가 명령어 해석을 바로바로 하기 때문에 디버깅이 쉽다. (컴파일 방식은 C/C++, Java, Swift, Kotlin 등) cf. 인터프리터 (2) 쉘 스크립트 형식 첫번째 줄에는 해당 스크립트가 사용할 쉘을 '#!'을 통하여 명시한다. #!(shebang) - 실행파일은 바이너리 형태이거나 스크립트처럼 텍스트 형태일 수 있는데 "프로그램 로더(program loader)"는 '#!' ..

운영체제/Linux 2023.02.08