Server/Linux 13

[Linux] vi로 파일 내용 전체 복사 후 붙여넣기

오늘은 vi로 파일 내용을 전체복사 후 붙여넣는 방법을 포스팅하려고 한다. 1. vi로 파일 내용 전체 복사 후 붙여넣기 vi로 파일을 연 후, 아래 명령어로 첫줄로 이동한다. gg // 첫째줄로 이동 아래 명령어로 비주얼 라인 모드로 전환해서 첫째줄을 모두 선택한다 V // 비주얼 라인 모드 그 후 아래 명령어로 맨 아랫줄까지 선택한다 G // 맨 아랫줄로 이동 그런다음, 선택된 내용을 복사한다. y // 복사(yanked -> 확 잡아당기다라는 의미) 복사된 내용은 vi에디터 사용시 아래 명령어로 붙여넣을 수 있다. p // 붙여넣기(paste) 2. putty 프로그램 사용시 파일 내용 복사 및 외부 프로그램으로 붙여넣기 putty프로그램을 사용하여 원격 서버에 접속했을 시, 해당 서버내에 있는 파..

Server/Linux 2023.04.15

[Linux] free 명령어에 대해

1. 개요 free 명령어는 커널에서 사용되는 버퍼와 캐시뿐만 아니라 시스템에서 사용 가능한 물리적 메모리와 스왑 메모리의 총량을 표시한다. free 명령어는 /proc/meminfo에서 메모리 정보를 가져와 분석하여 수집된다. 간단히 말해, 리눅스 시스템에서 전체적인 메모리에 대한 현황을 보여주는 명령어이다. 그럼 free명령어로 볼 수 있는 메모리 정보와 이와 관련된 meminfo의 값들을 알아보자. 2. 사용법 [사용법] $ free [옵션] [옵션] -b, -k, -m, -g : 바이트, 킬로바이트, 메가바이트, 기가바이트 단위로 출력 --tera, --peta : 테라바이트, 페타바이트 단위로 출력 -h, --human : 자동으로 단위를 조정해서 출력 -w, --wide : 와이드 모드로 실행..

Server/Linux 2023.03.25

[Ubuntu] 부팅시 Node.js 프로젝트가 자동 실행되도록 서비스 등록

개요 AWS EC2(Ubuntu) 인스턴스를 만들어 REST API 서버를 구축하여 사용하던 중, 가끔 서버에 렉이 발생해서 REST API가 응답하지 않을때가 있었다. 그래서 가끔 AWS 콘솔에서 인스턴스를 재부팅시켜줄때가 있었으나, 부팅 후 직접 진입해서 Node.js는 수동으로 실행시켜주는 작업을 계속 반복할수 없었으니.. 서비스로 등록하여 부팅시 자동으로 뜨도록 설정해놓고자 하였다. 구축 환경 Ubuntu 18.04 Node.js 14 1. 서비스 파일 작성 서비스를 등록하기에 앞서, node.js 프로젝트 폴더에 node.js 프로그램을 실행할 수 있도록 아래와 같이 간단한 쉘 스크립트를 만들어 주었다. [start.sh] node --loader ts-node/esm ./index.ts 그런 ..

Server/Linux 2023.02.09

[Bash] 실행중인 서비스 죽이기 & 해당 스크립트 만들기

1. 실행중인 서비스를 죽이기 1.1 서비스 kill 일반적으로 실행중인 서비스를 죽이기 위해서는 다음 명령어를 사용한다. $kill -9 [PID] [사용법] PID는 process의 id를 뜻하며, -9 옵션은 프로세스를 강제 종료한다는 의미이다. (default는 -15이며, 정상종료를 뜻함) 실행중인 서비스를 죽이기 위해서는, 서비스의 PID를 알아야 하는데, 이를 위해선 다음 명령어를 사용한다. 1.2 서비스 PID 검색 $ps -ef | grep [regex] [사용법] 실행 중인 모든 프로세스 중 regex가 포함된 프로세스를 찾아서 목록으로 출력한다. 2. 실행중인 서비스를 죽이는 스크립트 생성 해당 스크립트를 작성하기 위해서는 다음과 같은 명령어를 .sh파일에 작성한다. $ps -ef |..

Server/Linux 2022.05.16

리눅스 압축 파일 관리 (tar 압축, 추출)

서론 tar는 리눅스에서 파일을 압축하거나 풀 때 사용하는 명령이다. "테이프 아카이버(Tape Archiver)" 의 앞글자를 조합한 이름이다. 0. tar 명령어 옵션 tar [OPTION...] [FILE]... -f : 대상 tar 아카이브 지정. (기본 옵션) -c : tar 아카이브 생성. 기존 아카이브 덮어 쓰기. (파일 묶을 때 사용) -x : tar 아카이브에서 파일 추출. (파일 풀 때 사용) -v : 처리되는 과정(파일 정보)을 자세하게 나열. -z : gzip 압축 적용 옵션. -j : bzip2 압축 적용 옵션. -t : tar 아카이브에 포함된 내용 확인. -C : 대상 디렉토리 경로 지정. -A : 지정된 파일을 tar 아카이브에 추가. -d : tar 아카이브와 파일 시스템 ..

