티스토리 뷰

Network/Linux

리눅스 명령어 모음

NavyGuy 2016. 10. 4. 10:56

리눅스 명령어 모음


설치

      • wget [URL] : URL에 있는 파일을 다운로드 받는다.
      • rpm

            • rpm -Uvh [rpm] : 패키지를 설치하거나, 업그레이드 한다.
            • rpm -qi [rpm] : 패키지가 설치 되어있는지 확인한다.
            • rpm -e [rpm] : 패키지를 삭제 한다.
      • yum(의존성이 있는 패키지 그룹 단위)

            • yum -y install [패키지] : 패키지를 설치한다.
            • yum -y erase [패키지] : 패키지를 삭제한다.
            • yum list : 설치 가능한 패키지 목록.
            • yum list updates : 업데이트가 가능한 패키지 목록.
            • yum list installed : 설치된 패키지 목록.
            • yum update [패키지] : 패키지명이 없으면 전체 업데이트 있으면 해당 패키지만 업데이트
      • make

            • configure : 컴파일 옵션이 되는 설정파일을 만든다.
            • make : 소스코드를 컴파일 해서 binary 파일을 만든다.
            • make install : 만들어진 binary 파일을 지정된 경로로 이동 시킨다.
            • make uninstall : 설치된 binary 파일을 삭제 한다.

디렉토리

      • pwd : 현재 위치한 디렉토의 절대경로를 출력한다.
      • cd

            • cd [디렉토리] : 디렉토리를 이동할 때에 사용한다.
            • cd .. : 상위 디렉토리로 이동한다.
            • cd ~ : 자신의 홈 디렉토리로 이동한다.
            • cd ~[사용자명] : 특정 사용자의 홈 디렉토리로 이동한다.
      • ls

            • ls : 파일의 목록을 간단히 출력한다.
            • ls -al : 숨겨진 파일을 포함해 자세히 출력한다.
      • mkdir [디렉토리] : 디렉토리를 생성한다.
      • rmdir -p [디렉토리] : 디렉토리를 삭제한다.

파일

      • touch [파일명] : 파일을 만든다.
      • cp [원본] [사본] : 파일을 복사한다.
      • mv [원본] [목적지] : 파일을 이동한다. 이것을 응용해 파일명도 바꿀수 있다.
      • rm

            • rm [파일] : 파일을 삭제한다.
            • rm -rf [파일] : 삭제 동의를 묻지 않고, 파일은 그냥 지우고 디렉리면 하위경로 파일까지 모두 지운다.
      • cat [파일] : 파일의 내용을 출력한다.
      • | : 명령어의 출력결과를 다른 명령어의 입력으로 전환한다. 파이프라고 부른다.
      • less [파일] : 파일의 내용을 한줄씩 출력하고, 위 아래로 이동할수 있다. 출력이 많을때 파이프로 연결해서 많이 사용한다. ex) cat a.log | less
      • find

            • find / -name *linux* : linux가 파일명에 포함된 모든 파일을 찾는다.
            • find / -user linux : 소유자가 linux인 모든 파일을 찾는다.
            • find / -perm 755 : 퍼미션이 755인 모든 파일을 찾는다.
      • grep : 파일 또는 입력값내에서 특정 패턴을 검색한다. 파이프와 조합해서 출력에서 검색하고 싶을때 사용한다. ex) yum list | grep jdk, ps -ef | grep java
      • [명령어] > [파일] : 명령어의 출력을 파일에 저장한다. 덮어쓴다.
      • [명령어] >> [파일] : 명령어의 출력을 파일에 저장한다. 추가한다.
      • [명령어] < [파일] : 파일에서 표준 입력을 받는다.
      • chmod [퍼미션] [파일] : 소유자, 그룹, 다른 사용자가 가지는 퍼미션(읽기, 쓰기, 실행)을 설정한다. 퍼미션은 읽기4, 쓰기2, 실행1을 조합해서 표시한다.

            • chmod 750 [파일] : 소유자 읽고 쓰고 실행 가능, 그룹 읽고 실행 가능
            • chmod 4xxx [파일] : 실행될때 root권한으로 실행된다.
            • chmod 2xxx [파일] [그룹] : 파일에 설정된 그룹명으로 실행된다.
            • chmod 1xxx [디렉토리] : 해당 디렉토리에 누구나 쓰기는 가능하지만, 자신이 만든 파일에 대해서는 자신과 root만이 수정과 삭제가 가능하다.
      • chown [소유자:그룹] [파일] : 파일 소유자와 사용자 그룹을 설정한다.
      • chgrp [그룹] [파일] : 파일 사용자 그룹을 설정한다.
      • chattr +i [파일] : 파일을 수정, 복사, 삭제 할 수 없게 한다.
      • tar

            • tar -cvzf [파일] [경로] : tar로 파일을 압축한다.
            • tar -xvzf [파일] [경로] : tar로 파일을 압축 해제한다.

