Windows / Linux Sysadmin으로 반드시 알아야 할 도구는 무엇입니까? [닫은]


17

Linux 또는 Windows Sysadmin으로 작업하는 동안 반드시 알아야 할 도구 / 유틸리티는 무엇입니까?

예를 들어 Linux 서버에서 작업하는 경우 필요한 GNU / 스크린 에 대해 생각하고 있습니다.


GNU / Screen +
1-

소프트웨어 또는 하드웨어 도구에 대해 이야기하고 있습니까?
dance2die

소프트웨어에 대해 생각하고 있었지만 하드웨어도 유용합니다. 모든 도구를 나열하기 위해 게시물을 CW로 변환 할 것이라고 생각합니다.
paulgreg

답변:


25

vi-모두가 그것을 좋아하는 것은 아니라는 것을 알고 있지만, 모든 * nix 서버에있을 것입니다. 다른 모든 것이 깨지면 구성 파일을 편집해야합니다. 나는 또한 같은 이유로 csh와 sh를 제안 할 것이다.


4
실제로는 vim이지만, vanilla vi 명령을 항상 아는 것은 vim이 설치되지 않은 설치에 유용합니다.
Rob Wells

5
나는이 게시물이 다른 답변에 대해 훨씬 더 많은 잠재력을 가지고 있다고 생각합니다. 나는 이것이 조금 이른 답변이라고 생각합니다 ...
dance2die

vi를 vim보다 선호하고 가능한 한 많이 사용하려고합니다. : P
Roy Rico

34

Windows Sysadmin은 SysInternals에 익숙해야합니다 . 프로그래밍 및 기계로 진행되는 상황을 진단하는 데 모두 귀중합니다.


2
물론 그 도구는 목을 두 번 이상 절약했습니다.
Keithius

오, 나는 그가 sysinternal 책을 추천하고 있다고 생각했다.
Pacerier

29

PuTTY : Windows를위한 훌륭한 무료 SSH 클라이언트. 내가 일한 거의 모든 곳에서 Windows에서 Unix 서버에 연결하는 데 사용했습니다.


3
다른 사람의 컴퓨터를 사용하여 원격으로 로그인 할 때 PuTTY를 사용합니다. 그러나 정기적으로 사용하는 컴퓨터에서는 Cygwin / X를 설치해야합니다. 상자에 X 클라이언트를 표시하는 것을 대신 할 수는 없습니다.
Jon Ericson

2
+1, PuTTY는 99.98 % 순수한 승리로 만들어집니다.
Avery Payne

추가하기 만하면됩니다. 많은 사람들이 퍼티를 알고 사랑합니다. 나는 또한 Pageant를 사용하는 것을 소개합니다. 어떤 이유로 퍼티를 사용하기 시작한 사람의 75 %는 공개 / 개인 키 쌍을 설정하면서 걸을 때까지 미인 대회가 존재하지 않았다는 것을 알고 있습니다. 이제 그들은 전에 그것을 가지고 있지 않다는 것을 믿을 수 없습니다.
Zak


17

대체 텍스트

sysdamin이 컴퓨터 상자에 물리적으로 있어야 함을 잊지 마십시오!

당신은 적어도 하나를 가지고 있는지 확인해야합니다

  1. 필립스 헤드 드라이버
  2. 표준 (평면 헤드) 드라이버
  3. 족집게 (mobo의 어두운 숨겨진 지점으로 떨어진 나사를 들어 올리기 위해)
  4. 예비 SATA 케이블
  5. 예비 네트워크 RJ45 케이블 (및 교차 케이블)
  6. 압축 공기-> 모든 먼지를 제거하십시오.

일부 친구는 또한 모든 사람이 도구 상자에 있어야한다고 생각하는 10 가지 사항에 대해 씁니다 .


실제로 나는 많은 시스템 관리자가 육체적으로 살 필요없이 살았다 고 생각합니다.
Pacerier

14

스크립팅.

Windows의 표준 명령 셸조차도 실제로 유용 할 수 있다는 것을 알게되었습니다. 적절한 스크립트 기능을 얻기 위해, 특히 스크립트가 클라이언트 시스템에 배포되어야하는 경우 PowerShell 또는 cygwin을 설치할 필요가 없습니다.