Server/Linux 2022.03.28

Window10에서 .sh bash 파일 실행

윈도우 10에서 sh파일을 실행하려고 하면 위와 같이 에러가 난다. 이를 해결 하기 위해서 windows10의 subsystem을 사용하여 ubuntu를 사용할 수 있게 해주는 Windows Subsystem for Linux 기능이 있다고 하는데, 복잡하고 시간이 오래 걸릴거 같으니 다음과 같이 간단한 방법을 소개하고자 한다. 1. 먼저 아래 파일을 다운로드 받아서 원하는 폴더에 압축을 푼다. - 다운로드가 안된다면 아래 링크를 통해서도 받을 수 있다. sourceforge.net/projects/win-bash/files/shell-complete/latest/shell.w32-ix86.zip/download 나는 아래와 같이 C:/dev/SH 폴더를 만들어서 그곳에 풀어줬다. 이와같이 압축을 풀 위..

Server/Linux 2022.03.25

Ubuntu Postgresql(v12) 삭제 및 설치 + 외부 접속 설정

본 포스팅은 Ubuntu 20.04 운영체제를 기준으로 작성되었습니다. (설치 가이드를 보고자 하면, 3번 항목부터 보면 된다.) 1. 데이터 백업(가장 중요) pg_dumpall이나 pg_dump 명령어를 사용해 데이터를 백업한다. (명령어 사용법은 구글 검색) 2. PostgreSQL과 관련된 패키지 전체 삭제 sudo apt-get --purge remove postgresql\* dpkg -l | grep postgres 3. PostgreSQL12를 Ubuntu 20.04에 설치 공식 인스톨 가이드 - https://www.postgresql.org/download/linux/ubuntu/ pgdg.list 파일을 만들고 vi 편집기로 연다 sudo touch /etc/apt/sources.li..

Server/Linux 2021.12.30

visudo와 vi /etc/sudoers 의 차이점

1. sudoer파일이란? sudoer파일은 sudo 명령어를 사용할수 있는 계정을 관리하는 설정 파일이다. 다른 설정 파일들이 그러하듯이, 위치는 /etc 폴더 아래에 존재한다. 2. visudo와 vi /etc/sudoers의 차이 https://www.sudo.ws/docs/man/1.8.17/visudo.man/ 위 Visudo Manual에 따르면, visudo명령어를 사용하는게 sudoers파일을 안전한 방식으로 편집한다며 권장하고 있고, "vi /etc/sudoers"는 말 그대로 vi 편집기로 /etc/sudoers를 편집하는 것이고, visudo는 /etc/sudoers 파일을 관리를 하기위한 application이다. 일단, /etc/sudoers 의 기본 파일 퍼미션은 0440이다. ..

Server/Linux 2021.12.23

특정 유저로 sudo명령어가 안될때 (XXX is not in the sudoers file.)

아래와같이 sudoers file에 유저가 존재하지 않는다고 뜰 때 postgres@VirtualBox:/home/user$ sudo date postgres is not in the sudoers file. This incident will be reported. root유저로 혹은 sudo권한이 되는 유저를 통해 루트 권한으로 /etc/sudoers 파일을 열어준다. vi /etc/sudoers 그 후, 파일 하단에 아래 구문과 같이 사용자를 추가해준 후, 저장한다. postgres ALL=(ALL) ALL 이후 sudo 명령어가 잘 먹는 모습이다. postgres@VirtualBox:/home/user$ sudo date Tue Dec 21 15:52:42 UTC 2021

Server/Linux 2021.12.22

라우팅(Routing)이란?, 리눅스 라우팅 설정

1. 라우팅 (Routing)이란? 라우팅이란 한 네트워크에서 다른 네트워크로 패킷을 이동시키는 과정과 네트워크 안의 호스트에게 패킷들을 전달하는 과정을 말한다. 리눅스 시스템은 미리 설정되어 있는 라우팅 테이블이라는 지도를 보고 패킷을 어떤 네트워크 인터페이스를 거쳐 목적지로 보낼지 결정한다. 2. 리눅스 라우팅 설정 2.1 라우팅 설정 명령어 리눅스에서는 "route -n" 명령어로 확인이 가능하다. (-n 명령어는 이름을 확인하지 않겠다는 뜻으로, 기본 게이트웨이의 IP값이 "gateway"라는 이름으로 출력되지 않게 해준다.) bumday@bumday-VirtualBox:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags M..

Server/Linux 2021.12.13
반응형