라이트세일에서 운영 중일 때 SSH를 사용하여 연결을 통해 작업을 해야 하는 경우가 있습니다. 이때 sudo vim으로 코드를 추가하다 보면, 붙여넣기 시 단락이 무너지는 문제가 발생해 어려움을 겪을 수 있습니다. 저와 같은 문제를 겪는 분들을 위해, 한 번에 올바르게 붙여넣는 방법을 알아보겠습니다.
sudo vim에서 코드 붙여넣기를 할 때 줄바꿈, 들여쓰기, 공백 등이 무너지는 이유는 vim의 자동 들여쓰기 기능이 붙여넣는 도중에 작동하기 때문입니다. 이를 해결하려면 붙여넣기 모드(paste mode)를 활성화한 후 붙여넣기를 해야 합니다.
목차
문제가 발생하는 이유
vim은 기본적으로 코드를 편집할 때 자동으로 들여쓰기를 조정해주는 기능을 갖고 있습니다. 그런데 외부에서 복사한 코드를 붙여넣으면, vim이 이 입력을 한 줄씩 타이핑한 것처럼 인식해서 자동으로 들여쓰기를 바꿔버리게 됩니다.
sudo vim 명령어

SSH를 사용해 연결하면 위와 같은 터미널 화면이 나타납니다. 여기서 코드를 추가할 파일을 편집하려면 sudo vim [파일명]을 입력하면 됩니다.
vim 모드 및 명령어
| 모드 | 설명 | 진입/사용 방법 |
| Normal 모드 | 기본 모드, 커서 이동, 삭제, 복사, 붙여넣기 등 단축키 사용 | vim 실행시 기본 |
| Insert 모드 | 텍스트 입력 모드 | Normal 모드에서 i(현재 커서 앞), a(커서 뒤), o(아래 줄 새로 삽입) 등 |
| Command-line 모드 | 파일 저장, 종료, 설정 변경 등 명령어 입력 | Normal 모드에서 : 누름 |
- :w → 저장
- :q → 종료
- :wq → 저장 후 종료
- :set paste → 붙여넣기 모드 활성화
- :set nopaste → 붙여넣기 모드 비활성화
vim에서 : 를 누르게 되면 화면 아래에 커서가 깜빡이면서 명령어 입력 상태가 되고, 그때 위의 명령어를 입력하면 됩니다. 모드를 빠져나가는 방법은 Esc키를 누르면 됩니다.
Insert 모드로 들어가기

sudo vim 으로 파일 편집기로 들어가게 되면 기본적으로 Normal 모드에서 시작하기 때문에 타이핑을 해도 수정이 안 됩니다. 편집 모드로 전환을 해야 입력 및 수정이 가능합니다.
| 키 | 설명 |
| i | 현재 커서 위치에서 입력 시작 |
| a | 커서 뒤에서 입력 시작 |
| o | 아래 줄 새로 만들어서 입력 시작 |
위의 키를 누르게 되면 입력 화면 아래 —INSERT— 가 나타나고 이때부터 텍스트 수정이 가능합니다.
붙여넣기 모드 사용하기

코드를 붙여넣기를 할 경우 깨지는 문제를 해결하는 방법은 :set paste 를 입력하신 후에 붙여넣기를 하게 되면 단락이 무너지는 문제가 발생하지 않습니다.
:set paste
순서를 보게 되면 편집기로 들어간 후에 i 를 눌러서 삽입 모드(insert mode)로 전환한 후에, 원하는 코드를 붙여넣기(Ctrl+Shift+V 또는 shift+insert)를 하시면 됩니다.
:set nopaste
붙여넣기가 끝나게 되면 :set nopaste 입력해서 다시 원래 상태로 돌리시면 됩니다.
sudo vim 편집기는 많이 사용되기 때문에 코드를 붙여넣을 일이 많습니다. 하지만 모드를 제대로 알지 못하면 단락이 구분되지 않아 오류가 발생하는 경우가 많습니다. 위의 설명을 참고해 편하게 코드를 복사하고 붙여넣기하시기 바랍니다.
▶ 라이트세일에 OpenLiteSpeed(OLS) 웹 서버를 설치하는 방법
▶ Keep-Alive 활성화해서 워드프레스 속도 향상하기(OLS 기준)
▶ 라이트세일에 OpenLiteSpeed(OLS) 웹 서버를 설치하는 방법





