it-swarm-ko.tech

유닉스 관리자가 없이는 살 수없는 도구

Unix 또는 Unix와 유사한 서버를 관리 한 후 어떤 도구 (가급적 명령 줄) 없이는 살 수 없다고 생각하십니까?

33
John T

GNU 화면 -많은 수의 시스템을 관리하고 12 개의 터미널 창을 열고 싶지 않을 때 필수적입니다.

51
Murali Suriar

일부는 내가 없이는 살 수 없다는 것을 알고 있습니다.

  • tee-STDOUT (표준 출력) 및 파일에 동시에 쓸 수 있습니다. 정보를보고 나중에 기록하기에 좋습니다.

  • top-UNIX의 작업 관리자는 시스템에 대한 훌륭한 개요를 제공합니다.

  • tail -f-파일이 커짐에 따라 추가 된 데이터를 볼 수 있으며 서버의 로그 파일을 모니터링하는 데 적합합니다.

  • grep-전역 정규식 인쇄, 시스템에서 파일의 데이터를 검색하는 데 적합합니다.

  • df-현재 파일 시스템의 디스크 사용량을보고합니다.

  • du-특정 파일/디렉토리의 디스크 사용량을보고합니다.

  • 덜-매뉴얼 페이지를 보는 데 필요합니다! 또한 쉽게 찾을 수있는 방식으로 명령 출력을 보는 데 유용합니다.

  • vim/Emacs/nano/pico/ed-텍스트 편집기가 무엇이든 상관없이 필요한 이유를 설명합니다.

34
John T

lsof 어떤 프로세스가 파일 또는 디렉토리를 사용하고 있는지 확인 (장치가 마운트 해제되는 것을 막는 원인을 파악할 때 유용함)

netstat 어떤 프로세스가 네트워크 연결을 사용하고 있는지 확인합니다 (특히 어떤 데몬이 특정 포트에 연결되어 있는지 알아 내려고 할 때 유용함).

26
erichui

모든 기본 도구를 배우고 Perl을 배우십시오.

Perl은 텍스트 조작에 이상적이며 un * x 연산자는 텍스트 파일, 파이프, 입력 및 출력에 있기 때문에 Perl은 매우 적합합니다.

추가 된 보너스는 Perl이 크로스 플랫폼이며 Windows 상자에서 작업을 수행해야하는 경우 이미 알고있는 쉽게 설치할 수있는 언어 (서버에 Perl 디렉토리를 놓기 만하면 됨)가 있다는 것입니다.

그리고 그 생각의 기차에서 Cygwin도 얻으십시오. 유닉스 관리자이고 ls, rm, grep, sed, tail 등이있는 Windows 상자 (데스크톱 포함)에서 작업해야하는 경우 OS를 전환 할 때 많은 시간을 절약 할 수 있습니다.

19
Mark Nold
  • sed
  • awk

현대 시스템 스크립팅의 잊혀진 할아버지. 저는 Perl이 Bash 스크립팅, Python, Ruby 및 [여기에 가장 좋아하는 스크립팅 언어 삽입]과 함께 대부분의 사랑을 받고 있다는 것을 알고 있으며 오해하지 마십시오. 저는 Perl을 좋아합니다. 나는 거의 매일 그것을 사용합니다.

그러나 sed와 awk를 잊거나 간과하거나 무시해서는 안됩니다. 대부분의 경우 sed 및 awk가 작업에 가장 적합한 도구입니다. 빠른 예는 sed를 사용한 명령 줄 필터링과 awk를 사용한 빠르고 더티 로그 처리입니다. 둘 다 Perl에서 수행 할 수 있지만 더 많은 작업과 개발 시간이 필요합니다.

18

rsync, 특히 ssh와 함께 사용합니다. 호스트에서 호스트로 파일을 간단하고 효율적으로 복사 할 수 있습니다. ssh와 rsync없이 어떻게 대처 했습니까? :-)

13
dr-jan

Netcat.

  • TCP 서비스가 수신 중인지 테스트합니다.
  • SMTP와 같은 일반 텍스트 프로토콜에 대해 트랜잭션을 수행합니다.
  • 시스템간에 빠르고 안전하지 않은 데이터 전송.
  • Telnet 클라이언트 에뮬레이션.

그들이 말하는 것처럼 네트워크 스위스 군용 칼.

12
Dan Carley

그것을 직시하십시오-조만간 네트워크도 다룰 것입니다. mtr , tcpdumptshark 는 무슨 일이 일어나고 있는지 보는 데 정말 유용합니다.

12
pQd

이미 나열된 대부분의 도구를 사용하지만 아직 아무도 다루지 않은 도구가 있습니다.

Puppet -시스템 관리 작업 자동화를위한 시스템

9
Shaun Hess

빠른 스크립트, 자동화 등의 경우 :

  • bash
  • Perl

* NIX 서버에 연결하려면 :

  • SSH 열기 (Linux 클라이언트)
  • PuTTY (Windows 클라이언트)
9
Colin

