2018/07 8

[Linux] systemctl status 실행 시 state : degraded 경우 해결법

[Linux] systemctl status 실행 시 state : degraded 경우 해결법 현상systemctl status 실행 시 state 상태가 degraded 일 경우가 있다.1root@server ~ # systemctl status2● server3 State: degraded 원인확인 결과 일부 service가 정상적으로 실행되지 못 할 경우에 degrade 상태가 발생한다.실패한 서비스는 systemctl --failed 명령어를 통해 파악 가능하다.이번 경우에는 crontab이 정상적으로 실행되지 않아 trouble shooting을 위해 systemctl 을 확인 했으며 아래와 같이 crond.service 가 loading failed 상태임을 확인할 수 있었다.1root@se..

Linux 2018.07.19

[Linux] HPE 스마트 스토리지 관리자(HPE SSA) CLI 를 활용한 서버 Disk 상태 확인

[Linux] HPE 스마트 스토리지 관리자(HPE SSA) CLI 를 활용한 서버 Disk 상태 확인SSA CLI는 HPE 스마트 스토리지 관리자 CLI툴로 HP 서버의 Disk 상태를 확인할 수 있는 툴이다.Linux상에서는 bios 를 통해 RAID 설정된 disk 장치만 감지 가능하다. Disk 2장이 RAID 1으로 구성되어 있을 경우 Disk 1개 고장은 Linux kernel상에서는 감지가 불가능하다. Disk 5장이 RAID 5으로 4+1 로 구성되어 있을 경우 또한 마찬가지이다. 실제 Disk의 상태를 확인하기 위해서는 ssacli 사용이 필요하다. ssacli 명령어를 활용한 Disk 상태 확인/usr/sbin/ssacli ctrl all show config 명령어를 통해 개별 Dis..

Linux 2018.07.19

[Linux]sudo 명령어 수행 시 sudo: sorry, you must have a tty to run do Error가 발생할 때 해결 방안

[Linux]sudo 명령어 수행 시 sudo: sorry, you must have a tty to run do Error가 발생할 때 해결 방안1. 현상특정 유저의 crontab이나 zabbix 계정으로 실행되는 zabbix agent 에서 root 권한의 명령어를 수행하고 싶다면 sudo를 사용하면 된다.문제는 sudo 관련하여 /etc/sudoers에 해당 계정의 권한을 설정했음에도, 아래와 같은 로그를 남기며 명령어 수행을 실패하는 경우가 있다.sudo: sorry, you must have a tty to run sudo 2. 원인해당 원인을 분석한 결과 /etc/sudoers 파일 내 Defaults requiretty 값이 설정되어 위와 같은 에러가 발생했다. Defaults require..

Linux 2018.07.09

[javascript ] javascript 로 form이나 element 값 얻어오거나 설정하기

[javascript ] javascript 로 form이나 element 값 얻어오거나 설정하기javascript 코드를 통해 html 페이지에서 form 및 기타 element의 객체를 얻어오는 것이 가능하다.객체를 얻은 후에는 해당 값을 얻어오거나 자유롭게 값을 수정할 수 있다.얻고자하는 값이 form 형식이라면 form으로 접근하여 얻을 수 있다. document 활용document.forms[""].elements[""]ex) document.forms["frm"].elements["name"]; getElementById, getElementsByName 활용원하는 객체의 Id나 Name을 알고 있다면 아래 함수를 통해 바로 객체를 얻어올 수 있다.document.getElementById("..

Javascript 2018.07.07

[python] python 에서 명령어 매개변수 가져오기 sys.argv

[python] python 에서 명령어 매개변수 가져오기 sys.argvpython 에서는 sys.argv[] 를 통해 명령어 실행 시 매개변수 값을 얻어올 수 있다.0번째 매개변수는 실행파일명이다. 1❯ cat argv_test.py2​3import sys4​5print sys.argv[0]6print sys.argv[1]python argv_test.py red blue 실행결과 ❯ python argv_test.py red argv_test.py red 매개변수의 개수를 len(sys.argv) 함수를 통해 얻어올 수 있다. 1❯ cat argv_test.py2​3import sys4​5print len(sys.argv) 매개변수 개수 확인 실행결과(실행 파일명이 포함되기 때문에 +1 해야 한다...

Python 2018.07.07

[python] 파이썬에서 time, strftime 함수를 사용하여 날짜와 시간 포맷에 맞춰 가져오기

[python] 파이썬에서 time, strftime 함수를 사용하여 날짜와 시간 포맷에 맞춰 가져오기python 코드 내에서 일자 및 시간을 형식을 표현하고 싶다면 strftime 함수를 사용하면 된다.strftime 함수는 원하는 포맷에 맞춰 출력 포맷을 설정할 수 있다. 현재 시각 정보는 localtime 함수를 통해 얻을 수 있다. localtime, strftime 모두 time 패키지를 통해서 import 하면 된다.1from time import localtime, strftime localtime() 함수 실행 시 아래와 같은 시간정보를 확인할 수 있다. 1>>> localtime()2time.struct_time(tm_year=2018, tm_mon=7, tm_mday=7, tm_hour..

Python 2018.07.07

[Linux] CentOS7에서 2TB 이상 사이즈의 디스크 GTP 파티션 생성 및 포맷 방법

[Linux] CentOS7에서 2TB 이상 사이즈의 디스크 GTP 파티션 생성 및 포맷 방법우리가 일반적으로 사용하는 Linux 디스크는 MBR(Master Boot Record) 방식의 파티션을 사용한다. MBR의 단점은 파티션 최대 용량 제한으로 한 개의 파티션에 최대 2TB 밖에 사용이 불가능하다.추가로, MBR의 경우 생성 가능한 파티션의 개수가 주 파티션 4개이며, 일반적으로 주 파티션 3개 + 확장 파티션 1개를 사용한다. (확장 파티션의 경우 부팅 파티션으로 지정이 불가능) 이러한 단점에도 불구하고 상용 환경에서 큰 영향은 없었기 때문에 MBR이 지속 사용되었다.하지만, 최근 빅데이터 저장 서버의 증가와 디스크 기술 발전에 따른 대용량 디스크 대중화로 2TB 이상의 파티션 생성이 필요한 환..

Linux 2018.07.07

[Linux] CentOS 7, rhel7 hostname 호스트네임 변경하기

[Linux] CentOS 7, rhel7 hostname 호스트네임 변경하기CentOS 6버전 및 rhel6 버전에서는 /etc/sysconfig/network 파일 내 hostname이 변수로 저장되어 있었다.7버전부터는 /etc/hostname 파일 내 hostname이 저장된다. 1[root@server1 ~]# cat /etc/hostname2server1권장되는 hostname 변경 방법은 hostnamectl 명령어를 통한 변경이다.hostnamectl 사용법은 아래와 같다. ServerAfter는 변경될 호스트 네임을 임의로 지정한 값이다. 1[root@server1 ~]# hostnamectl set-hostname ServerAfter2[root@server1 ~]# cat /etc/h..

Linux 2018.07.02