nginx 에서 사용방법 중에 sites-availablesites-enabled로 가상 홈페이지를 관리하는 것이 있다.
일반적으로 ln -s심볼릭을 사용해서 설정을 공유한다. 그런데 이게 미묘한 차이로 날려먹는 경우가 있어서 다시 기억하고자 글을 남긴다.

폴더의 사용정의

sites-available/

설정을 저장하는 곳이다. 여기에 설정을 만든 것은 실제로 nginx에 반영되지는 않습니다. 반영하기 위해서는 sites-enabled에 설정파일을 복사 또는 심볼릭링크를 걸어줍니다.

sites-enabled/

sites-availiable에 작성한 설정을 적용하기 위한 폴더.

sudo ln -s /etc/nginx/sites-available/example.comc.conf /etc/nginx/sites-enabled/

ln -s 명령어에서 앞에 원본파일에 대한 폴더명을 전부 적어야 한다.

상대적인 주소로 인식하지 않기 때문에 반드시 폴더명을 다 적어 준다.

설정이 제대로 적용이 되었는지 테스트

$ sudo nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is oknginx: configuration file /etc/nginx/nginx.conf test is successful

테스트 시 문제가 없다면 nginx 를 재시작해서 적용하자

$ sudo nginx -s reloador$ sudo systemctl restart nginx

sites-availablesites-enabled폴더가 없을 때

centos7의 기본 패키지로 설치를 했을 때 위와 같은 폴더가 생성이 안되어 있는 경우가 있다. 이 때는 직접 설정을 추가 해 주자.

# /etc/nginx/nginx.confhttp {    ....    include /etc/nginx/conf.d/*.conf;    include /etc/nginx/sites-enabled/*.conf; ## 저는 여기 추가 했어요.}

위와 같이 추가하고 nginx 재시작

nginx -s reload
반응형

'개발 > 리눅스' 카테고리의 다른 글

LINUX | swap 용량 늘리기  (0) 2020.04.29
Reverse Proxy 와 Load Balencer  (0) 2020.04.06
freenas | ssh key 로그인  (0) 2020.01.06
Fedora 30 | uim 입력기 변경  (0) 2019.08.20
Fedora 30 | 텔레그램 설치하기  (0) 2019.07.24

타오나스를 구매하고 난 뒤에 시롤로지 시스템을 매번 업그레이드 할때마다 수작업 하는게 싫어서 opensource 로 되어 있는 나스 운영 시스템을 사용하기로 했다.
그 와 중에 freenas 라는 시스템이 눈에 들어왔고 일단 설치해서 사용하는 도중에 JAIL이라는 VM 시스템이 있어서 이를 통해 다양한 시스템을 올려보고 있는 상황이이었다. 그런데 이게 서비스가 돌아가는 시스템이 익숙한 시스템이 아닌지라 공부를 할 필요가 있었다.

minidlna 를 통해서 부모님 집에 파일을 올려주고 있는데, 이게 rwxrwx---권한으로 파일이 올려지는 것이다. 그리고,, dlna 권한은 이 dataset 의 폴더 권한이 없었다.

이를 해결하기 위해서 공부시작.

이렇게 freebsd와 jail 에 대해서 알아간다.

시작

데이터셋에 있는 데이터에 접근하기 위해서는 다음과 같은 설정이 되어야 합니다.

  1. dataset/folder 에 접근할 수 있게 마운트

  2. data folder 의 쓰기 권한

플러그인 jail 에서 접근할 수 있는 dataset 만들기

dataset은 jail 외부에 구성을해서 정기적인 snapshot 또는 백업 환경을 구성해 주는 것이 좋습니다. 이를 jail 에서 마운트 해서 사용하는 것입니다.
일반적으로 jail 에서는 외부의 파일에 접근 할 수 없습니다.

jail 에 dataset 연결하기

Mount points를 통해서 접근하게 설정할 수 있습니다.

Imgur

다음 문서를 참조해서 설정을 합시다.

Permission 설정

플러그인에서 파일에 접근하기 위해서는 4가지 방법이 있습니다.

모든 파일와 폴더는 UNIX Permision level, UID 소유권한(ownership), GID 권한(ownership)을 가지고 있으며, 사용자/그룹 구성원을 권한을 결정합니다. 기본 UNIX 권한은 FreeBSD의 가이드 북에 설명되어 있습니다.

Value Permission Directory Listing
0 No read, no write, no execute ---
1 No read, no write, execute --x
2 No read, write, no execute -w-
3 No read, write, execute -wx
4 Read, no write, no execute r--
5 Read, no write, execute r-x
6 Read, write, no execute rw-
7 Read, write, execute rwx

