반응형
반응형

📝Java 경로 확인

alternatives --config java → 내가 실제 사용하는 jdk 위치 확인
내 기준으로 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-11.el8.x86_64/jre/bin/java 라는 path 노출

 

📝1024 미만 포트 권한 주기

setcap 'cap_net_bind_service=+ep' /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-11.el8.x86_64/jre/bin/java → 1024 미만 포트 사용권한 부여 (jdk는 1024 포트 미만을 사용할 수 있다.)
getcap /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-11.el8.x86_64/jre/bin/java → 부여된 권한 체크

톰캣 실행 → /usr/bin/java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory 
(에러 발생)

 

📝libjli.so path 다시 잡아주기

vi /etc/ld.so.conf.d/java.conf (파일 없을시 생성)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-11.el8.x86_64/lib/amd64/jli 내용 추가 
ldconfig → 위에 수정 내용 서버에 적용하기

 

📝톰캣 기동

반응형
반응형

윈도우에서 작성한 파일을 Linux에 올리면 개행 문자가 깨져서 ^M가 보이는 경우가 있습니다. 그걸 없애는 방법을 알려드리겠습니다.

 

^M = Ctrl + v + Enter 

지우는법 : sed -i 's/^M//g' 경로

 

반응형
반응형

레드헷/우분투 계열에서는 /etc/hosts 파일을 우선적으로 참고하여, 네임서버를 아이피주소로 바꿉니다.

이거처럼 127.0.0.1을 locahost로 쓰겠다는 것입니다.

 

반응형
반응형

https://www.oracle.com/java/technologies/downloads/#java8

 

Download the Latest Java LTS Free

Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.

www.oracle.com

 

리눅스 버전의 JDK를 먼저 설치해야합니다. 여기에선 8버전이지만 저는 1.7버전으로 진행했습니다.

linux의 64비트의 리눅스전용 알집 tar.gz입니다.

 

/home 에 따로폴더를 만들어서 jdk를 넣어줬습니다.

외부 파일을 리눅스에 넣는 법은 앞에 포스팅한 걸 봐주시면 됩니다.

 

tar xvf 압축풀 tar.gz 파일명으로 압축을 풀어주세요

 

이렇게 압축이 잘 풀어진 걸 확인할 수 있습니다. 

루트에 user/local 폴더를 만들어주시고 jdk-17폴더를 옮겨주세요 그리고 local폴더로 이동합니다.

(작업 공간을 바꾸는 거 뿐입니다.)

 

거기서 jdk-17을 java란 이름으로 심볼릭링크를 만듭니다.

vi /etc/profile로 환경변수를 위와 같이 수정해주세요 위에 경로 /usr가 아니라 저희는 user로 만들었으니 /user입니다.

source /etc/profile로 적용해줍니다.

javac -version 과 java -version으로 제대로 적용 됐는지 확인할 수 있습니다.

 

이제 톰캣을 설치하겠습니다.

 

http://tomcat.apache.org/download-80.cgi

 

Apache Tomcat® - Apache Tomcat 8 Software Downloads

Welcome to the Apache Tomcat® 8.x software download page. This page provides download links for obtaining the latest versions of Tomcat 8.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versions

tomcat.apache.org

톰캣을 리눅스 서버에 넣어주세요 위치는 /user/local/server 입니다.

server폴더가 없으므로 만들어주세요

 

(위에 사진하고 본인이 작업하는 거하고 다를텐데 제가 뒤죽박죽으로 해서 그렇고

어차피 server폴더에서 작업할 거라서 server폴더에 압축 푸시면 됩니다.)

tomcat또 심볼릭링크를 만들어주겠습니다.

vi /etc/profile 을 이용해 톰캣 환경변수도 추가하겠습니다.

source /etc/profile 을 이용해 적용시키겠습니다.

 

firewall-cmd --permanent --zone=public --add-port=8080/tcp (톰캣 8080 포트 열기)

firewall-cmd --permanent --list-all 을 이용해 포트가 제대로 열렸는지 확인이 가능합니다.

 

/user/local/server/tomcat/bin/startup.sh 로 톰캣을 실행시킬 수 있습니다.

