목록DEV&OPS/Linux & Cloud (39)
삶 가운데 남긴 기록 AACII.TISTORY.COM
1. host name 등록 sudo vi /etc/hosts ip와 호스트 네임 등록 후 저장합니다. 2. 라이센스 발급 Technet 효율적인 시스템 관리를 위한 기술 전문 포탈, 테크넷서비스 technet.tmaxsoft.com 티맥스 소프트 가입 후 로그인 데모라이선스 신청 버튼 클릭 JEUS Version 5fix#19 or Later 을 선택 후 제출하기 버튼 클릭 그러면 이메일로 라이센스 파일이 첨부되어 옵니다. 리눅스용 라이센스 license.dat 파일을 license 으로 파일명 변경 3. 설치파일 다운로드 https://technet.tmaxsoft.com/ko/front/download/findDownloadList.do?cmProductCode=0101 TmaxSoft Techni..
CATALINA_HOME과 CATALINA_BASE를 분리 Tomcat 하나에서 여러 web application 을 context root를 분리해서 구동시킬 수 있습니다. 그런데 $CATALINA_HOME과 $CATALINA_BASE를 분리해서 하나의 Tomcat으로 여러개의 인스턴스를 각각 다른 포트 번호로 구동할 수도 있습니다. 여러 인스턴스로 구동하게 되면 각각의 구동 환경을 분리해서 webapp을 구동시킬 수 있습니다. 이렇게 하면 tomcat을 업데이트 할 때 인스턴스는 그대로 두고 tomcat만 교체하면 되기 때문에 편리합니다. server.xml 파일 하나에 여러 호스트 정보를 등록해서 관리 할 수도 있는데 이런 경우 Tomcat 재구동시 모든 서비스들이 재시작되므로 추천하지 않습니다. ..
설치 가능한 JDK 확인 sudo yum list java*jdk-devel 설치 가능한 JDK 리스트가 출력됩니다. openjdk11 설치 sudo 나 root계정이 필요합니다. sudo yum install java-11-openjdk-devel.x86_64 JAVA_HOME 설정 .bashrc는 세션이 시작될 때 자동으로 환경 변수가 등록되며 .bash_profile 은 1회용 환경변수이므로 세션이 달라지면 사라집니다. 우선 jdk의 경로를 확인합니다. find / -name "javac" 2>/dev/null 여기서는 로그인한 계정의 홈 디렉토리에있는 .bashrc를 수정하도록 하겠습니다. vi ~/.bashrc 여기서의 JAVA_HOME 경로는 위에서 설치한 jdk의 경로를 지정해둡니다. 만약 ..
gitlab 설치 시에 기본 port가 8080 입니다. 그런데 8080은 흔히 WAS에서 사용하는 포트기 때문에 보통 gitlab의 포트를 8080 포트가 아닌 다른 포트로 변경해서 설치합니다. (external_url 설정으로...) 그런데 gitlab을 구동했을 때 8080 포트가 사용중인 경우가 있습니다. 깃랩 서비스가 시작된 후 사용 중인 포트를 조사해보면 sudo netstat -nltp puma가 8080 포트를 점유중인것을 알 수 있습니다. puma 구글에서 검색해보면 unicorn 설정이 많이 나오지만 gitlab 14.0 부터는 unicorn 의 지원을 제외한다고 합니다. 그런데 puma 가 8080 포트를 기본 값으로 사용하고 있어서 tomcat같은 was를 사용할 때 8080 포트가..
RAID(Redundant Array of Independent Disks) 여러개의 디스크를 하나의 디스크 처럼 사용하는 방식 Linear RAID 2개 이상의 디스크를 1개의 볼륨으로 사용합니다. 첫 번째 디스크부터 데이터를 저장한 후 꽉차면 두번째 디스크에 데이터를 저장하는 방식입니다. 그래서 각 디스크의 용량이 달라도 문제없이 사용할 수 있습니다. RAID 0 Linear RAID와는 다르게 데이터를 각 디스크에 분할하여 동시에 저장하는 방식입니다. 동시에 저장하기 때문에 저장 속도가 획기적으로 향상됩니다. 단점은, 여러개의 디스크 중에서 한개가 고장나면 모든 데이터를 잃어버린다는 점입니다. 그래서 속도는 빨라야하지만 잃어버려도 큰 문제가 없는 데이터를 저장할 때 적절한 방식입니다. RAID 1 ..
IDE 장치와 SCSI 장치 IDE는 메인보드 슬롯에 각각 2개씩 총 4개 장착할 수 있습니다 표기는 IDE 0:0, 0:1, 1:0, 1:1처럼 표기합니다. 실제 컴퓨터에 CentOS가 설치되어 있다면 실제 물리 하드디스크를 장착하겠지만, VMware는 기본적으로 IDE 1:0 에 CD/DVD 장치를 장착해 줍니다. SCSI는 총 16개의 장치를 연결할 수 있습니다. 여기서 우리는 VMware에 하드디스크를 SCSI로 추가해볼 것입니다. VMware에서는 총 60개 까지 하드디스크를 사용할 수 있습니다. 리눅스에서는 SCSI디스크 이름을 /dev/sda 라고 부릅니다. 추가로 디스크를 장착하면 /dev/sdb, /dev/sdc, /dev/sdd 등으로 부르고 논리적인 파티션으로 나눠진 것은 /dev/s..
pid 메모리에 로딩된 프로세스를 구분해주는 id 값입니다. kill 명령어와 pid 값으로 강제로 종료할 수 있습니다. 다만 부모 프로세스와 자식 프로세스로 종속되어 실행되는 프로세스들도 있으므로 주의해야 합니다. jobs jobs 명령어를 실행하면 현재 실행되는 백그라운드 프로세스의 번호를 출력해줍니다. ps 현재 프로세스 상태를 확인하는 명령어 입니다. kill 프로세스를 강제 종료하는 명령어 입니다. -9 옵션과 함께 사용하면 무한 루프를 도는 프로세스도 강제 종료 됩니다. pstree 부모 프로세스와 자식 프로세스의 관계를 트리 형태로 보여주는 명령어 입니다. 단축키 stty -a 하면 정의된 문자를 볼 수 있습니다. 인터럽트 : ctrl-c 강제종료 : ctrl-\ end of file : c..
네트워크 장치 이름 확인 centOS 7은 네트워크 장치(랜카드) 이름을 ens32 또는 ens33 으로 인식합니다. ifconfing ens33 nmtui 이 명령어는 Network Manager Text User Interface로 네트워크 작업 대부분을 할 수 있습니다. ip설정, 서브넷 마스크, 게이트웨이, dns 정보 들을 편집 할 수 있습니다. systemctl start/stop/restart/status network nmtui 명령을 통해 편집할 내용을 적용할 때 쓰는 명령어 입니다. ifup 장치이름 여기서 장치이름은 위에서 언급했던 ens32 또는 ens33을 말합니다. 해당 네트워크 장치를 작동시켜주는 명령어 입니다. ifdown 장치이름 ifup과 반대로 해당 네트워크 장치를 끄는..
cron(주기적으로 반복되는 일을 자동으로 실행) at(일회성 작업 예약) crontab 명령어 형식 분 시 일 월 요일 사용자 실행명령 매월 1일 아무요일 새벽 5시 root 사용자의 home 디렉토리를 backup 디렉토리에 복사(백업) 하는 예제 00 05 1 * * root cp -r /home /backup 매월 15일 새벽 3시 에 /home 과 그 하위 디렉터리를 /backup 디렉터리에 백업하는 예제 기본적으로 crond가 고동되어 있는지 확인해봅니다. systemctl status crond vim 에디터로 crontab을 편집 합니다. vi /etc/crontab 편집 모드 vim 에디터에서 맨 아래에 아래 처럼 등록하고 명령모드에서 wq! 로 저장하고 vim을 빠져나갑니다. 00 3 ..
이미 푸시 해버린 폴더나 파일들을 git에서 추적 중지하려면 git ignore 으로는 되지 않습니다. 이미 푸시 된 폴더나 파일의 추적을 중지 하려면 아래와 같이 입력합니다. $ git update-index --skip-worktree 파일이나폴더이름 예를 들어 아래와 같이 추적 중지를 할 수 있습니다. $ git update-index --skip-worktree .settings/* $ git update-index --skip-worktree .metadata/* $ git update-index --skip-worktree .classpath $ git update-index --skip-worktree .project
https://about.gitlab.com/install/#centos-7?version=ce Download and install GitLab Learn about the various GitLab installation packages and downloads for Ubuntu, Debian, Docker, Google Cloud, and many more. about.gitlab.com GitLab은 EE 버전과 CE 버전이 있는데 CE(Community Edition) 버전이 무료 버전입니다만, 공식 사이트에서는 기본적으로 EE 버전으로 설치 가이드가 작성되어 있어서 따로 CE버전 설치 방법을 포스팅하겠습니다. 1. Git 설치 우선 git이 설치되어있는지 확인합니다. git --version..
root 계정 접속 su - sudoers 파일 쓰기 권한 설정 chmod +w /etc/sudoers sudoers 파일에 사용자 추가 vi /etc/sudoers VIM 으로 파일 편집에 들어가서 아래 부분을 찾아 그 아래에다가 추가할 사용자를 추가합니다. rootALL=(ALL)ALL 예) 여기서 유저 계정은 testuser라고 가정합니다. rootALL=(ALL)ALL testuserALL=(ALL)ALL VIM 명령 모드에서 wq! 를 입력해 저장하고 빠져나갑니다. sudoers 파일 쓰기 권한 회수 chmod -w /etc/sudoers sudo 테스트 su - testuser sudo whoami 해당 testuser 계정에서 sudo whoami 를 입력 했을 때 root 가 나오면 정상적..
오라클 데이터베이스 19c 다운로드 https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 파일: Linux x86-64 종류: zip 자신의 운영체제에 맞는 zip 파일을 다운로드합니다. 호스트 네임 등록 root 권한을 획득합니다. su - 호스트 네임을 등록합니다. vi /etc/hosts 리눅스 서버의 ip 주소(192.168.1.6)에 호스트 네임을 정해줍니다. 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6...
PuTTY를 이용해 리눅스(centos)에 SSH 접속할 때 윈도우 컴퓨터에 개인키를 저장해두고 리눅스 서버에 공개키를 저장해서 패스워드 입력 없이 접속하는 방법을 소개합니다. 이 방법은 개인키를 유출되지만 않는다면 아이디 패스워드 로그인 방법보다 보안적으로 안전합니다. 그래서 개인키는 로컬 PC에 저장하되 공용 PC에는 저장하면 안됩니다. PuTTY 와 PuTTYgen 다운로드 링크: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 1. 다운 받은 PuTTYgen 를 실행하고 Generate 버튼을 누릅니다. 마우스를 포인터를 빈칸에서 움직이면 RSA키 쌍이 생성됩니다. 안 움직이면 진행이 안됩니다. 난수를 생성하기 위한 작업입니다. 2..
ssh를 이용하면 원격지 컴퓨터에서 centos에 터미널 명령을 실행 시킬 수 있습니다. telnet에 비해 ssh는 암호화된 통신을 하므로 좀 더 안전하다고 할 수 있습니다. SSH설치 1. 루트 권한 획득 su - 2. SSH설치 yum install openssh 3. 서비스 시작 systemctl start sshd.service 4. 서비스 상태보기 systemctl status sshd.service 5. 부팅시 서비스 자동 시작 systemctl enable sshd.service 6. 부팅시 서비스 시작하지 않음 systemctl disable sshd.service 7. 부팅시 실행되는 서비스인지 확인 systemctl is-enabled sshd 8. 서비스 목록 보기 systemctl..
