리눅스 환경에서 꼭 알아두면 좋을 4가지 꿀팁

NAVER CLOUD PLATFORM
NAVER CLOUD PLATFORM
6 min readNov 5, 2019

안녕하세요, 네이버 클라우드 플랫폼입니다.

​오늘은 리눅스 환경에서 꼭 알아두면 좋을 네 가지 꿀팁을 준비해보았습니다.

​1번부터 차례로 설명드릴게요!

1. Symbolic Link 삭제 없이 타겟 변형하기

Linux 내에서 신규 버전 배포나 Was upgrade 작업시, 흔히들 신규 버전의 디렉토리를 세팅 후에 symlink를 최신 버전으로 맵핑 해주는 방식을 이용합니다. 보통 기존 Symlink 파일을 삭제 후 새로운 Symlink를 생성하는 방식을 이용할텐데 이 경우 발생할 수 있는 문제점을 공유해드리고 좀더 쉽게 타겟을 변경하는 방식을 소개해드리고자 합니다.

# 예시) 신규 버전을 배포하는 경우

아래와 같이 신규 버젼 배포가 있었고 ‘deploy_20190928’에서 ‘deploy_20190929’로 변경할 때 보통 아래와 같은 명령어를 사용하여 타겟을 변경합니다.

$ rm -f latest ; ln -sf deploy_20190929 latest

대부분 문제가 없지만 만약에 latest 로 신규 파일을 계속 쌓고 있는 작업이 있었고 latest 디렉토리가 없을 때 자동으로 생성하고 있었다면 문제가 발생합니다.

예) 아래와 같이 Symlink로 파일을 전달하거나 신규 파일을 쌓을때 디렉토리가 없는 경우 새로 생성하는 작업이 동작하고 있다면 Symlink가 삭제되었을 때 “latest” 디렉토리가 생성되면서 원치 않는 문제가 발생할 수 있습니다.

실제 사례로 tomcat/temp 디렉토리나 /log 디렉토리가 비슷한 문제가 있습니다.

위의 경우를 방지하면서 타겟을 바꿀 수 있는 옵션이 “-T” 옵션입니다.

​‘lastest’의 타겟을 ‘deploy_20190928’ 에서 ‘deploy_20190929’로 변경하였고 incode 변경없이 타겟을 수정했습니다!

​CentOS 기준 6.x 이상부터 생긴 옵션이고 혹시 symlink 삭제 후 다시 생성하는 작업을 하고 있다면 IN-Tsf를 이용해보는걸 추천합니다.

2. Remote 명령어 (ssh) 사용시 서버 내 alias 설정을 이용하는 방법

# 테스트 설명

grep ‘b’ $HOME/test/test.file 에 대한 alias ‘znio_grep’이라는 명령어를 설정한 후 원격에서 수행했을 떄 명령어를 찾을 수 없다는 에러가 나오는 걸 확인할 수 있습니다.

​그럴 때 ‘bash-ic’를 앞에 붙여주면 alias 된 명령어도 사용 가능하다는 것을 알 수 있습니다!

‘-i -c’에 대한 부분은 man page를 통해서 확인해주시기 바랍니다.

3. 원치 않는 ailas 설정을 제거하면서 명령어 사용

Alias 를 통해 서버 내 명령어에 기본 옵션을 넣어두는 경우가 있습니다. (예) rm / cp 등 바로 삭제나 덮어쓰기 방지 목적

​아래는 grep 명령어에 ‘ — color’ 라는 옵션을 넣어둔 경우입니다.

별도의 옵션없이 명령어를 사용하고 싶은데 불필요한 옵션이 포함되어 있다면 아래와 같이 ‘\’ ( back slash )를 활용해보겠습니다.

이처럼 명령어 앞에 ‘\’를 포함해주면 됩니다.

스크립트 수행 등에서 동일한 명령어가 의도하지 않게 동작한다면 원치 않은 옵션이 들어가 있는 경우가 많고 그럴 경우에 활용해보시면 좋을 것 같습니다.

4. sudo 명령 사용시 alias 적용하기

sudo를 사용하는 경우 alias 에 설정된 명령어나 옵션들이 기본적으로 전달되지 않습니다.

grep 내에 ‘ — color’ 옵션이 alias에 적용되어 있음에도 sudo 를 사용할 경우 ‘ — color’ 옵션은 적용되지 않습니다.

alias 를 sudo 명령어에서도 적용되게 하기 위해서는 아래와 같이 설정해야합니다.

alias로 sudo 명령어에 sudo를 할당하면서 공백과 함께 지정합니다.

추가적인 사항으로는 alias 명령어 내에 공백이 포함 되면 다음에 입력된 명령어도 alias 가 적용된다고 합니다!

Passing aliases If you use a lot of aliases, you might have noticed that they do not carry over to the root account when using sudo. However, there is an easy way to make them work. Simply add the following to your ~/.bashrc or /etc/bash.bashrc

위와 같이 지정 후 명령어 사용시에는 아래와 같이 ‘ — color’ 옵션이 적용된 것을 확인할 수 있습니다.

글을 마무리하며…

오늘은 LINUX 사용자들을 위한 콘텐츠로 준비해보았습니다.

LINUX 환경에서의 4가지 운영팁이 여러분들에게 큰 도움이 되었으면 좋겠습니다.

다음 번에도 더욱 재미있고 유용한 정보와 함께 찾아오겠습니다.

--

--

NAVER CLOUD PLATFORM
NAVER CLOUD PLATFORM

We provide cloud-based information technology services for industry leaders from startups to enterprises.