tail -f 로그 스크롤관련 컨트롤하는 방법

Posted by HULIA(휴리아)
2019. 12. 20. 23:15 호스팅_서버_툴/서버

tail -f를 하면서 자동으로 파일에 append되면 스크롤이 되는데요

 

ctrl+s를 하면 스크롤이 멈쳐지고 파일에 append된 내용이 일시적으로 멈춰집니다

일시적으로 내용을 봐야할때 사용하시면 좋습니다

 

그리고 다시 append된 내용이 보고 싶을때

ctrl+r를 하면 스크롤이 진행되고 그간 파일에 append된 내용이 보이지 않았던 내용이 한꺼번에 보여지게 됩니다~

 

ctrl+s와 ctrl+r를 이용하면 tail -f를 했다가 ctrl+c로 tail을 종료시켰다가 할 필요가 없답니다^^ㅎ

 

자바 클래스 리눅스 PID 출력하는 명령어

Posted by HULIA(휴리아)
2019. 11. 29. 10:34 호스팅_서버_툴/서버
ps -ef | grep 패키명.클래스명 | grep -v grep | awk '{ print $2 }'


grep -v grep
->여러줄이 나올때 한줄만 나오게 하는 명령어

awk '{ print $2 }'
->pid 번호 출력(두번째 컬럼출력)

앱)리눅스 쉘 명령어 반복 실행

Posted by HULIA(휴리아)
2019. 11. 28. 10:15 호스팅_서버_툴/서버
1. watch 명령어 이용한 방법
watch -n 원하는주기(초) 명령어
ex)watch -n 1 ps -ef

2. while문을 이용한 방법
while true; do 명령어; sleep; done;
ex-여러줄반복)while true; do netstat; sleep 1; done;
ex-한줄반복)while true; do netstat; sleep 1; clear; done;

umask 명령어 - 새폴더 새파일의 퍼미션 결정하는 값

Posted by HULIA(휴리아)
2019. 11. 2. 23:50 호스팅_서버_툴/서버

어플리케이션에서 혜당 계정으로 새폴더와 새파일을 만들때 사용하였습니다^^

 

umask 값과 새폴더 퍼미션 값을 더하면 777이 됩니다^^

 

umask의 종류

 

1)umask 000

새폴더 퍼미션 : 777

새파일 퍼미션 : 666

 

1)umask 001

새폴더 퍼미션 : 776

새파일 퍼미션 : 665

 

1)umask 022

새폴더 퍼미션 : 755

새파일 퍼미션 : 644

디지털 오션 리눅스(CENTOS7)에 자바 업그레이드(J2SE 7-> J2SE 8)

Posted by HULIA(휴리아)
2019. 8. 31. 16:50 호스팅_서버_툴/서버

업그레이드 하는 이유는 다음과 같습니다

Unsupported major.minor version 52.0 이 오류때문인데요

이유가 개발할때 자바버젼이 J2SE 8에서 했는데 실행할때 자바버젼이 J2SE 8보다 낮으면 발생하는 문제였습니다

제가 설치할 때 J2SE 7로 설치를 해서 이번 기회를 통해서 J2SE 8로 업그레이드 해주기로 결정했습니다

 

저는 기본에 RPM으로 openJDK를 설치해 놓았기 때문에 기존 7버젼을 지우고 8버젼을 새로 설치하기로 했습니다

 

1)설치된 자바 버젼 확인

rpm -qa | grep jdk

 

2)설치된 7 버젼 지우기

yum remove java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64

 

정상적으로 지우졌습니다

 

3)자바 설치가능 리스트 확인

yum list java*jdk-devel

 

4)자바 8 버젼 설치

yum install java-1.8.0-openjdk-devel.x86_64

설치 완료 되었습니다

 

5) 자바 8 버젼 설치 확인

rpm -qa java*jdk-devel

 

6) 자바 버젼 확인

java -version

업그레이드 되었네요^^

리눅스 기초 용어 정보 정리

Posted by HULIA(휴리아)
2018. 12. 16. 12:35 호스팅_서버_툴/서버

https://sparcs.org/static/seminars/grandmarnier-20110617-2.pdf