/user/local/server/tomcat/bin/shutdown.sh 로 톰캣을 중지시킬 수 있습니다.

 

윈도우에서 이제 리눅스서버IP:8080 이라고 치시면 저러한 화면이 나오면 성공입니다.

 

 

반응형
반응형

리눅스 서버 IP를 직접 설정할 수도 있습니다. nmcli dev status인터넷들의 연결상태를 볼 수 있습니다.

 

cd /etc/sysconfig/network-scripts/ 로 들어가주세요. 거기서 ls치면 사람마다 다른 네트워크 설정하는 파일이 있습니다.

vi로 열어주세요

 

처음에 이러한 화면입니다. 이걸 밑에 처럼 수정해주세요

 

들어가면 이러한 화면인데요 IPV6는 사용 안 하니 주석처리 해주세요

IPADDR에 x는 2~ 255 사이로 정해주시면 됩니다.

 

넷마스크로 255.255.255.0 은 앞에는 고정적이로 0인 부분은 0 ~ 255를 사용가능하다는 소리입니다.

게이트웨이는 192.168.1.1 로 되어있는데 아이피랑 앞에 세개랑 같아야 합니다.

(왜 3개냐면 넷마스크 255.255.255로 고정적이라서)

그래서 아이피는 뒤에 겹치지 않는 걸로 0 ~ 255를 설정할 수 있습니다.

 

이제 적용하기 위해서 네트워크를 껏다 켜야합니다.

 

화면에 파란색 부분에 끄기 버튼을 누르면 꺼지고 다시 들어가면 키기 버튼으로 바뀝니다.

그런식으로도 네트워크를 껏다 킬수도 있습니다.

 

ifdown 인터페이스명 (여기에선 ifup enp0s3) 해당 네트워크 끄기

ifup 인터페이스명 (여기에선 ifup enp0s3) 해당 네트워크 키기

 

nmcli dev status 다시 한번 로 확인해보면 연결된 것을 알 수 있습니다.

 

또는 버츄얼박스에서 직접 설정도 가능합니다.

 

유선 네트워크 설정으로 들어가주세요

 

 

 

⚠️주의점

이러한 짓을 할 거면 NAT랑 브릿지에 대한 이해가 해박하신 분이 아닌 이상 따로 이렇게 할 필요 없습니다.

보통은 어떤 방식을 사용하는지 포스팅 해놨으니 보시면 이해가 가실 겁니다. 

반응형
반응형

리눅스서버에다가 윈도우에 있는 파일을 넣도록 하겠습니다.

 

1. 파일질라

 

https://filezilla.softonic.kr/

 

FileZilla

신난다 무료 FTP 클라이언트

filezilla.softonic.kr

 

설치 다하면 이러한 화면이 나옵니다.

 

먼저 설정해서 해줘야 하는게 있습니다.

 

네트워크 탭에 들어가시면 다음에 연결됨이 있는데 이걸 어댑터에 브리지로 해주세요

왜 바꾸는 거에 대한 설명은 따로 포스팅 했습니다.

 

리눅스 서버를 열어주시고 터미널을 여시고 ifconfig를 입력해주세요

그러면 리눅스 ip를 볼 수 있습니다. inet뒤에 있는게 리눅스 서버의 아이피입니다.

 

 

접속할 리눅스 아이피랑 그 사용자 명과 비밀번호와 포트번호는 22로해서 접속해주시면

오른쪽에 리눅스환경 디렉토리가 보여질 것입니다.

드래그해서 윈도우에 쓰시는 거처럼 밖으로 옮겼다 넣었다 할 수 있습니다.

 

파일질라의 장점은 대용량 파일 전송에 있어서 빠르다는 장점이 있습니다.

 

두번째 툴은 Mobaexterm입니다.

 

https://mobaxterm.mobatek.net/

 

MobaXterm free Xserver and tabbed SSH client for Windows

The ultimate toolbox for remote computing - includes X server, enhanced SSH client and much more!

mobaxterm.mobatek.net

 

그냥 계속 다음 누르시면 됩니다.

 

