OS/Linux

OS/Linux

[Linux] rbash - 사용자 명령어 사용 제한

리눅스 설치시 기본적으로 제공되는 쉘 bash 에서는 특정 사용자의 명령어를 제한하기 위한 기능이 존재하지 않는다. /bin/ 에 설치된 바이너리의 경우 퍼미션을 지정을 통해 사용자 접근 제한이 가능하나, 세부적으로 사용자별 접근 제한이 가능하지 않다. 이를 해결하기 위해선 bash에서 restricted shell 기능을 지원하며, 이를 rbash라 한다. The Restricted Shell (Bash Reference Manual) 6.10 The Restricted Shell If Bash is started with the name rbash, or the --restricted or -r option is supplied at invocation, the shell becomes restric..

OS/Linux

[CentOS] Gnome 설정화면을 X11 forwarding 에서 실행하기

ssh를 X11 forwarding 상태로 실행 후 아래의 명령어를 입력하면 Gnome control center가 실행된다. env XDG_CURRENT_DESKTOP=GNOME gnome-control-center Display등의 설정은 불가능하지만 다른 설정들은 가능하다.

OS/Linux

[CentOS 7] Gnome환경에서 ssh를 이용하여 Display 항상 켜기로 설정

gsettings set org.gnome.desktop.session idle-delay 0 gsettings set org.gnome.desktop.screensaver lock-enabled false

OS/Linux

CentOS + QTCreator 환경에서 Distcc 빌드 설정하기

CentOS 환경에서 QT와 CPP를 이용하여 프로젝트를 개발하고 있다. 프로그램의 규모가 커진 만큼 프로젝트를 빌드하기 위해 많은 시간이 소요되며, 빌드 과정중에 CPU 및 Memory 소모량 역시 증가했다. 또한 각 프로그램이 구동되기 위해 필요한 프로그램 들도 Memory 점유율이 높은 상태여서 개발 PC의 Memory가 항상 부족한 상태다. 이러한 상황에서 테스트 및 기능 수정 도중 빌드를 시작하면 시스템이 다운되고, 재부팅을 해야 하는 등의 문제가 많은 상태다. 빌드에 소요되는 시간 및 메모리 점유율을 낮추기 위해 윈도우에서 많이 사용되는 IncrediBuild와 같은 솔루션의 리눅스판을 찾아 보았고, distcc라는 훌륭한 프로그램을 발견했다. 해당 프로그램에 대한 설명은 주로 cmake와 관..

OS/Linux

[CentOS] 최신 버전의 Git으로 업데이트 하기

CentOS 7.X 버전에서는 git이 1.8 버전으로 설치가 되어있다. 하지만, VSCode나 깃의 최신 버전을 이용함에 있어 여러가지 불편사항이 존재한다. 이를 해결하기 위해 git 최신버전을 설치하는 방법을 작성하고자 한다. git을 업데이트 하기 위해, 최신버전의 git이 저장되어 있는 저장소를 시스템에 추가한다. rpm -Uvh http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm그 후 yum을 이용해 git의 최신버전을 설치한다. yum update git위의 명령어를 입력할 경우 git의 종속 모듈을 포함하여 최신 버전의 git이 설치된다. 그 이후 아래의 명령어를 입력하면 최신 버전의 깃이..

OS/Linux

[CentOS] SWAP 빈도 조절하여 성능 개선

리눅스 시스템에서는 메모리가 부족해 질 경우 발생하는 오류 (메모리 할당 오류 등)를 방지하기 위해 SWAP 영역을 사용한다. SWAP 영역이란 메인 메모리의 공간이 부족해 질 때 메모리의 일부를 디스크에 저장하고, 사용하는 순간에만 잠시 메인 메모리(RAM)에 불러와 사용하기 위한 공간이다. OS, 커널의 정책마다 SWAP 영역으로 내보낼 메모리 를 선정하는 방법이 다르며, 어느 시점에 내려보낼지에 대한 설정도 제각각 이다. 또한 같은 OS, 커널을 사용한다 하더라도 시스템 설정값의 변경을 통해 서로 다른 결과가 나타날 수 있다. 위의 사진과 같이 아직 메인 메모리의 공간이 남아 있음에도, 미리 SWAP영역으로 내보내는 경우가 발생하기도 한다. CentOS에서는 스왑에 대한 정책을 sysctl 또는 /..

OS/Linux

[CentOS 7] Multicast Packet을 Loopback으로 송/수신

본 포스트에는 centos의 lo interface (localhost interface)에 route를 추가하여 Multicast packet을 local pc로만 송/수신 하고, NIC카드를 통해 외부로 나가지 않도록 처리하는 방법에 대해 서술하고자 한다. 기본적으로, Multicast의 IP 대역은 아래와 같이 지정되어 있다. 이 중, 224.0.0.0 - 224.0.0.255가 Local range로 되어있으나, 이는 TTL이 1인 multicast packet을 생성 및 전송하는 역할을 수행한다. 따라서, 생성된 패킷은 네트워크를 태워 보내지게 되고, 로컬 망 내의 다른 장비들도 해당 패킷이 수신된다. 따라서 완벽한 Loopback을 위해 Multicast 관련 패킷이 local interfac..

OS/Linux

[CentOS] Gnome 환경에서, Titlebar 크기 조절하기

gnome3 환경에서, Titlebar는 GTK-3설정에 영향을 받는다. 경로에 ~/.config/gtk-3.0/gtk.css에 아래와 같은 내용을 입력하면 된다. /* shrink headerbars (don't forget semicolons after each property) */ headerbar { min-height: 0px; padding-left: 2px; /* same as childrens vertical margins for nicer proportions */ padding-right: 2px; background-color: #2d2d2d; } headerbar entry, headerbar spinbutton, headerbar button, headerbar separator..

후유증
'OS/Linux' 카테고리의 글 목록