JAILFreenas HOST는 user/group 에 대한 정보를 공유하지 않습니다.
에직 매핑되어 있는 사용자가 있으면 그 정보가 공유 됩니다.

jail 사용자 영역(plugin) 내에 실행 중인 프로세스는 jail 의 user/group 설정에 따라 파일 파일/폴더 에 읽고 쓸 수 있습니다.

가본적으로 대부분의 플러그인은 특정 UID를 가진 특정 사용자로 실행되며 데이터 디렉토리라고 하는 구성(Configuration)/db/logs 를 유지합니다.

절대 감옥 데이터 세트의 소유권 또는 권한 수준을 변경하지 마십시오.

여기에 포함된 운영시스템과 앱 파일들이 수정되면 시스템이 제대로 동작하지 않을 수 있습니다. 오직, dataset의 소유권한과 권한수준만 변경하시기 바랍니다.

사용자 쓰기 가능

plugin 기본 사용자로 UID 가 일치하는 FreeNas WebUI 사용자를 추가합니다.

dataset/folder 소유권을 새로 추가한 사용자로 변경하십시오.

UIDcat /etc/passwd 명령어를 통해서 알 수 있습니다.

nomad:*:472:472:Nomad Daemon:/var/tmp/nomad:/usr/sbin/nologinminio:*:473:473:Minio Daemon:/var/tmp/minio:/usr/sbin/nologinnetdata:*:302:302:NetData Daemon:/var/cache/netdata:/usr/sbin/nologin

에 있는 302:302 에서 앞에 숫자

사용자 쓰기 가능

  • 이게 잘 작동함

jail안에서 dataset/folder 소유권한이 일치하는 UID 가진 사용자를 추가히십시오.

pw useradd -n USER -u UID -d /nonexistent -s /usr/sbin/nologin

jail 에서 플러그인이 실행되는 사용자를 변경하고 data 디렉토리의 소유권한을 변경합니다.

service 플러그인 onestopchown -R USER:GROUP /var/db/PLUGINsysrc '플러그인_user=USER'service 플러그인 start

그룰 쓰기 가능 추가

그룹쓰기가 가능하도록 dataset/folder의 소유권한을 변경합니다.

jail 에서 일치하는 GID를 가진 그룹을 dataset/folder의 그룹 소유자로 추가 합니다.

pw groupadd -n 그룹 -g GID

jail 에서 플러그인이 실행되는 사용자를 새로 추가 된 그룹에 추가합니다.

pw groupmod 그룹 -m 사용자

다른 쓰기 가능

  • 잘 안됨

dataset/folder 에 다른쓰기 권한을 변경합니다.
smb 를 통해서 파일을 추가할 때 사용자의 기본 user/group 으로 파일이 저장이 된다.
dlna 에서 권한이 없어서 dlna에서 파일을 읽을 수 없는 상태가 된다.

결론

jail안에서 HOST에 있는 그룹(gid)을 추가해서 서비스(dlna)를 그 그룹에 추가 했다

# meida group 생성pw groupadd -n media -g 8888888pw groupmod media -m dlna

그런데 이렇게 하니 권한이 없다며 안되다.

이번에는 media 유저를 추가했다. 이것은 HOST의 media의 사용자 권한을 가져가는 것과 같다

pw useradd -n media -u 8888888 -d /nonexistent -s /usr/sbin/nologin

까지 설정 한 뒤에 /usr/local/etc/minidlna.conf의 설정해서 아래와 같이 실행하는 USER를 변경 해 줬다.

# specify the user account name or uid to run asuser=media

연구를 좀 더 해봐야 한다.

반응형

랩탑을 이용해서 일을 하다보니 일하는 장소가 자주 바뀌 때가 있다. 이 때에 자신을 위해서 자세를 신경 쓸 필요가 있다.
그래서 몇가지 컴퓨터를 사용하는데 있어서 주의해야 할 몇가지들을 남겨본다.

무릎에서 랩탑을 꺼내기

무릎에 노트북을 올려놓고 사용하는 자세는 몸을 웅크리게 만들고, 머리를 내밀어 화면을 응시하게 만듭니다. 이 자세는 척추에 무리를 주게 됩니다.

책상이 없이 작성을 해야 할 경우에는 컴퓨터가방이나 서류 가방에 올려놓고 화면을 올리시기 바랍니다.

모니터를 더 높이기

이상적인 랩톱 높이와 각도를 사용하면 목을 구부리거나 회전시키지 않고도 화면을 쉽게 볼 수 있습니다.
노트북을 책상 위로 몇 인치 위로 들어 올려 노트북 받침대 또는 두꺼운 책 더미와 같은 안정된 지지대 표면에 놓고, 똑바로 쳐다 보면 눈이 자연스럽게 화면의 3 분의 1에 닿아야합니다.