SSH 누르시고 리눅스 아이피랑 specify username 체크해주시고 리눅스 사용자 아이디 해주시고 오케이

이후에 패스워드 입력해주시고 나머진 OK 누르시고 이거만 Cancle 해주시면 됩니다.

(마스터 비밀번호 설정인데 넘어가셔도 무방)

 

 

왼쪽에 리눅스 디렉토리 보이는데 윈도우에서 드래그해서 파일을 넣을수도 뺄 수도 있습니다.

 

 

mobaexterm은 ssh로 리눅스 조작 기능도 제공함과 동시에 FTP기능도 지원해 줍니다.

하지만 파일질라보다는 대용량엔 좀 속도가 더디다는 점이 있습니다.

 

 

3. PowerShell

 

윈도우에 깔려있는 PowerShell을 이용해서 보낼 수도 있습니다.

scp 파일명 리눅스계정@리눅스IP:저장할곳

scp hello.jpg root@14.37.116.185:/home

 

반응형
반응형

 

버츄얼 박스를 먼저 설치해주세요

 

https://www.virtualbox.org/

 

Oracle VM VirtualBox

Welcome to VirtualBox.org! News Flash Important May 17th, 2021We're hiring! Looking for a new challenge? We're hiring a VirtualBox senior developer in 3D area (Europe/Russia/India). New July 28th, 2021VirtualBox 6.1.26 released! Oracle today released a 6.1

www.virtualbox.org

 

 

실행 시키고 그냥 쭉 Next 누르시면 됩니다.

 

 

기본 머신 폴더를 지정하면 가상 머신들의 기본 이미지 폴더를 지정할 수 있어 관리에 효율적입니다.( 그냥 가상머신을 가져오거나 내보내거나 할 때 좋다는 소리인 거 같습니다.)

 

이제 CentOS를 설치하겠습니다.

 

https://www.centos.org/download/

 

Download

