본문 바로가기

Linux

[리눅스 명령어] finger - 사용자 정보 출력 ※ 요약 리눅스 명령어 finger는 사용자 계정 정보와 최근 로그인 정보, 이메일, 예약 작업 정보 등을 볼 수 있는 명령어이다. 필자는 CentOS 6.x를 사용중인데 finger 명령어가 설치되어 있지 않아 따로 설치해주었다. 필자처럼 finger가 설치 안된 독자는 아래 화면을 보고 설치 바란다. ※ 경로 /usr/bin/finger ※ 사용법finger [옵션]... [사용자명 ...] [user@host ...] ※ 옵션 옵션 Long옵션 설명 -l 멀티라인 형식으로 사용자 홈 디렉토리, 집 전화번호, 로그인 셸, 메일 상태 등과 함께 -s 옵션으로 보이는 정보를 출력 -s 사용자의 로그인 이름, 실제 이름, 터미널 이름, 상태, idle 시간, 로그인 시간, 사무실 위치, 사무실 전화를 출력.. 더보기
[리눅스 명령어] users - 시스템에 로그인한 사용자 출력 ※ 요약 리눅스 명령어 users는 시스템에 로그인한 사용자를 출력하는 명령어이다. 옵션도 없는 단순한 명령어이며, 더 자세한 정보는 w명령어나 who 명령어를 통해 확인하는게 낫다. ※ 경로 /usr/bin/users ※ 사용법users [옵션] ※ 옵션 옵션 Long옵션 설명 --help users 명령어 사용법 출력 --version users 명령어 버전 정보 출력 ※ 사용예필자는 혼자 사용하는 시스템이라 root계정 밖에 로그인되어 있지 않다. 더보기
[리눅스 명령어] id - 사용자의 UID, GID 번호 확인 ※ 요약 리눅스 명령어 id는 현재 사용자의 실제 id와 유효 사용자 id, 그룹 id를 출력하며 내부 bash 변수인 $UID, $EUID, $GROUPS와 짝을 이룬다. "id -un"을 치면 whoami 명령어와 같은 효과를 낸다. ※ 경로 /usr/bin/id ※ 사용법id [옵션]... [사용자명] ※ 옵션 옵션 Long옵션 설명 -g --group 사용자의 그룹 id만 출력 -G --groups 추가 그룹의 id만 출력 -u --user 사용자의 UID를 출력 -n --name -u, -g, -G 옵션과 함께 사용하며 해당하는 id의 이름만 출력 -r --real -u, -g, -G 옵션과 함께 사용하며 해당하는 실제 id를 출력 --help id 명령어 사용법 출력 --version id 명.. 더보기
[리눅스 명령어] whoami - 현재 로그인한 사용자 ID 출력 ※ 요약 리눅스 명령어 whoami는 현재 로그인한 사용자 ID를 출력하는 명령어로써, id명령어에 -un 옵션을 준 것과 같은 효과를 낸다. ※ 경로 /usr/bin/whoami ※ 사용법whoami [옵션]... ※ 옵션 옵션 Long옵션 설명 --help whoami 명령어 사용법 출력 --version whoami 명령어 버전 정보 출력 ※ 사용예사용법은 간단하다. 아래는 whoami와 id -un이 같다는 걸 보여주는 예다. 더보기
[리눅스 명령어] who - 호스트에 로그인한 사용자 정보 출력 ※ 요약 리눅스 명령어 who는 호스트에 로그인한 사용자의 정보를 출력하는 명령어이다. who명령어는 현재 접속한 사용자 정보를 /var/run/utmp 파일에서 가져오며, 이 utmp파일은 사용자가 원격으로 서버에 호그인할 때 사용자 정보를 저장하고, 사용자가 원격 호스트에서 로그아웃할 때 저장되어 있는 정보를 제거한다.who명령어는 현재 서버에 접속해 있는 사용자의 로그인명, 터미널, 로그인 시간, 원격 호스트 또는 X디스플레이를 출력한다 ※ 경로/usr/bin/who ※ 사용법who [옵션]... [파일\ 인수1 인수2] ※ 옵션 옵션 Long옵션 설명 -a --all -b -d --loing -p -r -t -T -u 옵션과 동일 -b --boot 마지막 시스템 부팅 시간을 출력 -d --dead.. 더보기
[리눅스 명령어] w - 로그인한 사용자의 정보를 출력 ※ 요약 리눅스 명령어 w는 해당 시스템에 로그인한 사용자의 정보를 출력하는 명령어이다. 로그인 정보는 /var/run/utmp 파일에서 가져온다. w명령어는 who명령어와는 달리 WHAT 필드가 있어 로그인한 사용자의 작업 내용을 출력한다. ※ 경로/usr/bin/w ※ 사용법w [옵션]... [사용자] ※ 옵션 옵션 Long옵션 설명 -f 원격에서 접속한 호스트명은 출력하지 않음 -h 각 필드에 대한 헤더 정보를 출력하지 않음 -s 간략한 형식으로 정보를 출력 -V 버전 정보를 출력 ※ 사용예w명령어만 실행한 화면과 옵션 s, V를 각각 실행한 화면이다. 더보기
[리눅스 명령어] dirname - 디렉토리 이름 출력 ※ 요약 리눅스 명령어 dirname은 전체 경로의 파일 이름에서 디렉토리가 아닌 접미사를 제거하는 명령어이다. ※ 경로/usr/bin/dirname ※ 사용법dirname 파일명 ※ 옵션 옵션 Long옵션 설명 --help dirname 명령어 사용법 출력 --version dirname 명령어의 버전 정보 출력 ※ 사용예아래 사용예는 상대 경로와 절대 경로에 따른 dirname 명령어의 차이점을 출력하는 예제다. 전체 절대 경로를 지정하지 않으면 현재 디렉토리 표시인 점(.)을 출력한다. 더보기
[리눅스 명령어] shutdown - 리눅스 시스템 종료 ※ 요약 리눅스 명령어 shutdown은 halt, init과 함께 시스템을 종료하는 명령어 중 하나이다. shutdown은 현재 접속 중인 모든 사용자에게 시스템이 종료된다는 메시지를 보낼 수 있다. ※ 경로/sbin/shutdown ※ 사용법shutdown [옵션]... 시간 [경고 메시지] ※ 옵션 옵션 Long옵션 설명 -r 시스템 종료 후 재부팅 -h shutdown이 완료된후 시스템을 종료 -c 진행 중인 shutdown 명령어를 취소 -k 경고 메시지만 출력하고, 실제로는 shutdown 하지 않음 -f 재부팅할 때 fsck명령을 건너뛰고 재부팅을 빠르게 진행 -n init을 호출하지 않고 shutdown을 진행 -t sec 지정한 시간에 시스템을 재시동 ( now는 바로 종료, +m는 지정.. 더보기
[리눅스 명령어] halt - 리눅스 시스템 종료 ※ 요약 리눅스 명령어 halt는 시스템을 종료할때 사용하는 명령어이다. 필자는 VMware에 CentOS를 설치할때 텍스트 모드로 설치해서 halt 명령어를 이용하여 리눅스 시스템을 종료한다. 리눅스에서 시스템 종료 명령어는 halt 이외에 shutdown, init 등이 있다. ※ 경로/sbin/halt ※ 사용법halt [옵션]... ※ 옵션 옵션 Long옵션 설명 -d wtmp 파일에 로그를 남기지 않음 -f 강제로 종료 -n 종료할 때 싱크를 하지 않음 -w 실제로 시스템을 종료하지 않고, /var/log/wtmp 파일에 로그만 남김 --help halt 명령어 사용법 출력 --version halt 명령어의 버전 정보 출력 ※ 사용예아래와 같이 콘솔에 halt를 입력하면 시스템이 종료된다. 더보기
[리눅스] 배포판 종류별 타임라인 ※ 요약 리눅스를 사용하다 보면 현재 배포되고 있는 배포판의 종류와 출현 시기 등이 궁금할 때가 있다. 필자도 궁금하여 찾아봤는데 위키피디아에 정리된 게 있어 소개하고자 포스팅한다. ※ 사이트https://en.wikipedia.org/wiki/File:Linux_Distribution_Timeline.svg ※ 설명사이트에 방문하면 아래와 같이 타임라인 형식으로 리눅스 배포판 종류와 출현 시기를 확인할 수 있다. 정보가 많아서 좋기는 하지만 보기가 불편하다. 더보기
[리눅스 명령어] pwd - 현재 경로 보기 ※ 요약 리눅스 명령어 pwd는 print working directory의 약자로써, 현재 작업 중인 디렉토리의 절대 경로를 출력하는 명령어이다. 은근 자주 사용되는 명령어이며, 내 위치가 궁금할때 사용한다. ※ 경로/usr/bin/pwd ※ 사용법pwd [옵션]... ※ 옵션 옵션 Long옵션 설명 -L --logical 심볼릭을 포함하더라도 pwd 환경 변수를 사용 -P --physical 심볼릭 정보를 무시하고 출력 --help pwd 명령어 사용법 출력 --version pwd 명령어의 버전 정보 출력 ※ 사용예딱히 설명이 필요없는 명령어이다. 내가 작업 중인 위치가 궁금하여 pwd를 쳤고, 그 결과 /usr/bin이라는 위치가 출력되었다. 고로 내가 작업 중인 위치는 /usr/bin이다. 더보기
[리눅스 명령어] rmdir - 빈 디렉토리 삭제 ※ 요약 리눅스 명령어 rmdir은 빈 디렉토리를 삭제할때 사용하는 명령어이다. 삭제하려는 디렉토리가 비어있지 않을 경우에는 삭제를 할 수 없고 rm 명령어가 있기 때문에 자주 사용하는 명령어는 아니다. ※ 경로/bin/rmdir ※ 사용법rmdir [옵션]... 디렉토리명... ※ 옵션 옵션 Long옵션 설명 --ignore-fail-on-non-empty 디렉토리가 비어 있지 않은 경우 삭제할 수 없다는 메시지를 출력 안 함 -p --parents 상위 경로도 삭제 -v --verbose 지워지는 디렉토리의 정보를 출력 --help rmdir 명령어 사용법 출력 --version rmdir 명령어의 버전 정보 출력 ※ 사용예rmdir -v emptyDir1 notEmptyDir1: emptyDir1,.. 더보기
[Linux] vi, vim 명령어 및 이동 단축키 모음 ※ 요약 필자가 에버노트에 정리해두었던 vi, vim 명령어 및 이동 단축키 파일이다. 아래 단축키 이미지들을 출력해서 벽이나 파티션에 붙여두고 필요할 때마다 참고하면 도움이 될 것이다. 참고로 Visual Studio 단축키도 정리해두었다. ※ 단축키 더보기
[리눅스 명령어] rm - 파일 혹은 디렉토리 삭제 ※ 요약 리눅스 명령어 rm은 파일이나 디렉토리를 삭제할 때 사용하는 명령어이며 -r 옵션을 붙이지 않으면 디렉토리는 삭제하지 못 한다. 참고로 리눅스처럼 유닉스형 운영체제는 삭제를 취소할 수 있는 명령어가 없다. 고로 rm 명령어로 삭제가 시작되면 되찾을 수 없다. ※ 경로 /bin/rm ※ 사용법 rm [옵션]... 파일명... rm [옵션]... 디렉토리명... ※ 옵션 옵션 Long 옵션 설명 -f --force 강제로 파일이나 디렉토리를 삭제하고, 삭제할 대상이 없을 경우 메시지를 출력하지 않음 -i --interactive 매번 삭제할 때마다 사용자에게 질문함 -I 셋 이상의 파일을 삭제하거나 하위의 파일이나 디렉토리가 있을 경우 질문함 --interactive[=WHEN] 상호대화형 모드로 .. 더보기
[리눅스 명령어] mv - 파일/디렉토리를 이동하거나 이름 변경 ※ 요약 리눅스 명령어 mv는 파일이나 디렉토리를 이동하거나 이름을 변경할 때 사용하는 명령어로써, cp 명령어와 매우 비슷하다. mv 명령어를 사용할때 원본과 대상의 이름이 다르면 이름이 변경되고, 이동할 파일이 여러 개면 이동 모드로만 동작한다. ※ 경로/bin/mv ※ 사용법 mv [옵션]... 원본 대상 mv [옵션]... 원본... 디렉토리 mv [옵션]... 디렉토리 디렉토리 ※ 옵션 옵션 Long 옵션 설명 --backup[=CONTROL] 대상 파일이 존재하면 백업 파일을 만듦 -b --backup과 비슷하게 백업 파일을 생성 -f --force 사용자에게 묻지 않고 파일을 강제로 덮어씀 -i --interactive 존재하는 파일을 덮어 쓸 경우 확인 -n --no-clobber 존재하는.. 더보기
[리눅스 명령어] cp - 파일 및 디렉토리 복사 ※ 요약 리눅스 명령어 cp는 copy의 약어로써 파일이나 디렉토리를 복사할 때 사용하는 명령어이다. cp는 복사할때 같은 이름의 대상 파일이 있는 경우 사용자에게 묻지 않고 덮어씌워버리는데, 이 같은 실수를 방지하고자 Alias 설정을 "cp='cp -i'"로 해두고 있다. ※ 경로 /bin/cp ※ 사용법 사용법을 보니 어려워 보이지만, 막상 사용하면 정말 쉽다. 밑에 사용예에서 좀 더 설명하겠다. 참고로 []안에 있는 값은 생략 가능하다는 의미이며 ...의 의미는 가변적이라는 뜻이다. 고로 [옵션]...은 옵션을 생략할 수도 있고 옵션이 한 개 혹은 여러개 올 수 있다는 의미이다. cp [옵션]... [-T] 원본 대상 cp [옵션]... 원본... 디렉토리 cp [옵션]... -t 디렉토리 원본... 더보기
[리눅스 명령어] mkdir - 디렉토리 생성 ※ 요약 mkdir 명령어는 make directory의 약자로써 디렉토리를 생성할 때 사용하는 명령어다. 자주 사용하지만 옵션의 종류도 별로 없고 매우 쉬운 명령어 중에 하나이다. ※ 경로 /bin/mkdir ※ 사용법 mkdir [옵션]... 디렉토리 이름... [옵션] : 생략 가능 디렉토리 이름 : 생성할 디렉토리명, ...은 가변인자를 뜻하는데, 생성할 디렉토리들을 나열하면 나열한 개수 만큼 생성 ※ 옵션 옵션 Long 옵션 설명 -m --mode=MODE 디렉토리를 생성할때 권한을 설정, 디폴트는 755 -p --parents 상위 경로도 함께 생성 -v --verbose 디렉토리를 생성 후, 생성된 디렉토리에 대해 메시지 출력 --help mkdir의 사용법을 출력 --version mkdi.. 더보기
[리눅스 명령어] ls - 파일 및 디렉토리 내 목록보기 ※ 요약 ls 명령어는 "list segments"의 약자로써 가장 많이 사용하는 리눅스 명령어 중에 하나이다. ls는 보통 지정한 디렉토리나 파일의 정보를 출력하는데 사용한다.옵션은 아래와 같이 상당히 많지만 자주 쓰이는 옵션은 그다지 많지 않다. ※ 경로 /bin/ls ※ 사용법 ls [옵션]... [파일]... [옵션] : 생략 가능하고 여러개 사용가능[파일] : 생략 가능하고 여러개 지정가능 ※ 옵션옵션은 보통 (-)와 함께 입력하여 사용한다.그 밖에 LONG 옵션을 제공하는데, LONG 옵션은 보통 (--) 기호를 선행하여 사용한다. 옵션 Long 옵션 설명 -a --all .을 포함하여 경로 안의 모든 내용을 출력 -A --almost-all .과 ..을 제외한 모든 내용을 출력 -b --es.. 더보기
[리눅스] Signals 정리 ※요약 Signal은 Unix/Linux에서 커널이나 프로세스가 다른 프로세스에게 비동기적인 사건을 알려주거나 시간을 동기화 시키기 위해 사용한다. signal을 받은 프로세스는 보통 3가지 작업을 할 수 있다. 프로세스를 종료하거나 signal 무시, 받은 signal에 따른 적절한 행동이 그 3가지이다. 필자가 리눅스에서 C로 개발하면 처음 접한 signal은 SIGSEGV(11)이다. SIGSEGV은 잘못된 메모리 관리 때문에 생기는 신호로써, sprintf함수를 이용하여 서식 문자를 만들다가 int형을 %s로 서식을 지정하여 발생하였었다. ※특징 아래는 signal 리스트이다. Signal Name Number Description SIGHUP 1 Hangup (POSIX) SIGINT 2 Ter.. 더보기