별도의 키보드와 마우스, 모니터에 투자하기

노트북을 장시간 작업하는 경우에는 다음 두가지 중 하나를 수행하는 것이 좋습니다.

  1. 별도의 키보드와 마우스를 사용하여 랩톱화면을 눈눞이에 올바르게 배치

  2. 눈높이에서 외장 모니터 사용 어깨와 팔이 긴장을 풀수 있는 높이에 카보드 놓기

팔꿈치는 90도 각도로 몸에 꼭 맞아야하며, 타이핑 할 때는 속목이 중립에 있어야 합니다. 이 자세는 어깨를 둥글게하고 목 근육을 잡아 당기는 것을 방지합니다.

노트북 화면 업그레이드

노트북은 휴대하기 쉽고, 사용하기 쉽도록 설계되어있지만, 화면은 사용자에 맞지 않을 수 있습니다. 화면이 작을수록 텍스트와 개체가 보이도록 목에 긴장을 하게 됩니다. 화면에서 글을 자주 읽을 경우에 글꼴을 늘릴 수도 있습니다.

발 올려놓기

팔과 손목을 편안하게 놓을 수 있도록 의자를 들어야 하는 경우 다리의 각도를 확인하세요. 발은 바닥에 평평해야 하고 무릎은 엉덩이와 고른 높이에 있어야 합니다.
엉덩이가 너무 높거나 평평해야하고, 무릎은 엉덩이와 고른 높이에 있어야 합니다. 엉덩이가 너무 높거나 발이 바닥에 닿지 않으면 발밑을 지탱하기 위해 계단이나 블록을 사용하세요.
이를 통해 중립 요추를 유지하고 허리의 긴장을 줄일 수 있습니다.

인체 공학적 의자 찾기

노트북을 사용하는 동안 앉는 의자의 유형이 중요합니다.

완전히 조절가능하고, 요추 지지대가 있는 모든 사무실 의자가 좋지만 제대로 지지되지 않으면 요추에 무리가 올 수 있습니다. 의자에 기대어 앉으면 요추 지지대가 허리에 자연스러운 곡선을 유지하는 데 도움이 됩니다.

목과 머리의 위치는 귀가 항상 앞이 아닌 어깨 위에 있어야 합니다.

휴식 취하기

전화에 30분 마다 잠깐 휴식을 취하도록 알림을 설정하세요.

화면에서 눈을 떼고 원거리에 있는 물체에 눈을 주시하기 바랍니다. 책상, 목 , 어깨, 팔, 다리, 스트레칭과 같은 간단한 스트레칭을 하세요. 1시간 마다 책상을 두고 걸어다니면서 혈액이 흐르고, 근육이 느슨해 지도독 하세요.

걸을 수 없다면 최소한 서서 스트레칭하고 움직이세요. 사람은 언제나 움직이는 존재이며 하루종일 가만히 앉아있을 수 없습니다.

일어나기

노트북으로 장기간 시간을 보내는 사람들의 경우 의자에 앉아있지 않고, 일어나서 두시간 정도 시간을 보내십시오. 목에 무리를 주지 않으면서 별도의 키보드와 뫄우스와 멀티 설정이 필요합니다.

서서 일하는 책상이 인기있는 옵션 중 하나 입니다.

가볍에 이동하기

일반적으로 회사와 집을 오가며 랩톱을 사용하는 경우 여분의 세팅장비를 사용하여 자리에 잡아두는 방식으로 사용하세요.

가방을 한쪽으로 매지 않는 것이 좋습니다. 너무 무겁다면 캐리어를 이용하는 것도 한 방법입니다.

자세 관련 앱 사용하기

노트북에 사용해서 자세를 모니터링하고 유용한 알림 메세지를 제공하는 기능들을 사용해 보세요. 다음과 같은 다양한 기능을 수행하는 지원을 받을 수 있습니다.

노트북 카메라를 사용해서 자세를 감시하고 언제나 똑바로 똑바로 앉아야 하는지 알려주고, 책상에서 간단한 스트레칭을 지도 해 줍니다.

웨어러블 기기는 당신의 척추 자세를 측정하고 당신의 전화나 태블릿 앱으로 데이터를 보냅니다.

참고 : https://www.spine-health.com/video/video-6-tips-improve-posture-while-sitting

반응형

매번 비밀번호를 사용해서 로그인하는 것은 너무나 번거로운 일이다.
접속할 컴퓨터에서 key-gen을 통해서 키가 생성되어 있어야 한다.

