소프트웨어/리눅스

소프트웨어/리눅스

리눅스 부팅시 특정 서비스 제어하기 (systemd)

오늘은 systemd 기반의 리눅스 시스템에서 부팅시에 특정 서비스를 제어하는 방법에 대해 알아보겠습니다. 이는 시스템의 안정성과 성능에 중요한 영향을 미치므로, 전문적인 방법으로 접근해야 합니다. 참고로 systemd는 현대적인 리눅스 시스템에서 초기화 및 서비스 관리를 위한 시스템과 서비스 관리자입니다. 서비스 유닛을 생성하고 관리하여 부팅 시에 특정 서비스가 실행되지 않도록 막을 수 있습니다. systemctl을 이용한 서비스 관리 # 서비스 상태 확인 sudo systemctl status service_name # 서비스 활성화 상태 확인 sudo systemctl is-enabled service_name # 부팅시, 서비스 비활성화 sudo systemctl disable service_na..

소프트웨어/리눅스

Boost.Program_options을 통한 명령줄 파싱방법

오늘은 프로그래밍 분야에서 널리 사용되는 강력한 라이브러리인 Boost.Program_options에 대해 알아보겠습니다. Boost.Program_options은 명령줄 옵션을 파싱하고 처리하는 데 도움이 되는 라이브러리로, C++ 프로그램에서 명령행 인자를 처리하는 과정을 간단하고 효율적으로 만들어줍니다. 간단한 사용법 Boost.Program_options을 이용한 간단한 사용법은 다음과 같습니다. 이 예제에서는 프로그램 실행시 명령줄에서 "--input" 옵션을 통해 입력 파일 이름을 지정하는 경우를 다루겠습니다. #include #include namespace po = boost::program_options; int main(int argc, char* argv[]) { po::options..

소프트웨어/리눅스

리눅스 '정적/동적 라이브러리'의 대해서 (.so, .a, dlopen)

용어가 매번 혼동되는데 이번 기회에 조금 정리해 봤다. '정적/공유/정적 라이브러리' 비교 간단하게 테이블로 정리하면 아래와 같다. 정적(static) 라이브러리 (Static linking) 공유(shared) 라이브러리 (Dynamic Linking) 동적(dynamic) 라이브러리 (Dynamic Loading) 실행파일 포함여부 포함 불포함 (별도파일) 불포함 (별도파일) 실행파일 크기 크다 작다 작다 확장자 .a .so .so 라이브러리 로직변경시 재컴파일필요 컴파일 불필요 컴파일 불필요 실행파일 컴파일시 라이브러리 필요 라이브러리 필요 라이브러리 불필요 실행속도 빠름 느림 빠름 로딩시점 - 실행시점 필요한 시점 공유 라이브러리의 경우 실행속도가 느린데 이는 별도의 so 파일을 실행시점에 로딩해..

소프트웨어/리눅스

DAC (Discretionary Access Control)와 관련된 명령어들

임의접근제어 (DAC : Discretionary Access Control)라는 용어가 있다. 단어가 좀 어려운데 요약하자면 파일에 대한 접근을 사용자/그룹으로 제한하겠다는 거다. 누가 최초로 Discretionary 단어를 '임의'라고 해석했는지 모르겠는데 다른 의미인 '자유재량'이 더 이해하기 쉽다. 즉, 소유자가 '자유재량'으로 다른 사용자/그룹에 대한 권한을 제어할 수 있다는 것이다. 사용자와 그룹의 생성 아래 두 파일로 관리된다. 사용자 : /etc/passwd 그룹 : /etc/group 아래 명령으로 사용자와 그룹을 추가할 수 있다. 당연히 한 사용자는 여러 그룹에 소속될 수 있다. # 사용자 추가 $ useradd kkangeva # 사용자 패스워드 지정 혹은 변경 $ passwd kka..

강에바
'소프트웨어/리눅스' 카테고리의 글 목록