리눅스에서 Java 모듈을 실행할 때 jar 파일을 많이 사용하게 됩니다. 가끔 jar 안에 있는 버전 정보나 파일 정보를 확인해 봐야할 일이 있는데 그럴 때마다 IDE 개발 툴을 열어서 확인할 수 없기 때문에 리눅스에서 명령어로 확인하는 방법을 알려드리도록 하겠습니다. META-INF 디렉토리에서 MANIFEST.MF 해당 파일에 버전 정보 등이 기록됩니다. jar 파일은 zip 파일 형식으로 패키지 되어 있는 형태이기 때문에 압축 해제하는 유틸리티가 필요합니다. unzip 이 있으면 해당 파일을 압축 해제하거나 임시적으로 해제해서 내용을 확인할 수 있습니다. unzip 명령어를 사용하셨는데 unzip : command not found 위와 같은 메시지가 나오게 되면 # yum -y install u..
마운트(mount)란? mount 명령어를 이용해서 현재 마운트된 장치들을 확인할 수 있습니다 /dev 안에 마운트된 장비를 umount명령어로 제거할 수 있습니다 umount /dev/sdb1 먼저 확인해야 하는데 장치의 이름이 종종 변할 수 있으니 /dev/sd* 로 확인해야합니다 가끔 NTFS 파일 시스템이 있는데 NTFS는 Windows 에서 사용하는 파일 시스템 입니다 리눅스에서 NTFS 파일 시스템을 인식하려면 따로 패키지를 설치해 주셔야합니다 # yum -y install ntfs-3g fuse USB 를 마운트하는 순서 mkdir /media/usb - 마운트할 디렉토리 생성 mount /dev/sd* /medua/usb - USB 마운트 fdisk -l 을 사용하면 USB를 꽂았을 때 나..
리눅스에서 watch 명령어를 통해 일정 시간 주기로 반복적으로 명령어 실행 결과를 출력해 줄 수 있습니다. 시스템 모니터링 또는 반복적인 확인이 필요한 명령어를 사용할 때 유용하게 쓸 수 있는 명령어입니다. watch 명령어는 centos, ubuntu 등 대부분의 리눅스 환경에 기본적으로 설치된 procps 패키지의 일부 명령어입니다. 만약 명령어가 command not found가 나온다면 procps 패키지를 우선 설치해 주신 다음 사용하시면 됩니다. watch 명령어 예제 watch -n 5 '명령어' 5초마다 명령어를 실행 시간을 따로 안주면 Default 2초로 동작합니다. -n 0.5 이런식으로 소수점으로도 가능합니다. 시스템 모니터링 watch -d -n 1 'ps -ef | grep s..
리눅스 GREP(Global Regular Expression Print) 리눅스에서 grep은 주로 텍스트 파일에 기록되어 있는 특정 문자열을 찾는데 유용한 명령어입니다. 몇 가지 예시를 보시며 따라 하시면 어떤 명령어인지 조금 더 쉽게 아실 수 있으실 겁니다. grep grep [옵션] [문자열, 정규표현식] [대상 파일명] # grep you test.sh test.sh 안에서 'you'라는 텍스트를 찾아줍니다. egrep grep의 확장(expansion) 명령어로 여러 개의 문자열을 동시에 찾을 수 있습니다. grep에서 활용할 수 있는 정규표현식 외 추가로 메타문자를 지원합니다. # egrep '(you|hello)' test.sh you 또는(or) hello 문자를 찾아서 나타내 줍니다. ..
시스템 종료를 하는 것이 진짜 PC를 off 시키는 것이 아니라는 사실 아시나요? 아실 분들은 아시겠지만 윈도우 시스템을 완전히 종료시키는 방법은 따로 있습니다. 오늘은 윈도우11을 완전히 종료시키는 방법에 대해서 알아보겠습니다. 만약 윈도우10을 사용하시는 분이라면 아래의 글을 참고해 주세요 [IT/윈도우(Window)] - 윈도우10 시스템 완전 종료 방법 Windows11 시스템 완전 종료 방법 PC, 노트북을 완전히 종료시키는 방법에 대해서 알려드리겠습니다. 그냥 시스템 종료를 하게 되면 노트북은 최대 절전모드로 들어가게 됩니다. Sleep mode라고하며 대기상태입니다. 윈도우는 대기상태를 이용해 나중에 부팅 시 더욱 빠르게 부팅할 수 있도록 해줍니다. 윈도우11입니다. 윈도우10과는 다르게 시..
노트북 등의 PC를 종료할 때 그냥 윈도우 키를 누르고 시스템 종료를 하시지 않으신가요? 이 방법은 사실 시스템을 완전히 종료시키는 방법이 아닙니다. 윈도우10에서 시스템을 완전히 종료 시킬 수 있는 방법은 따로 있습니다. Windows10 시스템 완전 종료 방법 윈도우에서 키보드 win 키를 누른 후 '시스템 종료'를 하게 되면 PC는 최대 절전 모드로 들어가게 됩니다. 그렇기 때문에 다시 켤 때 빠르게 부팅이 될 수 있습니다. 이렇게 되면 노트북이 꺼졌다고 생각되어도 리소스를 많이 소모하고 있는 것이기 때문에 하드웨어적으로 좋지 못한 영향을 끼치게 됩니다. 그래서 윈도우를 완전히 전원 off 하는 방법을 알려드리겠습니다. 먼저 win키를 누르고 전원 버튼을 클릭하는 것 까지는 동일합니다. 그리고 다시..
Java에서 버전 정보를 나타내는데 있어서 크게 두가지로 분류됩니다. 1.7.0 이런식으로 나타내는 경우와 JAVA 7 이라고 나타내는 경우가 있습니다. 간단하게 생각해서는 둘 다 같은 버전입니다. JAVA의 버전 표기법 6 = 1.6 7 = 1.7 8 = 1.8 9 = 1.9 10 = 1.10 모두 동일합니다. 공식적인 이름은 JAVA SE 8입니다. 1.8.0은 개발자들을 위한 버전명입니다. JAVA는 언어인 동시에 플랫폼입니다. JAVA를 여러 운영체제, 플랫폼에서 사용할 수 있는 것은 JVM이라는 자바 가상 머신 덕분입니다. JVM은 자바 관련 프로그램을 실행시켜주며 메모리를 관리해 줍니다. 개발자가 .java 파일을 만들어내고 javac 자바 컴파일러가 이를 .class 파일로 컴파일 시켜줍니다..
안드로이드 폰인 갤럭시 등을 사용할 때 apk라는 확장자의 파일을 통해서 어플을 다운로드 할 수 있습니다. 하지만 안드로이드에서 보안 정책상 출처를 알 수 없는 앱 설치가 기본적으로 되지 않는데요, 오늘은 apk 파일을 인터넷에서 다운로드 받아서 사용하고자 할 때 '출처를 알 수 없는 앱 설치'를 허용하는 방법에 대해서 알아보겠습니다. 안드로이드 apk 강제 설치 방법 메시지는 기종에 따라서 다르게 뜰 수 있습니다. 저는 '유해한 파일일 수도 있음' 이라는 메시지와 함께 나오게 되지만 '보안상의 이유로 이 경로를 통한 알 수 없는 앱을 휴대전화에 설치할 수 없습니다.' 등의 메시지가 나오는 것 같습니다. 1. 생체 인식 및 보안에서 허용해 주기 출처를 알 수 없는 앱, 인터넷에서 다운로드한 파일을 열기 ..
리눅스에서 umount로 마운트 해제를 시도하려고 했지만 디바이스가 사용 중이므로 명령어가 실행되지 않는 경우가 있습니다. 이 때에는 프로세스 또는 마운트된 경로가 잡고 있는 서비스를 종료시켜 줘야 합니다. 윈도우에서 열려있는 창을 닫을 수 없는 것과 비슷합니다. fuser 명령어 사용하여 특정 파일 사용자 프로세스 모두 종료 (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) fuser 명령어를 사용할 때에는 조심해야 합니다. 내가 미처 생각하지 못한 프로세스나 cli 세션이 Drop 될 수 있습니다, 서비스에다가 하면 관련 서비스 및 데이터베이스 종료 가능성이 존재합니다. fuser..
리눅스를 가상머신에 올려놓고 사용하시거나 처음에 기본 세팅 그대로 구축하셨을 경우 사용하시다 보면 /home 용량에 비해 / 용량이 너무 부족한 경우가 있습니다. 그럴 때 /home을 줄이고 /용량을 늘리는 방법에 대해서 알아보겠습니다. 순서는 아래와 같습니다. 1. home 경로 백업 2. home 언마운트 3. home의 Logical Volume 삭제 후 재생성 4. /root 경로 확장 천천히 따라 오시면 원하는 크기로 홈과 루트를 나눌 수 있습니다. 1. home 경로 백업 작업을 하시기 전에 home 디렉토리를 백업해 줍니다. # tar -zcvf /root/home.tar.gz -C /home . 나중에 용량 할당 작업이 끝난 후에 이 파일을 이용해서 복원해 줄 겁니다. 백업이 잘 되었는지 ..
PostgreSQL Max_connections fatal : could not create semaphores : No space left on device 메시지 해결 방법에 대해서 알아보겠습니다. postgresql.conf 파일에서 MAX_Connections 파라미터 값을 증가시키면 postgresql 서비스 시작 시 오류가 발생할 수 있습니다. 이럴 때에는 세마포어라는 값을 수정해 줘야 합니다. 'fatal : could not create semaphores : No space left on device' 라는 메시지는 디바이스에 공간이 없다고 나오지만 실제로 디스크 공간이 부족하다는 이야기는 아니고 세마포어 최대 수를 초과 했을 때 알림이 오는 것 입니다. 신호 볼륨이 부족하다고 생각하시면..
리눅스 vi 편집기에서 사용할 수 있는 단축키 팁들에 대해서 알아보겠습니다. 아래의 단축키들을 익히고 나면 더 빠르고 쉽게 시간을 단축해서 작업하실 수 있습니다. Ctrl+u 현재 커서 앞쪽에 타이핑 되어 있는 전체 스트링 삭제 Ctrl+w 현재 커서 앞쪽으로 타이핑 되어 있는 단어 단위로 삭제 아래 세가지 단축키는 Delete, Home, End 키가 없을 경우 해당됩니다. Ctrl+d (delete 키와 동일) 현재 커서 뒤쪽으로 타이핑 되어 있는 1개 문자 씩 삭제 Ctrl+e (home 키와 동일) 타이핑 된 문자 맨 뒤로 이동 Ctrl+a (End 키와 동일) 타이핑 된 문자 맨 앞으로 이동