2
스크립팅의 중요성에 동의하지만 Cygwin, powershell, Perl 등을 설치하지 않고도 적절한 스크립팅을 얻을 수 있다는 데 동의하지 않습니다. 배치 파일은 완전한 기능을 갖춘 실제 스크립팅 언어와 비교하여 실망스러운 농담입니다.
Christopher Cashell

2
물론 모든 기능을 갖춘 스크립팅 언어는 bat, cmd 또는 vbs 스크립트보다 더 좋습니다. 내가 말하고 싶은 것은 내장 된 Windows 스크립팅 도구가 놀랍게도 많은 작업, 특히 더 나은 것이 없을 때 충분하다는 것입니다. " '정규 표현식을 사용하자!" -이제 두 가지 문제가 있습니다 "라고 말합니다.
macbirdie

7

Windows 도구 :
최근에 발생한 멀티 캐스트 문제 를 디버깅 할 때 NMap 이 네트워크 트래픽을 디버깅하는 데 매우 유용한 것으로 나타났습니다 . Wireshark 도 도움이되었습니다.


5
둘 다 리눅스에서도 사용 가능하며 매우 유용하다
David Z

7

유용한 작은 유닉스 / 리눅스 도구가 많이 있습니다

grep, strace, GNU Screen, locate, rsync, sed, awk 및 tripwire도 꽤 흥미 롭습니다.

목록은 실제로 계속 진행됩니다. 여기 목록보다 훨씬 더 많은 것을 잊었습니다. 또한. * rc 파일 구성과 같이 원하는 방식으로 이러한 도구를 구성하는 방법에 대해 알아 봅니다. 이것은 그들 모두를 훨씬 더 유용하게 만들 것입니다. 예를 들어 다음은 화면에 관심이 있기 때문에 내 .screenrc 파일입니다.

1 startup_message off
2 hardstatus alwayslastline
3 hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'
4 
5 # Window numbering starts at 1, not 0.
6 bind c screen 1 
7 bind 0 select 10
8 
9 # Default screens
10 screen -t shell1        1
11 screen -t shell2        2
12 screen -t shell3        3

hardstatus 문자열이 생성하는 것을 말할 수 있습니까? 위의 gobbledegook를 디코딩하는 대신 여기를 참조하십시오 ...
Hamish Downer

매우 사실입니다! 매우 비밀입니다. 상태 표시 줄을 세 부분으로 나눕니다. 왼쪽은 호스트 이름이고, 가운데는 번호와 이름이있는 모든 화면의 목록이며, 현재 화면은 높고 오른쪽은 날짜와 시간입니다. 거기에도 다른 색이 많이 있습니다.
devin

6

나를 위해 원격 * nix 시스템을 관리하는 Windows 사용자를위한 PuTTY의 완벽한 동반자 는 완벽하고 작고 사용하기 쉬운 FTP, SCP 및 SFTP 클라이언트 인 WinSCP 입니다.


5

파워 쉘! Powershell은 .NET 프레임 워크를 기반으로하는 Windows 용 환상적인 명령 셸입니다.


5

모든 플랫폼에서 널리 사용되는 기본 백업 도구에 익숙해야합니다. 좋은 백업 방법을 모르는 sysadmin 을 나쁘게 만드는 것은 없습니다. 백업을 잘하면 거의 모든 실수에서 벗어날 수 있습니다.

Windows의 경우 -ntbackup, Linux의 경우 dd / tar-데이터베이스 덤프 명령 -tftp는 스위치 / 라우터 / 장치 백업


5

쉘 스크립팅 툴 : bash / sh, awk, grep, head, tail, less, cat, sort, uniq, wc (및 기타)

Awk를 사용하면 문제를 진단해야 할 때 중요한 로그 파일 또는 기타 파일을 쉽게 분석 할 수 있습니다. 어떤 사람들 perl은 이것을 위해 사용 합니다. 도구 중 하나에 대해 모든 것을 알 필요는 없지만 액세스 로그 또는 http 로그를 확인하고 비정상적인 일이 발생하는지 파악할 수 있도록 무언가를 알아야합니다.