파일  시스템

      • fdisk -l : 현재 시스템의 파티션 목록과 파티션이 생성안된 disk를 보여준다.
      • fdisk [disk] : disk에 파티션을 생성한다.
      • badblocks -v  [disk] : disk의 배드블록을 체크한다.
      • mkfs -V -t ext4 [장치] : 파일 시스템을 생성한다.
      • mount

            • mount : 현재 마운트된 목록을 보여준다.
            • mount [장치] [디렉토리] : 장치를 디렉토리에 마운트 시킨다.
            • vi /etc/fstab : /etc/fstab을 수정해야 재부팅이 되어도 마운트 설정이 유지된다.
      • umount [디렉토리] : 마운트를 해제한다.
      • df -h : 디스크의 남은 용량을 본다.
      • du

            • du -sh [디렉토리] : 디렉토리의 전체 사용량을 보여준다.
            • du -h [디렉토리] : 모든 하위 디렉토리들의 사용량과 합계를 보여준다.

사용자

      • useradd [사용자명] : 사용자를 생성한다.
      • userdel [사용자명] : 사용자를 제거한다.
      • passwd [사용자명] : 사용자의 비밀번호를 설정한다.
      • groupadd [그룹명] : 그룹을 생성한다.
      • groupdel [그룹명] : 그룹을 삭제한다.
      • id [사용자명] : 사용자의 uid, gid, group을 보여준다.
      • usermod

            • usermod -d [원본홈] -m [변경홈] : 홈디렉토리를 변경하고 파일을 이동한다.
            • usermod -L [사용자명] : 계정을 잠궈서 로그인이 불가능해 진다.
            • usermod -U [사용자명] : 잠긴 계정을 푼다.
      • su – [사용자명] : 다른 사용자의 권한으로 shell을 실행해서, 사용자 전환을 한다.

시간

      • clock

            • clock -r : CMOS 시간을 출력한다.
            • clock -w : 리눅스 시스템 시간으로 CMOS 시간 설정한다.
            • clock -s : CMOS 시간으로 리눅스 시스템 시간 설정한다.
      • date

            • date : 현재 시스템 시간을 출력한다.
            • date [MMDDhhmmYY] : 현재 시스템 시간을 변경한다.

프로세스

      • ps -ef : 현재 실행중인 프로세스의 목록을 보여준다.
      • pgrep -fl [단어] : 해당 단어를 이름으로 가지거나 인자로 받는 프로세스 목록을 보여준다.

            • ex) $pgrep -fl chef 

              967 /opt/chef/embedded/bin/ruby /usr/bin/chef-client -d -j /etc/chef/first-boot.json
                    970 chef-client worker: ppid=967;start=09:41:34;

               

                   1075 /opt/chef/embedded/bin/ruby /usr/bin/chef-client

                   1086 chef-client worker: ppid=1075;start=09:41:37;

      • pkill -f [단어] : 해당 단어를 이름으로 가지거나 인자로 받는 프로세스를 모두 종료 시킨다.
      • pstree : 프로세스 정보를 트리형태로 보여준다.
      • kill

            • kill [PID] : 프로세스를 종료 시킨다.
            • kill -9 [PID] : 프로세스를 강제로 종료 시킨다.
      • top : 프로세스의 CPU, MEMORY 사용량등을 실시간으로 모니터링 해준다.