아직 언급하지 않은 몇 가지 편리한 도구 :

  • dstat --nocolor (cpu-, disk-, net-usage 개요)
  • iftop (네트워크 트래픽에 대한 멋진 동적 개요)
  • ccze (멋진 로그 파일 색상 지정)
  • ssh 터널 (가끔 유용 할 수 있음, 매뉴얼 참조, -R)
  • expect (대화 형, 수다스러운 대화 형 인터페이스 자동화, 꼬집음에 빠진 경우 Nice)
6
asjo

스크립팅 :

6
Pablo Santa Cruz

대부분의 표준 답변은 다른 답변에 포함되어 있으므로 비표준 답변을 선택하겠습니다.

  • htop — 프로세스 관리에 적합합니다.
  • pinfo — 정보 및 매뉴얼 페이지를위한 브라우저와 같은 lynx.
6
vartec

ClusterSSH

ClusterSSH는 단일 그래픽 콘솔 창을 통해 여러 xterm 창을 제어하여 명령이 ssh 연결을 통해 여러 서버에서 대화식으로 실행될 수 있도록합니다.

5
Tom Feiner

ssh, Vim, htop, su, Python, ls, cd, screen, du, tar :)

4
maciek

vmstat 1

시스템 동작에 대한 훌륭한 개요를 제공합니다.

4
Cawflands

pv : 리디렉션 할 수있는 긴 작업의 진행률을 표시합니다. http://www.ivarch.com/programs/pv.shtml

네트워크를 통해 원시 블록 장치를 복사/압축하는 것과 같이 오래 걸리는 것을 모니터링하는 것이 유용합니다 (파일 시스템 설정을 조정하는 것과 같은 주요 작업을 다루기 전에 8Gb 넷북의 편집증 백업을 수행하는 방법입니다).

또한 : 위에서 언급 한대로 ssh, rsync, screen, htop 및 netcat에 대해 두 번째 투표를 할 것입니다. 모두 pv보다 중요하지만 pv는 아직 언급되지 않았습니다. 사실 pv는 종종 netcat으로 또는 netcat으로 물건을 연결할 때 유용한 추가 기능입니다.

4
David Spillett

타르 파이프!

tar의 출력을 다른 유틸리티로 파이핑하거나, 같은 상자에서 실행되는 tar 또는 SSH를 통해 실행되는 tar는 한 곳에서 다른 곳으로 파일을 이동하는 데 가장 좋아하는 구식 Unix 이동입니다.

또한 한 폴더를 다른 폴더로 복사하고 원본 및 대상 디렉터리의 모든 파일로 끝나는 Windows 스타일 옵션을 제공합니다.

3
Jason Luther

이전에 언급되지 않은 일부 :

  • 머리/꼬리
  • 차이
  • pstree
  • tar
  • gzip/bzip
  • 손목 시계
3
CK.

이러한 도구의 대부분은 Bash "프로그래밍 가능한 완성"을 사용하여 훨씬 더 강력 해졌습니다. 따라서 명령 줄 옵션과 같은 항목을 탭으로 완성하거나 "apt-get install"을 사용하여 패키지 이름을 말할 수 있습니다. 또한 관련 파일에 대해 탭 작성 항목을 제한합니다. 예를 들어 "unzip"은 지원되는 아카이브 파일 만 완료합니다.

그것은 정말 멍청이입니다-시도한 적이 없다면 아마도 .bashrc를 조작해야 할 것입니다.

if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
 fi

확실히 이것은 Ubuntu와 Debian에서 사실입니다. 일부 Linux 배포판에서 패키지를 가져와야 할 수 있습니다.

3
Tom Newton

iotop은 디스크에 대한 I/O 액세스를 모니터링하는 최고의 프로그램입니다.

3
Emilio

Sudo.

심각하게 생각, tail -f는 유용합니다.

3
Sophie Alpert

몇 가지 추가 답변은 이 유사한 질문 에서 찾을 수 있습니다.

2
Vagnerr

screen은 특히 좋은 .screenrc 파일과 함께 필수입니다. 내가있는 창을 시각적으로 표시하도록 구성했으며 Ctrl + 화살표로 창 사이를 이동할 수 있습니다. 단일 ssh 세션과 여러 셸의 경우 생명의 은인입니다.

2
Nasko

내가 언급하고 싶었던 몇 가지를 간과했습니다.

  • vim -d 분할 화면 콘솔 diff로 파일의 차이점을 매우 쉽게 볼 수 있습니다.
  • pdsh를 사용하면 직렬 또는 병렬로 원하는만큼 많은 시스템에서 명령을 쉽게 실행할 수 있습니다 (저는 클러스터 관리자입니다.이 명령 없이는 작동 할 수 없습니다.)
  • nmon 균열의 상단과 같습니다. 단일 화면에서 시스템에서 진행되는 일에 대한 훌륭한 아이디어를 제공합니다. 디스크 I/O, 네트워크 I/O CPU 사용량 및 메모리 사용량을 실시간으로 볼 수 있습니다. 적어도 시스템을 프로파일 링 할 때 가지고 놀 수있는 진짜 재미있는 것.