awk를 sort, uniq, tail, grep 및 wc와 결합하여 인생을 아주 쉽게 만듭니다.

일부 쉘 스크립팅에서 혼합하십시오. 다음과 같은 작업을 수행하는 것이 매우 편리합니다.

for i in server1.example.com server2.example.com server3.example.com ; do
  xterm -e "ssh ${i} tail -f /var/log/message | grep something ";
done;

이렇게하면에 대한 세 서버의 로그를 정리할 수 있습니다 something. 이와 같은 트릭은 많은 시간을 절약하며 셸 스크립팅 도구 때문입니다.


이 보석에 대해 알아야합니다 : for i in server{1,2,3}.example.com ; do. 이와 같은 단축키는 입력을 많이 절약합니다.
mogsie


4

tail-대부분의 Linux / Unix 시스템에서 사용 가능하면 파일의 마지막 줄 (또는 꼬리 끝)을 볼 수 있습니다. tail -f파일에 추가 된 새로운 줄을 볼 수 있습니다.

Windows의 경우 BareTail을 좋아 합니다.


나는 "F"(shift + f)를 입력하는 것이 낫다. less는 또한 "올바른 파일"테일이 inode를 따라 가도록합니다. 이것은 로그 파일을 볼 때 회전 할 때 문제가됩니다.
serverhorror 2016 년

사용 tail -F(반대하는 tail -f) 당신이 추적-이름으로 행동하는 대신 다음과별로 아이 노드의 수 있습니다.
Christopher Cashell

3

이것은 아마도 당신이 원하는 대답이 아니지만, 나는 단지 몇 가지 생각을 나누고 싶었습니다. 일반적으로 시스템 관리는 도구뿐만 아니라 사용하는 정신 프레임 워크에 관한 것입니다. 요컨대-어떤 작업을 수행 하려는지 알고 있다면 수행 할 도구를 찾는 것이 매우 간단합니다.

기본적으로 sysadmin이 시스템에 대해 알아야 할 몇 가지 질문이 있습니다.

  1. 나는 무엇을 가지고 있습니까? (rpm, apt, lshw와 같은 하드웨어, 소프트웨어 인벤토리 도구)
  2. 어떻게 지내? (cpu, 메모리, 디스크 사용량, 애플리케이션 사용량 도구 (예 : top, vmstat, sar))
  3. 앞으로 어떻게해야합니까? (nagios, zabbix와 같은 모니터링 도구)
  4. 내가 얼마나 안전한가? (방화벽 도구, iptables, snort, ids 시스템과 같은 서버 강화 도구, 응용 프로그램 용 보안 모듈)
  5. 서버에서 무엇을하려고합니까? (응용 프로그램을 관리하는 도구 (예 : postfix, qmail, apache, java, php 등)).
  6. 내 인생을 편하게 만드는 방법? (구성 파일 버전 관리 도구, 여러 서버에 구성 배포, 무인 설치)

이제 도구의 개인 선택은 .. 개인입니다.

Btw, vi에 대한 답변은 훌륭합니다!

미디엄


2

좋은 편집자. 어느 쪽이든 상관없이, 나는 화염 전쟁을 시작하기 위해 확실히 여기에 있지 않습니다. 그러나 훌륭한 편집자 를 배워야합니다 .

나는 거의 모든 것에 Emacs를 사용합니다. Vi (m)도 좋은 예입니다. Windows에서 가장 좋은 것이 무엇인지 확실하지 않지만 언급 한 2의 Win32 변형이 좋을 것이라고 생각합니다.


위에서 지적했듯이 vi는 모든 단일 서버에서 사용할 수 있으므로 호스팅 회사에있을 때 귀중한 가치를 알고 있습니다. 인터넷에 연결할 수 없으면 선택한 편집기를 설치할 수 없으므로 사용 가능한 항목으로 구성 파일을 편집하고 vimtutor (명령 줄에 vimtutor를 입력)를 사용하기 위해 30 분을 소비 할 수 있는지 확인하십시오. 나노는 상당히 보편적이지만 학습 곡선은 적습니다.
Hamish Downer