리눅스의 특징

1)대부분 무료(오픈소스)

2)대부분의 하드웨어어 호환됨

3)다양한 설정가능(네트워크 등)

4)다양한 파일시스템 지원

5)낮은 하드웨어 사양에서도 사용가능



리눅스 배포판

Debian

-패키지 설치 및 업그레이드가 쉽다는 장점

Dpkg, apt 등을 이용하여 소프트웨어 설치나 업데이트에서 다른 패키지와의 의존성 확인, 보안관련 업데이트 등을 자동으로 해준다


Ubuntu

-데스크톱에서 리눅스를 쉽게 사용할 수 있게 만든 리눅스 배포판

-Debian을 바탕으로 만들어짐


Centos(the Community ENTerprise Operation System)

-레드헷 엔터프라이즈 리눅스(상용)의 소스 코드를 그대로 가져와 사용함.

-업데이트되는 상위판과 호환성 유지



리눅스의 구조

USER <-> SHELL <-> LINUX KERNEL <-> COMPUTER HARDWARE

APPLICATION <-> LINUX KERNEL <-> COMPUTER HARDWARE



SHELL

-유저와 직접 소통하며 유저에게 명령을 전달받아 실행

-주로 bash가 많이 쓰임

/etc/shells에 사용가능한 쉘의 위치가 기록되어 있음



리눅스에서 관리하는 모든 것은 파일로 인식

(일반파일, 하드웨어, 현재 실행되는 프로세스 등...)



리눅스의 사용자 계층

-root

-user(root외 사용자)

*sudoer

root가 허가한 사용자이며 sudo라는 명령어를 통해서 root의 권한을 행사(명령어실행)할 수 있는 사용자

/etc/sudoers 파일에 sudo를 사용할 수 있는 사용자와 각 사용자가 root권한으로 실행할 수 있는 명령이 정의되어 있음

-사용자들은 그룹으로 묶어서 관리함

모든 유저는 적어도 하나의 그룹에 속해있음

-일반적으로 모든 파일은 파일의 소유주, 그룹, 그 외 사용자의 세가지 단위로 분리되어 각 단위마다 권한을 다르게 지정할 수 있음

권한을 변경할 수 있는 권한은 파일의 소유주와 root가 가지고 있음




리눅스의 디렉토리 구조

/

/bin - common programs

/boot - kernel and other boot files

/dev - device files

/etc - configuration files

/lib - shared libraries

/lost+found - damaged files

/misc - miscellaneous files(여러가지 다양한 파일 = 기타 파일들)

/mnt - mounted file systems

/proc - directories and files that report system status

/root - root user's home directory

/tmp - temporary files

/var - log files, spool files and other dynamic files

/home - user's home directory

/usr - 모든 유저가 쓸수 있는 애플리케이션과 파일들

/usr/bin - common programs

/usr/etc - configuration files

/usr/games - games

/usr/include - C header files

/usr/lib - shared libraries

/usr/local - other applications

/usr/sbin - system administration programs

/usr/share - shared information

/usr/src - source code

/opt - 추가적인 프로그램들의 설치 경로(오픈오피스, 파이어폭스 등등)



추가적으로 개발을 해서 프로그램을 배포할때 서버에서의 디렉토리 위치는

/usr

/usr/local

/opt

정도가 될듯


POSIX(Portable Operating System Interface)

유닉스 운영체계에 기반을 두고 있는 표준 운영체계 인터페이스




앱)AWS 스터디 정리1

Posted by HULIA(휴리아)
2018. 11. 13. 19:00 호스팅_서버_툴/서버
엣지 로케이션 - CDN서비스
가용영역(AZ)는 데이터센터이며 분리되어 있음

과금 옵션 비용 최적화 관련 자료
-온디맨드
-리저브
-스팟

autoscaling
-ELB, Cloudwatch, ec2, autoscaling

glacier
백업용 스토리지
액세스 시간이 있다

s3
정적 웹 사이트 호스팅 가능 -> github가 좋다

RDS
설정, 백업, os패치 자동화, DB이중화, Replica, 인스턴스 확장 장동으로