데몬

      • chkconfig

            • chkconfig –list : 런레벨에 따라 자동으로 실행되는 데몬을 보여준다.
            • chkconfig –add [데몬] : 데몬을 추가한다.
            • chkconfig –del [데몬] : 데몬을 삭제한다.
            • chkconfig –level [런레벨] [데몬] on : 데몬의 런 레벨을 활성화 시킨다.
            • chkconfig –level [런레벨] [데몬] off : 데몬의 런 레벨을 비활성화 시킨다.
      • service

            • service [데몬] status : 데몬 상태를 보여준다.
            • service [데몬] start : 데몬을 시작한다.
            • service [데몬] stop : 데몬을 정지한다.
            • service [데몬] restart : 데몬을 재시작한다.

시스템

      • crontab

            • crontab -e : crontab 설정을 연다.
            • 형식 : 분(0~59) 시간(0~23) 일(1~31) 월(1~12) 요일(0~6) 명령
            • 01 * * * * [명령] : 매시간 1분에 명령 실행한다.
            • 02 4 * * * [명령] : 매일 4시 2분에 명령을 실행한다.
            • 22 4 * * 0 [명령] : 매주 월요일 1일 4시 22분에 명령을 실행한다.
            • */10 * * * * [명령] : 10분마다 명령을 실행한다.
      • uname -a : 커널 버전을 보여준다.
      • poweroff : 종료시킨다.
      • reboot : 재부팅 시킨다.

네트워크

      • ping [호스트] : 다른 시스템의 네트워크가 현재 동작중인지 확인한다.
      • ifconfig

            • ifconfig : 현재 네트워크 인터페이스의 정보를 보여준다.
            • ifconfig [인터페이스] down : 인터페이스를 중지한다.
            • ifconfig [인터페이스] up : 인터페이스를 작동 시킨다.
            • curl ifconfig.me : public ip를 보여준다.
      • nslookup [도메인] : 도메인 정보를 보여준다.
      • netstat

            • netstat -anp  : 네트워크 연결, 라우팅 테이블, 네트워크 장치의 통계정보등 네트워크에 관련된 여러 정보를 보여준다.
            • netstat -anpl : LISTENING 중인 정보만 보여준다.
      • hostname

            • hostname : 현재 시스템의 호스트네임을 보여준다.
            • hostname [변경할네임] : 호스트네임을 변경한다.
            • vi /etc/sysconfig/network : HOSTNAME 항목을 변경해야 리부팅 후에도 변경된 호스트 네임이 유지된다.
      • iptables

            • iptables -A INPUT -s [발신지] –sport [발신지 포트] -d [목적지] –dport [목적지 포트] – j [정책] : 방화벽 정책을 추가한다.
            • iptables -D INPUT [필터링 번호] : 방화벽 정책을 삭제한다.
            • iptables-save : 설정한 방화벽을 저장해서, 재부팅시에도 적용되게 한다.
            • iptables -A INPUT -s 1.1.1.1 -p tcp –dport 8080 -j ACCEPT : 1.1.1.1에서 8080 포트로 tcp 요청하는것을 허락한다.
            • iptables -A INPUT -p tcp –dport 8080 -j DROP : 8080포트로 tcp 요청하는것을 막는다.
            • iptables -A INPUT -p rcp –dport 1:65535 -j DROP : 서비스 이외의 서비스포트 모두 거부한다.
      • nmap [ip] : 현재 오픈되어 있는 포트를 보여준다.


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함
Total
Today
Yesterday