2

Windows sysadmin의 경우 :

Cygwin . 때로는 당신이 그냥 빨리 텍스트 파일을 할 필요가 grep, wc, awk, 또는 스크립트로 쓰기에 너무 오래 걸릴 것 인 무엇인가. 빠른 웹 로그로 스캔 grep하고 awk정말 하루 저장할 수 있습니다.



2

dmidecode- 실행중인 컴퓨터에 대한 모든 종류의 정보를 얻는 데 탁월

strace- 발행 한 명령이 원하는 방식으로 작동하지 않는 이유를 알 수없는 경우

찾기 -이 작은 명령에는 알고있는 것보다 더 많은 옵션이 있습니다. 매뉴얼 페이지를 읽고 깨달음

xargs- 사물 목록을 처리해야 할 때 매우 편리합니다.

rsync -rsync 및 다양한 옵션을 아는 것은 네트워크에서 데이터를 안전하고 빠르게 이동하는 데 필수적입니다

telnet- 겸손한 telnet 명령은 다른 명령보다 몇 년 동안 더 많은 네트워크 연결 문제를 진단하는 데 도움이되었을 것입니다.

nmap- 아마도 nmap을 제외하고

nc -netcat은 클라이언트가 무엇을하려고하는지 또는 udp를 사용하는 "telnet"을 위해 빠른 서버를 설정하는 데 유용합니다. 튜토리얼을 읽고 실제로 얼마나 강력한 지 확인하십시오

https 서버에 대한 보안 연결을 통한 openssl의 s_client 텔넷은 이상을 진단합니다.

나는 결국 기억할 톤이 더 있다고 확신한다. 업데이트 확인 ;-)



1

나는 DTrace의 열렬한 팬이되고 있습니다.이 시점에서는 Windows에서 사용할 수 없습니다.


Linux에서 Dtrace를 사용할 수 있습니까? Dtrace를 어떻게 얻습니까?
devin

1
내가 아는 바는 없지만 systemtap [ sourceware.org/systemtap/] 에는 내 게임 목록에 베타 버전이 있습니다. DTrace와 비슷한 일을하지만 Linux의 경우와 비슷합니다.
Milner

1

VNC를 언급 한 사람이 아무도없는 것 같습니다 .


방금 +1했습니다. :) 처음 등장했을 때와 마찬가지로 여전히 실행 가능하고 사용 가능합니다.
Avery Payne

많은 sysadmins는 X를 사용하여 * nix 서버를 관리하지 않습니다. VNC 대신 FreeNX를 선호합니다.
sumar

1

내가 일반적으로 사용하는 몇 가지 :

ps : 현재 실행중인 프로세스를 확인합니다 .
wc : 단어 수. 줄 바꿈, 단어, 바이트를 표시합니다.
grep : 패턴을 찾습니다. 일치 또는 일치하지 않음 (역 일치)
> 출력을 새 파일로 리디렉션하거나 >>를 사용하여 파일 끝에 추가합니다.
| 명령을 함께 연결합니다. 다음 명령에서 사용 된 첫 번째 명령의 출력.
tee :받은 입력을 파일에 쓰고 화면에 텍스트를 표시합니다.

내가 사용하는 가장 일반적인 체인 :
ps ax | grep mysql


1

Windows의 경우 NET과 NETSH를 잊지 말고 네트워크가 없으면 네트워크에서 길을 잃을 것입니다.


1

일부 도구는 필수는 아니지만 일상 생활을 더 쉽게 만듭니다.

  • 컬러로 로그를 보는 ccze
  • moreutils패키지 (뎁)
  • 주석없이 설정 파일을 보는 cfcat
  • wget 및 출력 재 지정 방법

0

유닉스에서는 dmesg. 모든 시스템 진단 메시지를 수집하여 화면에 멋지게 표시합니다.

그렇습니다 .syslogd에 의해 '더 이상 사용되지 않습니다.'하지만 여전히 syslogd 설정을 사용하여 dmesg처럼 멋지게 표시하는 방법을 찾지 못했습니다.


tail /var/log/kern.log
Teddy

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.