As you download and use CentOS Linux or CentOS Stream (What's the difference?), the CentOS Project invites you to be a part of the community as a contributor. There are many ways to contribute to the project, from documentation, QA, and testing to coding c

www.centos.org

 

아무거나 들어가도 상관 없습니다.

 

이 파일을 다운로드 해주세요(용량이 가장 크다는 특징이 있음)

 

버츄얼박스를 여시고 새로만들기를 합니다.

 

이름은 자기가 정하고 싶은대로 정하면 됩니다.

머신폴더는 위에서 설정했습니다.

종류는 리눅스입니다.

버전은 Red Hat

 

 

자기 마음대로 정하면 되는데 여유 없으면 1기가로 여유 있으면 2기가로 잡아주시면 됩니다.

 

가상하드 디스크를 추가하지 않음

  이후에 가상 하드 디스크를 추가해야 하기 때문에 사용할 필요가 없는 옵션

  

지금 새 가상 하드 디스크 만들기

  이후 하드디스크를 만드는 작업을 수행(머신 신규 생성 시에는 일반적으로 이 옵션을 선택)

 

기존 가상 하드 디스크 파일 사용

  머신만 생성하고 기존하드 디스크를 이용하여 운영하기 위한 옵션으로 많이 쓰이지는 않는다.

  그냥 머신만 만들고 그 가상화 안에는 거는 내 실제 하드를 이용해서 운영하는 거 같음

 

 

저는 두번째거로 만들겠습니다.

 

 

 

VID(Virtual Disk Image)

  VirtualBox에서만 사용가능한 포멧 방식

VHD(Virtual Hard Disk)

  Oracle VirtualBox, MS Hyper-V, Citrix Xen에서 구동이 가능한 포멧 방식

VMDK(Virtual Machine Disk)

  Oracle VirtualBox, VMWare의 VMWare Player에서 구동이 가능하 포멧 방식

  필자는 VirtualBox와 VMWare Player를 주로 사용하기 때문에 VMDK 방식을 선택

 

 

저는 VMDK로 하겠습니다.

 

저는 동적할당 하겠습니다.

 

자기가 필요한 만큼 하드디스크를 할당해주면 됩니다. 저는 25GB로 설정하겠습니다.

 

 

다운로드 받은 CentOS를 지정하고 확인을 눌러주세요

 

 

Enter 눌러주세요

 

 

 

사진을 못찍었는데 이 밑에 사진에 설치목적지에 할당하라고 나올 것입니다.

설치 목적지 들어가시면 이렇게 나옵니다.

 

오토매틱은 자동 할당인거고 Custom이라고 되어있으면 파티션을 내가 어떻게 할당할 것인지 설정이 가능합니다.

 

Root 암호를 설정하면 설치 시작이 활성화 됩니다. 설치해주세요

 

설치후 라이센스 정보에 동의해주세요

 

만들 사용자를 관리자로 설정해주세요 저는 이렇게 사용자를 생성하겠습니다.

(관리자로 설정했는데 root 그룹으로 들어가있진 않네요) 괜찮습니다. 나중에 변경 가능해요

 

로그인 하면 여러가지 나오는데 그냥 다음으로 다 넘어가면 됩니다.

 

저희는 GUI 버전으로 설정했기 때문에 이렇게 GUI버전으로 보이는 것입니다.

만약 그냥 아무것도 선택 안 하면 터미널만 덩그러니 있을 거고 

거기에 필요한 명령어도 없어서 그에 필요한 것도 깔아야 하는 상황이 옵니다.

지금껏 Window키 + L 이나 작업관리자로 빠져나왔는데 그걸 설정하겠습니다.

오른쪽 밑에 Right Control이라고 적힌 곳에 오른쪽 마우스 누르시고 키보드 설정 눌러주세요

 

 

여기서 자기가 편한걸로 하시면 됩니다.

저 같은 경우는 Shift + Ctrl 로 했습니다. (두 키의 조합도 가능합니다.)

 

 

반응형
반응형

📝사소한 팁

 

Tap

어느정도 치다가 Tap 누르면 자동 입력(로그가 있어야지 자동생성 됨)

   

방향키 위, 아래

최근에 입력한 명령어 불러오기 가능

 

ctrl + Insert

윈도우 내용 복사

 

Shift + Insert

윈도우 내용 붙여넣기

 

ctrl + alt + f2 ~ f6 

가상 콘솔(가상 데스크톱)

 

📝리눅스 명령어

 

useradd 아이디

리눅스 계정 생성

 

passwd 아이디

생성한 계정의 패스워드 부여

 

pwd (print working directory)

현재 위치한 디렉토리 경로 출력

 

cd (change directory) 

경로 이동 (cd 경로명)

../ = .. 상위 디렉토리
/home home 디렉토리

 

ls (list)

현재 위치한 디렉토리 내의 목록을 확인 (ls -l 현 디렉토리 상세 목록 확인)

 

cat (concatenate)

파일 내용물 보기 (cat 파일명)

 

mkdir (make directory)

디렉토리 생성 (mkdir 디렉토리명)

 

touch

최신 수정일로 변경 만약 특정옵션이 사용되지 않는다면 파일의 크기가 0인 빈 파일을 생성한다.

(touch 파일명)

 

 rm (remove)

 파일 삭제 (remove 파일명)

 파일과 디렉토리 전부 삭제 (rm -rf 디렉토리명)

 

 rmdir (remove)

 디렉토리 삭제

 

 head

 처음 10줄만 파일 내용보기 (head 파일명)

 (head -n 표시할줄수 파일명 파일에서 처음 몇 줄을 볼지 정할 수 있다.)

 예) haed -n 20 1.txt

 

 tail

 끝 10줄만 파일 내용 보기 (tail 파일명)

 tail -n 표시할줄수 파일명 파일에서 마지막으로 부터 몇 줄을 볼지 정할 수 있다.)

 예) tail -n 20 1.txt

 

 find

 문자로 파일, 폴더 찾기 (find 경로 -name 파일명 전체에서 파일명을 찾아준다.)

 현재 경로로 부터 어디에 위치했는지 보여줌

 예) find / -name '*error_log*'

 예) find / -name "*.txt"

 예) find / -name '*error_log*' 2> /dev/null (허가 거부시 무시하고 출력)

 

 yum 

 프로그램, 모듈(라이브러리) 설치 (CentOS)

 예 ) yum ~~~ 이런식

 

 apt

 프로그램, 모듈(라이브러리) 설치(Ubuntu)

 예) apt ~~~ 이런식

 

 ps

 현재 실행중인 프로세스 목록을 보여준다.
 ps만 단독으로 쓰는 경우는 없고 -ef라는 속성을 하나의 명령어처럼 잘 쓰인다.

 ps -ef : 모든 프로세스 출력 , UID, PID, PPID 등을 보여준다

 

     PID : 프로세스 식별번호
     PPID : 부모 프로세스 ID
     TIME : 총 CPU 사용 시간
     UID : 프로세스 소유자의 이름

 

