Linux 기본 사용법
실습 서버에 접속하는 방법 Telnet이나 ssh를 이용하여 원격 터미널로 접속할 수 있게 해 주는 프로그램 www.putty.org Putty sinsi.pusan.ac.kr 접속할 때 한글이 깨지는 문제 해결을 위해, 설정을 조금 바꾸는 것이 좋다. [Window]-[Appearance]에서 font를 한글 폰트로 변경 [Window]-[Translation]에서 인코딩을 UTF-8로 변경 실습 서버
파일, 디렉토리 관련 명령어(I) -a : ‘ . ’으로 시작하는 파일까지 표시하는 옵션 -l : 파일에 대한 정보까지 표시하는 옵션 인자로 디렉토리 이름을 쓰면 해당 디렉토리의 파일들만 표시 ls : 현재 디렉토리에 있는 파일들을 표시 상위 디렉토리로 이동할 때는 ‘cd ..‘ 사용자 계정 홈 디렉토리로 바로 이동할 때는 ‘cd ~’ cd [디렉토리이름] : 디렉토리 이동 명령 편집을 종료할 때는 Ctrl + C 이미 만들어진 파일을 볼 때는 cat [파일이름] cat > [파일이름] : 새 파일 생성과 편집 mkdir [디렉토리이름] : 디렉토리 생성 rmdir [디렉토리이름] : 디렉토리 삭제
파일, 디렉토리 관련 명령어(II) pwd : 현재 위치(경로)를 표시 cp [파일이름1] [파일이름2] : 파일 복사 두 번째 인자가 파일이름2일 때는 파일 이름 바꾸기 두 번째 인자가 경로일 때는 파일 이동 두 번째 인자에 있는 파일이름2와 이름이 같은 파일이 있으면 덮어쓰기가 되는데 –f 옵션은 그냥 덮어쓰고 –i 옵션은 사용자에게 물어보고 덮어쓰는 것 mv [파일이름1] [파일이름2 | 경로] : 파일 이동 -r : 일반 파일이면 그냥 지우고 경로일 경우 하위 경로와 파일을 모두 지우는 옵션 -f : 삭제 메시지를 보여주지 않고 바로 삭제하는 옵션, 읽기 전용 파일의 경우 삭제 여부를 물어보는 메시지가 뜨게 되는데 이것을 보여주지 않고 바로 지우라는 의미 -i : 삭제 여부를 사용자에게 물어보는 옵션 rm [파일이름] : 파일 삭제
파일, 디렉토리 관련 명령어(III) 파일의 권한은 ls –l을 하면 나타난다. 예) –rw-rw-r-- : 파일의 주인은 읽고 쓸 수 있고, 파일의 주인과 같은 그룹의 사용자들은 읽고 쓸 수 있고 나머지 사용자들은 읽을 수 있다는 의미… 파일의 권한은 “주인”, “주인과 같은 그룹 사용자”, “손님”의 권한을 각각 3bits 로 표현 권한을 나타내는 숫자는 세 개의 3bit짜리 숫자를 십진수로 변환하여 이어서 표현한 것. 위의 예에 나오는 권한은 664로 표현할 수 있다. 디렉토리 이름을 인자로 쓰는 경우에는 해당 디렉토리만 권한이 변경된다. 해당 디렉토리의 하위 디렉토리들과 파일들까지 모두 권한을 바꾸려면 –R 옵션을 사용한다. chmod [권한을 나타내는 숫자] [파일이름 | 디렉토리이름] : 파일의 권한 변경 이미 사용했던 명령을 다시 사용하고 싶으면 ‘↑’ 키를 클릭하여 찾는다. 파일이나 디렉토리 이름이 길 때 앞의 몇 글자를 타이핑한 후 ‘Tab’ 키를 누르면 자동 완성된다. 단, 동일한 글자를 가지는 다른 파일이나 디렉토리가 있으면 자동 완성이 되지 않는다. 몇 가지 팁
파일, 디렉토리 관련 명령어(IV) 옵션이 없으면 첫 10라인을 출력 -n : n은 숫자를 의미. 첫 n라인을 출력. -c +n : 첫 n바이트를 출력. -c –n : 마지막 n 바이트를 제외하고 출력. head [파일이름] : 파일의 첫 부분을 보여주는 명령 옵션이 없으면 마지막 10라인을 출력 -n : n은 숫자를 의미. 보고 싶은 라인 수를 표시. -c +n : 첫 n 바이트를 제외하고 출력 -c –n : 마지막 n바이트를 출력. tail [파일이름] : 파일의 마지막 부분을 보여주는 명령 diff [파일이름1] [파일이름2] : 파일 비교. 다른 부분을 출력 -l, -w, -m, -c : 각각 라인 개수, 단어 개수, 글자 개수, 바이트 개수를 출력하는 옵션 옵션을 쓰지 않으면 라인 개수, 단어 개수, 바이트 개수가 출력 wc [파일이름] : 파일의 라인 개수, 단어 개수, 글자 개수, 바이트 개수를 출력
프로세스 관련 명령어(I) -a : 현재 사용자가 실행시킨 모든 프로세스들을 보여주는 옵션 -e : 실행시킨 사용자에 관계없이 모든 프로세스들을 보여주는 옵션 u : 매우 자세한 상태 정보를 표시하는 옵션 f : 기본 정보에 몇 가지 정보를 추가하여 표시하는 옵션 x : 상태 정보를 보여주는 옵션 다 자세하게 알 필요는 없고 전체 프로세스를 확인할 때는 –ef 옵션이나 –aux 옵션을 자주 쓴다. ps : 현재 실행 중인 프로세스들을 보여주는 명령 grep은 프로세스와 관련된 명령은 아니지만 원하는 프로세스를 검색할 때 ps와 같이 쓰이는 경우가 많다. 예) ps –ef | grep mysql grep [패턴] [파일이름] : 파일에서 특정 문자열 패턴을 찾아주는 명령 & : 프로세스를 백그라운드로 동작시키는 기호. 예) vi a.txt & | : 여러 개의 프로세스를 연속적으로 실행시키는 기호 Ctrl + C : 현재 실행되고 있는 프로세스를 종료시키는 단축키 Ctrl + Z : 현재 실행되고 있는 프로세스를 백그라운드로 실행시키는 단축키 알아두어야 할 기호와 키
프로세스 관련 명령어(II) jobs : 현재 실행 중인 작업들을 출력 -l : pid까지 출력 bg : 백그라운드로 실행 중인 작업들을 출력 숫자는 작업 번호, 백그라운드로 실행 중인 작업들 중 작업 번호에 해당하는 작업을 활성화하는 명령 fg [숫자] -9 : 프로세스를 강제로 종료시키는 옵션 kill [프로세스 아이디] : 프로세스를 종료시키는 명령
계정 관련 명령어 id : 현재 사용자에 대한 정보를 출력하는 명령 who am i : 현재 사용자의 현재 접속 기록만 출력하는 명령 who(또는 who am i) : 현재 사용자의 접속 기록을 출력하는 명령 passwd : 현재 사용자의 패스워드를 변경하는 명령
기타 명령어 date : 시스템 시간을 보여주는 명령 echo : 특정 문자열을 출력하는 명령 man [명령어] : 각종 명령들의 정의와 옵션들을 출력하는 명령 shell : 커널에 접근하기 위해 제공되는 인터페이스 bash, csh, tcsh 등이 있으며 bash를 사용하는 경우 .bashrc에서 각종 환경 변수 설정을 할 수 있다. 환경 변수 설정이 끝난 후 source .bashrc 라는 명령을 실행시켜야 변경된 설정이 적용된다. chsh : 쉘을 변경하는 명령 -a : 이 옵션을 안 쓰면 하위 디렉토리에 대한 정보만 보여주고 이 옵션을 사용하면 파일에 대한 정보까지 보여준다. du : 디스크 사용 공간에 대한 정보를 보여주는 명령 df : 디스크의 남은 공간에 대한 정보를 보여주는 명령