키 생성하기

$ ssh-keygen                                                                                                                                                                                                                                          Generating public/private rsa key pair.
Enter file in which to save the key (/Users/forteleaf/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in idid_rsa.
Your public key has been saved in idid_rsa.pub.
The key fingerprint is:
SHA256:lPQOOLrnc4N2dYOy0snymLKmibxGKTrx9Vijcn/GFOg forteleaf@leaf-macbook.local
The key's randomart image is:
+---[RSA 2048]----+
|        .        |
|       o o       |
|      o.+ .      |
|     ..o.o       |
|  . ..  S...     |
|oo  ..E o o o    |
|+o ..=.B = . .   |
|+oo.*oBo%        |
|o++=.==X..       |
+----[SHA256]-----+

키 복사하기

$ ssh-copy-id forteleaf@[freenas IP]
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/forteleaf/.ssh/idid_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys

Number of key(s) added:        1

Now try logging into the machine, with:   "ssh 'forteleaf@freenas'"
and check to make sure that only the key(s) you wanted were added.

본인은 이미 키가 authorized_keys에 등록되어 있는 상태 이기 때문에 위와 같은 메세지가 나온다.
이제 바로 접속하면 된다.

접속

$ ssh forteleaf@[freenas IP]

참조 (서버 sshd 설정)

# /etc/ssh/sshd_config

#PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile      .ssh/authorized_keys

#AuthorizedPrincipalsFile none

PubkeyAuthentication 이 설정되어 있어도 authorized_keys파일이 등록되어 있으면, 사용할 수 있다.

반응형

remove ibus

Imgur
Fedora에서 기존에 사용하던 ibus를 제거하고 uim를 사용하려고 하는데, ibus를 삭제하는데에 큰 문제가 있다. 하나는 sudo dnf remove ibus를 이용해서 삭제를 하면 의존성 때문에 gnome에 있던 기본 어플들까지도 삭제가 되어버린다. 이를 해결하기 위해서는 의존성을 헤치지 않으면서 삭제를 진행해야 한다.

하지만, 이를 정확히 해결할 수 있는 방법은 지금 존재하지 않고, 이를 해결하기 위해서는 기존에 ibus-daemon를 상주한 상태로 uim를 실행시키는 방법이 제일이상적이라고 할 수 있다.

현재 gnome 3.32.2버전을 사용하고 있고, 아래와 같이 설정을 변경해 주었다.

$ gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'uim'>}"

uim설치

$ sudo dnf install uim

uim-byeoru를 따로 설치를 과거에는 진행했는데 지금은 기존패키지에 자동으로 설치가 되어있어서 uim-byeoru를 입력하더라고 무방하다. 근데, dnf 항목에는 보이지 않는다.

기본 입력소스 변경


입력소스 에서 기존에 있었던 ibus 설정을 지워주고 위와 같이 영문 키보드 하나만 남겼다. 실제로 이 설정이 실사용에 사용되지는 않습니다. uim설정을 사용하기 때문에 한글 설정에서 이 부분을 수정할 필요는 없습니다.

기존 ibus 단축키 설정 제거

Imgur

Fedora 30 에서는 아래와 같은 명령어를 사용해서 기본 입력기를 변경할 수 있다.

$ im-chooser

사실 이부분을 수정하지 않다고 가능하지만, ibus라는 설정 자체를 빼기 위해서 제거했다.

이제 ibus의 단축설정들을 제거해 준다. <shift> + <space>와 같은 설정이 새로 한영전환키와 중복될 수 있는 부분이 있기 때문에 제거를 하는것이 사용성과 편의성에 이롭다.

ibus 환경설정에서 아래와 같이 설정들을 제거해 준다.

Imgur
Imgur
기본에 설정되어 있는 부분을 제거 했습니다

uim 설정하기

$ im-chooser

명령어를 통해 UIM 환경설정을 통해 진행한다.

[전체적인 설정]항목에서 디폴트 입력기 설정을 진행한다.

사용되는 입력기에 "벼루"만 남기고 제거 합니다.

Imgur
다음은 한영 전환단축키 변경을 아래와 같이 설정합니다. 이부분은 간단하므로 생략

Imgur

이제 최상단에 적혀 있는 명령어를 실행하면 ibus 가 상주해 있는 상태에서도 uim를 사용할 수 있는 상태가 되었습니다.

이 부분에서 리부팅을 진행해 주세요. 부분부분 재부팅을 통해서 진행 해 주면 설정이 자리잡는데 도움이 됩니다.

반응형

+ Recent posts