mv

파일명변경 또는 파일 옮기기 

예) mv 1.txt 2.txt (mv 기존파일명 변경파일명) 

예) mv /etc/1.txtx /etc/temp/2.txt(mv 파일경로/기존파일명 옮기길원하는경로/변경파일명)

 

rename

rename은 하나 혹은 하나 이상의 파일명을 일괄 변경할때 사용하는 명령어
예) rename test TEST *.txt (rename 변경전문자열 변경후문자열 변경대상파일명)

예) rename directory DIRECTORY directoy_text_? (?는 한 문자를 의미 디렉토리명도 바꿀 수 있다.)

 

cp (copy)

파일 혹은 디렉토리를 복사 (cp 복사할파일 복사된파일명)

디렉토리의경우 (cp -r 복사할디렉토리 복사될위치디렉토리)

      

예) cp a.txt b.txt c.txt test_dir/ (세개 파일을 한번에 복사)    

cp *.txt test_dir/ (모든.txt 파일을 test_dir에 복사)

cp a.txt test_dir/b.txt (a.txt를 test_dir에 b.txt라는 이름으로 복사)

 

top

시스템의 상태를 전반적으로 가장 빠르게 파악 가능

 

chmod

파일 및 폴더 권한 바꾸기

chomod 777 : 모든 대상 모든 권한 허용

맨 앞 7은 user(사용자) 그 다음은 group 그 다음은 other(두 군데 속하지 못한 나머지)을 의미한다.

 

chmod -R 777 folder : folder와 folder 디렉토리 안에 모든 파일들의 권한을 777로 준다. 

     

 r = 4 , w = 2 , x = 1
7 모든 권한(rwx)
6 읽고 쓰기(rw)
5 읽고 실행(rx)
4 읽기 (r)
3 쓰고 실행(wx)
2 쓰기(w)
1 실행(x)

 

chown

ls -l 하면 상세 설명이 나옵니다. 

rw-r--r--. 1 root root 1419 Oct  6 23:42 countries.rc

root라는 사용자고 root라는 그룹에 들어가있다는 의미입니다. 

chown으로 변경할 수 있습니다.

 

chown user1:user1 countries.rc 이 명령어를 치면

rw-r--r--. 1 user1 user1 1419 Oct  6 23:42 countries.rc 으로 변경됩니다.

 

chown -R user1:user1 folder : folder라는 이름의 폴더와 안의 모든 것들의 소유자와 소유그룹을 일괄 변환 

 

echo

내용을 출력합니다. (echo 문자열)

 

ifconfig

리눅스 환경 아이피 확인 명령어

예 ) 설치파일을 리눅스로 작업해야하기 때문에 윈도우에 있는 설치파일을 리눅스환경에 옮기기

쉽게 파일질라를 이용해 옮기기 위해 연결할 리눅스 아이피가 필요하기 때문에 사용 된다

 

bg

bg 작업내용(ls, find ...) &

 

jobs

백그라운드 작업의 상태를 표시하는 명령어

 

kill

kill %작업번호(1, 2...) 백그라운드 작업을 종료

 

fg

fg %작업번호(1, 2....) 백그라운드 작업을 포그라운드로 전환

 