다이나믹DB - nosql
일라스틱캐시 - 인메모리DB

Internet gateway는
1)인터넷이 되는 용도말고는 없다
2)IP가 없다
3)내부적으로 여러대이다
4)자동으로 오토 스케일링 된다
5)VPC마다 존재

NAT gateway는
1) EIP가 자동으로 부여된다
2) nat ec2 vs nat gateway로 검색
3) 원래는 인스턴스였다
4) AZ마다 존재

EC2 인스턴스
생성하면 기본적으로 public ip가 생기는데 인스턴스 재부팅을 하면서 바뀌지 않지만 중지하면 pulbic ip가 없어진다.
그리고 시작하면 새로운 public ip를 받게 된다

우발적 종료를 풀려면 setting를 change해야 한다

public subnet은 internet gateway가 연결된 것을 말하는가?
--> ig + subnet + router table

앤드포인트로 된 RDS는 IP를 고정으로 해줄 수 없으므로
SG설정시 outbound all로 해준다
SG설정시 inbound가 훨씬 중요함

앱)리눅스 alias

Posted by HULIA(휴리아)
2018. 3. 27. 11:07 호스팅_서버_툴/서버
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

디지털 오션 Centos7에 MariaDB 설치하기

Posted by HULIA(휴리아)
2018. 3. 25. 21:28 호스팅_서버_툴/서버

https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-centos-7


설치

sudo yum install mariadb-server


기동

sudo systemctl start mariadb


기동상태확인

sudo systemctl status mariadb


옵션)부팅시에 자동으로 기동되도록 설정

sudo systemctl enable mariadb


root 패스워드와 외부 접속 설정

sudo mysql_secure_installation

Enter current password for root (enter for none): 이럴때는 엔터
set root password :Y
remove anonymous users Y
disallow root login remotely y
remove test database and access to it y
reload priviliege tables now y


접속
mysql -u root -p

show databases;


계정추가

use mysql;
CREATE USER 'istoryful'@'%' IDENTIFIED BY '820820';
grant all privileges on *.* to istoryful@'%' WITH GRANT OPTION
show grants for 'istoryful'@'%';

flush privileges;

SELECT Host, User, Super_priv FROM mysql.user WHERE User='istoryful' AND Host='%';

 



캐릭터셋 설정
cd /etc/my.cnf.d/


sudo vi client.cnf

[client]
default-character-set = utf8

 

sudo vi mysql-clients.cnf

[mysql]
default-character-set = utf8
[mysqldump]
default-character-set = utf8

 

sudo vi server.cnf

[mysqld]

collation-server = utf8_unicode_ci

init-connect='SET NAMES utf8'

character-set-server=utf8

 

sudo service mariadb restart

 

시스템의 캐릭터셋 확인

show variables like 'char%';

 





접속
mysql -u istoryful -p


기존 테이블의 캐릭터셋 변경

alter table COLLECTIVE_LINK convert to character set utf8;



데이터베이스 만들기

create database easywhooing;




server refused our key

Posted by HULIA(휴리아)
2018. 3. 25. 19:48 호스팅_서버_툴/서버

디지털오션에서 root외의 계정으로 접속할때 server refused our key 오류가 나면서 접속이 되지 않았네요


해결책은 서버에도 ssh keys 설정을 해주면 됩니다



https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7


root 계정으로 접속해서

ssh-keygen


cat .ssh/authorized_keys 한 내용을 복사


추가로 만든 계정을 접속해서

su - 만든계정


mkdir .ssh

chmod 700 .ssh


vi .ssh/authorized_keys

아까 위에 복사한 내용을 붙여넣기


chmod 600 .ssh/authorized_keys

하고 나서 새로운 계정으로 접속하면 됨


추가로 발견한 사항

vi /etc/ssh/sshd_config에 

AuthorizedKeysFile .ssh/authorized_keys

PasswordAuthentication no

이렇게 되었을때 발견되는 현상 
즉 비밀번호로 로그인이 안되고 sshkey를 통해서만 로그인을 해야하게 설정되었을때 발생하는 문제

PasswordAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys 로 설정하고
systemctl reload sshd

이후에는 비밀번호로 로그인 가능