3월 31일 만료인게 몇개 있다고 해서 모은김에 또 기부!



Posted by 구차니
Programming/node.js2019. 3. 8. 10:56

node.js랑 그래도 작동하는건 확인했는데..

임시 파일이 어디로 갔는지 모르겠네?


아래 링크는 파일 / 이미지 / 동영상 세파트로 나누어져 있으니 참고

(index.html 파일 내용도 조금씩 다르니 주의)

[링크 : https://www.froala.com/wysiwyg-editor/docs/server/nodejs/file-upload]


+

일단은 이녀석.. localhost를 제외하면 라이센스 경고를 띄운다.

쓰는건 보류!

'Programming > node.js' 카테고리의 다른 글

node.js 사용자 모듈 만들기  (0) 2019.03.13
ckeditor 와 php, node.js 연동  (0) 2019.03.11
wysiwyg editor / node.js  (0) 2019.02.26
node.js 파비콘 설정하기  (0) 2019.02.22
node.js apache 스타일 로그  (0) 2019.02.22
Posted by 구차니

클래식

상단에 툴바 항상 나오고 그 바로 아래에 수정할 영역이 나옴


인라인

그냥 일반 문장 같은데


클릭하면 편집 가능하도록 변경됨


벌룬

인라인과 유사한데 드래그로 선택해야 툴바가 풍선으로 뜸


벌룬블록

선택영역에 따라 문단과 블록에 따라 서로 다른 툴바가 뜸


디커플러

툴바와 편집창을 분리해서 쓸 수 있다.

(문단별로 편집창을 띄우되 가장 위에 고정하는 식으로 운영 가능, 스크롤 할때 상단에 툴바 고정용으로 쓸 듯)


[링크 : https://ckeditor.com/docs/ckeditor5/latest/builds/guides/quick-start.html]

Posted by 구차니

첫애가 생일이라서 마트 키즈카페 놀러갔다가 맞은편에 있는 VR 코너를 

아내와 첫애가 해봤는데 아내 평으로는 생각외로 화질이 안 좋다고

애는 어지러워 하고이래저래 아주 만족스럽지는 않았던 듯.

걍 한번 해본걸로 됐다 정도?


가격은 개당 30만원 정도인데

5.5인치에 2560*1440P(PPI 534)

어떻게 보면 갤럭시 노트 시리즈 급의 해상도는 되는 듯?

그럼 Stream VR 통해서 재생하는 설정이 문제거나.. 컨텐츠가 문제거나


게다가 시야도 연동 안되고 고정 시야라고..

근데 스펙상으로는 6 DOF 인데? 머야 -ㅁ-



가격은 산게 26만원. 디스플레이 스펙을 보면 그리 비싼것도 아닌 듯?

[링크 : http://item.gmarket.co.kr/Item?goodsCode=1512970342]

[링크 : https://eleparts.co.kr/goods/view?no=6949223]

[링크 : http://prod.danawa.com/info/?pcode=6226272]


[링크 : http://en.3dinlife.com/prod_view8.aspx?FId=t3:72:3&Id=191&TypeId=72&IsActiveTarget=True]

Posted by 구차니

-

[링크 : https://gist.github.com/RedactedProfile/ac48c270d2bbe739f9f3]

[링크 : https://ckeditor.com/docs/ckeditor4/latest/examples/fileupload.html]

[링크 : https://hashcode.co.kr/questions/3187/nodejs-ckeditor로-이미지를-올리기]

[링크 : https://www.npmjs.com/package/ckeditor]


+

2019.03.08

cke4_node.zip


ckeditor 4.11 을 기준으로 만든거고, 5.x 대에도 가능한지는 아직 테스트 하지 못함

express -e

를 이용하여 ejs로 express-generator로 생성후 아래의 파일을 수정함


index.js

var express = require('express');
var path = require('path');
var uuid = require('uuidv4');
var router = express.Router();

var multipart = require('connect-multiparty');
var multipartMiddleware = multipart();

/* GET home page. */
router.get('/', function (req, res, next) {
res.render('index', { title: 'Express' });
});

router.post('/uploader', multipartMiddleware, function (req, res) {
var fs = require('fs');

var orifilepath = req.files.upload.path;
var orifilename = req.files.upload.name;
var srvfilename = uuid() + path.extname(orifilename);
fs.readFile(orifilepath, function (err, data) {
var newPath = __dirname + '/../public/uploads/' + srvfilename;
fs.writeFile(newPath, data, function (err) {
if (err) console.log({ err: err });
else {
html = "{\"filename\" : \"" + orifilename + "\", \"uploaded\" : 1, \"url\": \"/uploads/" + srvfilename + "\"}"
console.log(html)
res.send(html);
}
});
});
});

module.exports = router;


index.ejs

4.11과 4.9 둘 다 작동되는 것 확인

<!DOCTYPE html>
<html>

<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
<!-- <script src="https://cdn.ckeditor.com/4.11.3/standard/ckeditor.js"></script> -->
<script src="https://cdn.ckeditor.com/4.9.0/standard/ckeditor.js"></script>
</head>

<body>
<h1><%= title %></h1>
<p>Welcome to <%= title %></p>

<form>
<textarea id="ckeditor" name="content"></textarea>
</form>

<script>
CKEDITOR.replace('ckeditor', {
uploadUrl: '/uploader'
});
</script>
</body>

</html>


+

ckeditor 5 기준. 4랑 비교해서 에디터 생성하는 방법을 제외하면 동일하게 작동한다.

index.ejs

<!DOCTYPE html>
<html>

<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
<script src="https://cdn.ckeditor.com/ckeditor5/12.0.0/classic/ckeditor.js"></script>
</head>

<body>
<h1><%= title %></h1>
<p>Welcome to <%= title %></p>

<form>
<textarea id="ckeditor" name="content"></textarea>
</form>

<script>
ClassicEditor
.create(document.querySelector('#ckeditor'), {
language: 'ko',
ckfinder: {
uploadUrl: '/uploader'
}
})
.catch(error => {
console.error(error);
});
</script>
</body>

</html>


[링크 : https://okky.kr/article/461219]

[링크 : https://www.cikorea.net/bbs/view/qna?idx=19725&view_category=&lists_style=]

[링크 : https://ckeditor.com/docs/ckeditor4/latest/guide/dev_file_upload.html]


[링크 : https://stackoverflow.com/questions/17699763/ckeditor-using-and-integration-in-node-js-web-page]

[링크 : https://stackoverflow.com/questions/21378630/node-js-sails-js-wysiwyg-editor-images]

[링크 : https://github.com/sca-/sails-ckeditor-sample]



'프로그램 사용 > ckeditor(웹에디터)' 카테고리의 다른 글

ckeditor full과 standard 그리고 옵션 설정  (0) 2019.04.03
ckeditor 모드별 모양  (0) 2019.03.08
ckeditor / fckeditor?  (0) 2014.07.16
ckeditor 사용하기  (0) 2013.02.22
fckeditor plugin for squirrelMail  (0) 2011.06.14
Posted by 구차니
프로그램 사용/nginx2019. 3. 7. 14:27

일단 프록시 설정이 먼가 잘못되었나 싶어서 고민했는데

알고보니.. 망할 포트를 잘못 설정해서 502 bad gateway 뿜뿜..

결론은.. 머.. 잘 돌아가는 것으로 보인다?


// 홈페이지 1

    server {

        listen       80;

        server_name domain.co.kr www.domain.co.kr;

        location / {

                proxy_pass http://localhost:20000/;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

        }

    }


// 홈페이지 2, 특정 하위 주소에 다른 서비스를 연결함

    server {

        listen       80;

        server_name domain2.co.kr www.domain2.co.kr;

        location / {

                proxy_pass http://localhost:30000/;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

        }


        location /sub1 {

                proxy_pass http://localhost:40000/;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

        }

    }


// 다른 서비스로 연결되는 녀석을 서브 도메인으로 연결

    server {

        listen       80;

        server_name sub1.domain2.co.kr;

        location / {

                proxy_pass http://localhost:40000/;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

        }

    } 


// 홈페이지 3, 서비스를 서브 도메인으로도 연결

    server {

        listen       80;

        server_name sub2.domain2.co.kr;

        location / {

                proxy_pass http://localhost:50000/;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;

        }

    }


'프로그램 사용 > nginx' 카테고리의 다른 글

nginx 리버스 프록시 와 ckeidtor upload 413 에러  (0) 2019.04.03
nginx 502 bad gateway와 audit  (0) 2019.03.20
nginx load balance  (0) 2019.03.05
nginx reverse proxy  (2) 2018.10.30
nginx fastcgi 캐싱  (0) 2015.09.10
Posted by 구차니
하드웨어/RAID2019. 3. 6. 20:26

어제 오전 10시 부터 포맷해서 걸어놓은건데..

어제 퇴근전 30%대

오늘 아침에 확인하니 71%대

지금 확인하니 98%..


근데 로그 상으로는 오전 10시에 24시간에 걸쳐서 끝나긴 했는데


RAID 상태를 확인해보면 98%

도대체 어느게 맞는 값일까?


'하드웨어 > RAID' 카테고리의 다른 글

iscsi mdadm  (0) 2019.03.13
LSI raid ir it mode  (0) 2019.03.11
raid5 vs raid6 vs raid10  (0) 2019.03.04
(Linux)OS 작동중에 하드를 뽑으면 어떻게 될까?  (0) 2019.02.28
PERC foreign RAID import  (0) 2019.02.26
Posted by 구차니
프로그램 사용/LVM2019. 3. 5. 13:07

LVM은 Logical Volume Manager의 약자이다.

꽤 오래전부터 기본으로 사용은 했는데 싫어서 매번 삭제하고 임의로 ext3나 ext4로 써왔는데

서버 밀면서 처음 써보다 보니 헤매고 있다.. -_ㅠ


아무튼 정리하자면

PV(Physical Volume)

VG(Volume Group)

LV(Logical Volume)


앞의 세개가 접두이고, 그 이후에 명령어들이 존재한다.

pvchange   pvck       pvcreate   pvdisplay  pvmove     pvremove   pvresize   pvs        pvscan 

lvchange     lvcreate     lvextend     lvmconf      lvmdiskscan  lvmetad      lvmsadc      lvreduce     lvrename     lvs

lvconvert    lvdisplay    lvm          lvmconfig    lvmdump      lvmpolld     lvmsar       lvremove     lvresize     lvscan 

vgcfgbackup    vgck           vgdisplay      vgimport       vgmknodes      vgrename       vgsplit

vgcfgrestore   vgconvert      vgexport       vgimportclone  vgreduce       vgs
vgchange       vgcreate       vgextend       vgmerge        vgremove       vgscan


PV는 /dev/sd? 에 매핑되는 녀석으로 물리적 하드에 대한 관리를 하게되고 VG는 PV를 기반으로 생성하게 된다. 

기존의 Volume Group에 추가하려면 vgextend

새로운 Volume Group으로 Physical Volume을 추가하려면 vgcreate로 하면 된다.

Use vgcreate(8) to create a new VG on the PV, or vgextend(8) to add the PV to existing VG. 


그리고 PV를 VG로 묶을때 설정에 따라 RAID 처럼 묶을수도 있고 JBOD으로 묶을수도 있다.


생성 순서로 보면

# pvcreate /dev/sd??

# vgcreate vgname /dev/sd??

# lvcreate -L 용량 vgname -n lvname


Centos7 기준

/dev/mapper/centos-[lvname]

/dev/centos/lvname

/dev/dm-0

/dev/dm-1


식으로 되어있는데

/dev/dm-? 이 실제 장치이고

그 외에는 전부 심볼릭링크로 /dev/dm-? 으로 연결되어 있다.


[링크 : https://jangpd007.tistory.com/235]

[링크 : https://sgbit.tistory.com/13]

[링크 : https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c01847647]

[링크 : https://closed0402.tistory.com/103]

[링크 : https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c01847647]


+

selinux가 또 태클을 거는데..

mount: /home/test does not contain SELinux labels.

       You just mounted an file system that supports labels which does not

       contain labels, onto an SELinux box. It is likely that confined

       applications will generate AVC messages and not be allowed access to

       this file system.  For more details see restorecon(8) and mount(8).


이것만 해서는 안되고.. 서버 리부팅 까지 해주니 마운트가 되네.. 머냐...

# restorecon -Rv /raid1

# fixfiles relabel 

[링크 : https://linuxbuff.wordpress.com/tag/redhat/]

'프로그램 사용 > LVM' 카테고리의 다른 글

lvm as ssd cache  (0) 2022.02.14
애증의.. LVM? centos 기본값 설치에서 변형했더니...  (0) 2019.03.05
lvm raid  (0) 2019.01.15
LVM - Logical Volumegroup Management  (0) 2009.01.22
Posted by 구차니
프로그램 사용/LVM2019. 3. 5. 11:33

어라.. RAID-6 볼륨이 원래 4.36TB 인데

lvm 으로 해서 4.74TB가 잡혀서 어디서 왔나 했더니..

SSD랑 HDD랑 같은 pool로 잡혀서 그런식으로 걸쳐 있는 듯?


pool 부터 다시 잡아야 하나.. 아니면 런타임에 pool을 변경이 가능하려나?


ssm 이라는 녀석 설치!

# yum install system-storage-manager 

[링크 : https://www.linuxsysadmin.biz/lvm-gui-centos-7/]


# ssm list

-------------------------------------------------------------

Device        Free       Used      Total  Pool    Mount point

-------------------------------------------------------------

/dev/sda                       465.25 GB          PARTITIONED

/dev/sda1                        1.00 GB          /boot

/dev/sda2  4.00 MB  464.24 GB  464.25 GB  centos

/dev/sdb                         4.36 TB

/dev/sdb1  0.00 KB    4.36 TB    4.36 TB  centos

-------------------------------------------------------------

------------------------------------------------

Pool    Type  Devices     Free     Used    Total

------------------------------------------------

centos  lvm   2        4.00 MB  4.82 TB  4.82 TB

------------------------------------------------

--------------------------------------------------------------------------------------

Volume             Pool    Volume size  FS     FS size       Free  Type    Mount point

--------------------------------------------------------------------------------------

/dev/centos/root   centos     50.00 GB  ext4  50.00 GB   43.00 GB  linear  /

/dev/centos/swap   centos     31.44 GB                             linear

/dev/centos/samba  centos      4.74 TB  ext4   4.74 TB    4.46 TB  linear  /home/samba

/dev/sda1                      1.00 GB  ext4   1.00 GB  787.87 MB  part    /boot

--------------------------------------------------------------------------------------


개념부터 봐야겠다..

[링크 : https://kit2013.tistory.com/199]



+

 # df -h

Filesystem                Size  Used Avail Use% Mounted on

/dev/mapper/centos-root    50G  4.3G   43G  10% /

devtmpfs                   32G     0   32G   0% /dev

tmpfs                      32G     0   32G   0% /dev/shm

tmpfs                      32G   11M   32G   1% /run

tmpfs                      32G     0   32G   0% /sys/fs/cgroup

/dev/sda1                 976M  150M  760M  17% /boot

/dev/mapper/centos-samba  4.8T   89M  4.5T   1% /home/samba

tmpfs                     6.3G     0  6.3G   0% /run/user/0

tmpfs                     6.3G  4.0K  6.3G   1% /run/user/42

tmpfs                     6.3G   44K  6.3G   1% /run/user/1000 

# lvdisplay

  --- Logical volume ---

  LV Path                /dev/centos/samba

  LV Name                samba

  VG Name                centos

  LV UUID                9Aa0oO-Ndwh-5IfX-O5vW-KZ8Z-tAFF-RBcKLq

  LV Write Access        read/write

  LV Creation host, time localhost, 2019-03-05 10:32:46 +0900

  LV Status              available

  # open                 1

  LV Size                <4.74 TiB

  Current LE             1242061

  Segments               2

  Allocation             inherit

  Read ahead sectors     auto

  - currently set to     256

  Block device           253:2


  --- Logical volume ---

  LV Path                /dev/centos/swap

  LV Name                swap

  VG Name                centos

  LV UUID                uYmqZR-s3FZ-w56s-97cm-eaYn-Vj6Y-SEvcWS

  LV Write Access        read/write

  LV Creation host, time localhost, 2019-03-05 10:32:50 +0900

  LV Status              available

  # open                 2

  LV Size                <31.44 GiB

  Current LE             8048

  Segments               1

  Allocation             inherit

  Read ahead sectors     auto

  - currently set to     256

  Block device           253:1


  --- Logical volume ---

  LV Path                /dev/centos/root

  LV Name                root

  VG Name                centos

  LV UUID                8PH4I2-Amfo-YuDh-J9h5-Hwhq-jSjZ-MrEUNK

  LV Write Access        read/write

  LV Creation host, time localhost, 2019-03-05 10:32:50 +0900

  LV Status              available

  # open                 1

  LV Size                50.00 GiB

  Current LE             12800

  Segments               1

  Allocation             inherit

  Read ahead sectors     auto

  - currently set to     256

  Block device           253:0


# pvdisplay

  --- Physical volume ---

  PV Name               /dev/sda2

  VG Name               centos

  PV Size               <464.25 GiB / not usable 3.00 MiB

  Allocatable           yes

  PE Size               4.00 MiB

  Total PE              118847

  Free PE               1

  Allocated PE          118846

  PV UUID               bxRHju-AXnI-7xwe-MEo5-LNWq-A0tw-VngA83


  --- Physical volume ---

  PV Name               /dev/sdb1

  VG Name               centos

  PV Size               4.36 TiB / not usable 2.00 MiB

  Allocatable           yes (but full)

  PE Size               4.00 MiB

  Total PE              1144063

  Free PE               0

  Allocated PE          1144063

  PV UUID               Z2jJnF-h4Uu-T0gF-yKyb-jSat-wPMr-7j2RtC


'프로그램 사용 > LVM' 카테고리의 다른 글

lvm as ssd cache  (0) 2022.02.14
LVM 관리  (0) 2019.03.05
lvm raid  (0) 2019.01.15
LVM - Logical Volumegroup Management  (0) 2009.01.22
Posted by 구차니
프로그램 사용/nginx2019. 3. 5. 10:46

설정이 되어있는걸 보는데...

reverse proxy 용도가 아니라 load balance 용도로 설정을 해둔거였나...


[링크 : https://www.lesstif.com/pages/viewpage.action?pageId=35357063]

[링크 : http://nginx.org/en/docs/http/ngx_http_upstream_module.html]

Posted by 구차니