top

    pid : 프로세스 id
    user : 실행한 user
    virt : 가상 메모리
    res : 실제 사용 메모리
    Ctrl + h → 스레드 파악
    Ctrl + m → 메모리 내림차순 정렬
    e → 표시 단위 변경 

    1 → CPU (하이퍼스레드, 물리, 논리 CPU 모니터링)

   

free -h

    total : 전체 메모리
    used : 사용중인 메모리
    free : 남은 메모리 공간
    buff/cache : 리눅스 명령어 history 등에 사용 (이미 했던 작업을 빠르게 접근하기 위해)
    used에 일부가 포함되어 있습니다. 
    available : 사용 가능한 메모리

    (buff/cache에서 빼내와서 이용할 수 있는 메모리 크기입니다. 이 값은 free에 일부 포함되어있습니다.)

 

du

du -sh (경로) 현 경로의 총 용량

du -h (경로) 현 경로의 각각의 용량 + 총 용량

 

df -h

서버 디스크 용량을 확인 (파티션 등등...)

 

scp [파일명] [원격지_id]@[원격지_ip]:[받는 위치]

서버에서 다른 서버로 파일 옮기기 예) scp file.txt root@192.168.0.20:/home/search

 

ifdown

해당 네트워크 끄기 (ifdown 인터페이스명)

예) ifup enp0s3) 

 

ifup 

해당 네트워크 키기  (ifdown 인터페이스명)
예) ifdown enp0s3

 

su

    유저 바꾸기 (su 유저명) [현재 계정 로그아웃 하지 않고 다른 계정으로 전환]
    예) su root

    su - 유저명 (환경변수까지 적용)

    예) su - root

 

sudo

현재 계정에서 root 권한을 이용하여 명령어를 실행할 떄 사용 (sudo su - user)

 

whoami

현재 사용자 확인

 

exit

이전 계정으로 돌아온다.

 

groups

해당 계정 그룹 확인

 

ping 8.8.8.8

8.8.8.8 : 구글 DNS 서버 IP주소

구글 DNS 서버에 신호를 보내 되돌아오는지 확인해 네트워크가 연결 됐는지 간접적으로 확인

 

cut -f1 -d: /etc/passwd 

등록된 유저 확인

 

nmcli dev status

인터넷들의 연결상태를 볼 수 있습니다.

 

scppass (패스워드 없이 scp 사용)

sshpass -p ${password} scp /backup/backup.`date +%Y%m%d`.tar.gz ${호스트네임}@192.168.0.49:/home/backup/

 

chcpu -e ${CPU번호}

해당 CPU번호를 기동합니다. [하이퍼스레드]

 

chcpu -d ${CPU번호}

해당 CPU번호를 중지합니다. [하이퍼스레드]

ex) chcpu -d 0,3,5

 

📝vi명령어

 

vi

파일 편집 수행 (vi 파일명)

vim

파일 편집 수행 (vim 파일명) 편집기를 이쁘게 볼 수 있음

 

 

:set number 

line 보기

 

:set nonu

라인 지우기

 

:$

문서 끝으로 이동

 

줄번호 + Shift + G

해당 줄로 이동

 

:/ , :?

특정 문자 찾아 이동 (:/ 찾을문자열)

특정 문자 찾아 이동 (:? 찾을문자열)

- 다음 문자찾기 

    n : 방향대로

    N : 역방향대로

 

dd

한줄 지우기

현재 커서(여기부터 1행)로부터 N행 삭제 (N) dd)

 

:w

저장하기

새 파일명으로 저장 (:w 파일명) [작업 파일이 꺼지진 않는다.]

 

:f 파일명

파일 이름을 파일명으로 변경

예) :f abc.txt

 

:e!

마지막 저장 이후 모든 편집 취소

 

:wq

저장하고 종료

 

:q!

저장 없이 종료

 

+

다음 행으로 이동

 

-

이전 행으로 이동

 

w

단어 단위로 커서 이동 (오른쪽)

 

b

단어 단위로 커서 이동 (왼쪽)

 

a

현재 커서 바로 다음 위치 삽입

 

i

현재 커서 위치에 삽입

 

dw

커서 위치한 곳의 글자 1개 삭제

 

u

명령 취소

 