아, 그리고 스크립팅 할 때 항상 Korn을 사용해야한다고 생각합니다. 나는 Korn (밴드가 아니다. 나는 밴드를 사랑한다 :-P)을 싫어하지만 말 그대로 모든 곳에있다. 스크립트를 가져 와서 Solaris, AIX 및 Linux간에 이동할 수 있으며 관리자가 Bash를 설치할 수 있는지 여부에 대해 걱정할 필요가 없습니다.

2
Jackalheart

때때로 매우 편리한 도구 중 하나는 Nohup입니다. 원격 SSH 클라이언트를 사용하여 오랫동안 지속되는 스크립트를 실행하는 데 사용합니다.

2
jplourenco

shutdown 명령.

2
user237419

나는 명령 줄에서 "for"뿐만 아니라 AWK를 좋아한다.

특히 실행하고 싶은 명령 목록을 작성하고 한꺼번에 실행합니다.

2
Brian G
  • vi
    • 찾기
    • ssh
    • AWK
    • sed
    • 넷캣
    • tar
    • 추신
  • 2
    Maxwell

    man-매뉴얼 페이지를 읽습니다.

    elinks-Google을 확인하려면 지옥이 모든 것을 기억할 수 없습니다.

    그리고 세부 사항과 끈기에주의를 기울이십시오. 왜냐하면 그들 없이는 시간을 낭비하기 때문입니다.

    2
    pjd
    • 일관성을 유지하기 위해 ssh를 통해 실행되는 rsync ... 여러 방향에서 (-gloptru [n] c)
    • Vim 및 vimdiff는 '폴딩'으로 편집하고 스크립트, 로그 등의 차이점을 확인합니다.
    • 스크립팅 및 분석을위한 Perl 및 (Ba) sh
    • 데이터를 게시/가져 오기위한 cURL (또는 Wget) ...
    • 아파치로 웹화 (또는 최소한 포인트 앤 클릭 관리 도구 생성)
    1
    ericslaw
    • Bash
    • 정력
    • iostat
    • 추신
    • 상단
    • lsof
    • strace
    • tcpdump
    • netstat
    • 찾기
    • grep
    • Perl
    • sed
    • 꼬리
    • 파기
    • 경로 추적

    가능한 경우 GNU 위의 독점 버전에 대한 버전.

    1
    Jason Tan

    이것은 내가 매일 사용하는 도구입니다 (시스템 관리자보다 개발자로서)

    • zsh
    • lsof
    • 추신
    • ack (또는 grep)
    • 찾기
    • svn
    • Python
    • tar
    • which
    • 재산 (남자는 어떻게 든 정신을 유지해야 함)
    1
    claytron

    Perl과 Vim. 그와 같은 순서로. 다른 것은 Perl을 사용하여 어떻게 든 에뮬레이션 할 수 있습니다.

    간단하고 기본적이지만 여전히 필수 :

    ps -현재 프로세스의 스냅 샷을보고합니다.

    free -시스템에서 사용 가능한 메모리 양을 표시합니다.

    w -누가 로그온하고 무엇을하고 있는지 보여줍니다.

    1
    gimel

    모든 표준 명령 및 유틸리티 (Bash, grep, sed, AWK, find, xargs, ssh, Vim 등)

    • Lsof, 정말 많은면에서 굉장합니다. 저는 그것을 사용하여 열린 포트와 그 프로세스와 관련된 파일을 찾는 것을 좋아합니다.
    • 멀티 세션을위한 멋진 스크린.
    • Tcpdump, 얼마나 많은 응용 프로그램 문제가 정말 이상한 네트워크 문제인지 재밌습니다.
    • Ruby는 Perl보다 나에게 더 의미가 있으며 SA work.
    • Chef, 구성 관리 시스템.
    • Capistrano, for 루프의 ssh이지만 덜 엉망입니다. 그리고 Ruby에서.
    • 레이크, 만드는 것보다 더 현명합니다.
    1
    jtimberman

    프로세스 종료를위한 pkill 또는 ps.

    Ps를 사용하여 주어진 이름 또는 특정 디렉토리 blah (또는 필요한 일치하는 문자열)에서 프로세스를 종료하려면 다음을 수행 할 수 있습니다.

    kill `ps -ef | grep <blah> | grep -v grep | awk '{print $2}'`
    
    1
    Iain Holder
    • atop-프로세스의 변화를 모니터링하기에 좋은 또 다른 최고의 대안
    • strace/ltrace-정말 성가신 버그를 추적합니다.
    • ldd-손상된 라이브러리 종속성 추적
    • cron, logrotate;)

    물론 명령 줄 외에도 Nagios/Cacti/MRTG/etc가 필요합니다.

    0
    allaryin

    munin은 용량 분석 및 검토를 수행하기위한 훌륭한 도구이지만 필요하기 전에 설정해야합니다. 우리는 우리가 수행하는 모든 서버 설치의 표준 부분으로 설치합니다.

    0
    Sean Reifschneider