ctrl+ r 

명령 취소 되돌리기

 

yy

한줄 복사

 

숫자 -

현재 위치로부터 숫자 만큼 윗줄 이동

 

숫자 +

현재 위치로부터 숫자 만큼 아랫줄 이동

 

:숫자

숫자에 적힌 행으로 이동

 

:%s/매칭문자열/치환문자열

매칭문자열을 치환문자열로 바꾼다.

 

:s/매칭문자열/치환문자열/g

현재 행 매칭문자열을 치환문자열로 전부 변경

 

:s/매칭문자열/치환문자열

현재 행 매칭문자열을 치환문자열로 한번만 변경(가장 앞의 것) 

 

📝스케쥴러 

 

at

1회성 예약 작업을 등록

at now+1 minutes    → 현재 시각으로부터 1분 뒤에 실행시켜주세요
at 23:50 2022-11-23  → 2022년 11월 23일 23시 50분에 실행시켜주세요

at > ${작업문구}
at > ....
ctrl + d로 작업 종료

 

at -d ${작업번호}

작업 삭제

 

at -l

작업확인

 

crontab

반복적인 작업 등록

 

crontab -e 

작업적기 (vi 형태로 열리게 된다.) 

 

crontab -l 

작업확인

crontab 정의

분 / 시 / 일 / 월 / 요일
 *     *      *     *      *
(분) 0 - 59
(시) 0 - 23
(일) 1 - 31
(월) 1 - 12
(요일) 0 - 7 (0, 7 : 일요일, 1 : 월요일, 2 : 화요일 ...)

 

 

 

📝JDK (Java)

 

WAR 파일 생성

jar cvf ${war파일명} ${war로 만들 폴더}
예) jar cvf shppoing.war /home/shopping/*

 

WAR 파일 Deploy

jar xvf ${Deploy할 war파일명}

예) jar xvf shopping.war

 

📝그 외 리눅스 명령어

 

리눅스 포트개방 

iptables -I INPUT 1 -p tcp --dport 11045(개방할 포트번호) -j ACCEPT (CentOS7 부터)

 

CPU 모델명 확인

grep -m 1 'model name' /proc/cpuinfo
model name : Intel(R) Core(TM) i3-6100 CPU @ 3.70GHz

 

모든 CPU 정보 확인

cat /proc/cpuinfo 

 

모든 CPU 개수 확인

grep -c processor /proc/cpuinfo

 

물리 CPU 수 확인

grep "cpu cores" /proc/cpuinfo | tail -1

 

하이퍼스레드 적용 확인

cat /proc/cpuinfo | egrep 'siblings|cpu cores' | head -2
siblings : 8
cpu cores : 4
→ siblings가 cpu cores의 2배로 하이퍼스레딩이 적용된 걸 알 수 있다.

 

리다이렉션 (리눅스 기본 명령어들 사용 불가능)

cat tmp > tmp2 # tmp 내용을 tmp2에 overwrite 해서 넣어라
cat tmp >> tmp2  # tmp 내용을 tmp2에 append 해서 넣어라
wc -l < tmp2 # tmp2를 wc -l 방식으로 출력한다

 

| (파이프라인) 

ps -ef | grep tomcat # ps -ef의 명령어로 나온 결과를 grep(글자찾기) tomcat으로 출력해라
연결자로 입력의 결과를 | 다음으로 넘겨서 처리하겠다는 의미입니다. (리눅스 명령어 사용가능)

 

일정기간 지난 파일 삭제 (ll로 나온 기준으로 제거하기 때문에 파일 경로에 파일 패턴 입력 해줘야한다. 안 그러면 다 사라짐)

find [디렉토리 or 파일 경로] -ctime +0 -exec rm -f {} \;

 

ps -ef 와 jobs의 차이

ps -ef : 모든 프로세스를 확인

jobs : 백그라운드 프로세스를 확인
A라는 사람이 root 계정으로 접근한 것과 B라는 사람이 root 계정으로 접근한 것은 다르다 

그래서 A라는 사람이 접속한 root 계정의 jobs가 B 사람과 다르다.

 

 

반응형