Solaris / OpenSolaris의 숨겨진 기능


9

일반적인 Linux 배포판에서 사용할 수없는 Solaris 또는 OpenSolaris에서 찾을 수있는 유용한 명령, 도구 또는 요령은 무엇입니까?

답변:


13

ZFS를 사용하는 Live Upgrade는 운영 체제 부트 환경의 쓰기 가능한 스냅 샷을 만듭니다. Live Upgrade를 사용하면 스냅 샷 부트 환경에 패치를 적용한 다음 해당 스냅 샷을 부트 가능하게 만들 수 있습니다. 다음에 다시 부팅하면 패치 된 OS 환경이 나타납니다. 패치 관련 문제를 발견 한 경우 이전 스냅 샷을 부팅 가능하게하고 재부팅 한 후 변경 사항을 취소했습니다. 패치에 대한 매우 인상적인 솔루션입니다.

부트 환경의 ZFS에는 Solaris 10u6 이상이 필요합니다.

또한 Solaris 영역은 응용 프로그램 격리에 매우 유용합니다. DTrace는 매우 훌륭하지만 RedHat은 System Tap으로 캐치 업을하고 있습니다.


1
UFS로도 라이브 업그레이드를 수행 할 수 있습니다.
TCampbell 2016 년

필자는 항상 라이브 업그레이드가 평균 Linux 업그레이드와 비교하여 솔라리스 업그레이드와 관련된 고통을 보상한다고 생각했습니다.
Cian

14

ZFS, DTrace 및 SMF는 솔라리스에 대해 들어 본 사람도 들어 본 적이 없기 때문에 숨겨진 기능이 아닙니다.

솔라리스의 숨겨 지거나 알려지지 않은 일부 기능을 알고 싶다면 Jörg Möllenkamp덜 알려진 Solaris 기능 ebook 을 읽는 것이 좋습니다 .


1
덜 알려진 Solaris 기능 ebook은 solaris에서 작성된 최고의 책 중 하나입니다.
matt

7

SMF (서비스 관리)를 잊지 마십시오. 나는 리눅스에 필적할만한 것을 보지 못했다. 그것은 (그리고 동료들) 많은 티켓 처리를 구했습니다. :)


나는 사과 프레임 워크가 오픈 소스로 제공된다고 생각합니다. developer.apple.com/MacOsX/launchd.html
Martin M.

잘 읽었습니다! 살펴 보 겠지만 첫눈에 SMF의 모든 기능 (예 : 재시도)을 제공하지는 않습니다.
Vincent De Baere

최근에 OpenSolaris로 전환 한 사람으로서 저는 SMF를 좋아합니다. 나는 또한 많은 OS X 서버를 관리하고 있으며, launchd는 서비스 시작이 실패하면 다시 시작하는 것을 지원합니다.
Kamil Kisiel 2016 년

쓸모없는 오류 메시지를 제공하는 shite 프로그램으로 제어되는 XML로 래핑 된 초기화 스크립트? 나는 리눅스에서 그런 것을 찾지 않기를 바랍니다.
theotherreceive

upstart는 적어도 의존성 기반 비트와 같은 일을합니다.
Cian

6

리눅스 사람들이 원했던 솔라리스에는 많은 기능들이 있습니다. 여기에는 다음이 포함됩니다.

  • ZFS : 현재 사용 가능한 것 이상의 유연성을 제공하는 파일 시스템. 동적 성장 및 축소, 스냅 샷, 클론 등 모두 무료로 제공됩니다.
  • DTrace : 커널 작동 방식에 대한 세부 정보를 제공 할 수있는 디버거. 커널 작성 방식으로 인해 DTrace는 기본적으로 SystemTap보다 훨씬 유연합니다.
  • SMF : System V init 스크립트를 대체하는 또 다른 시스템이지만 다른 시스템보다 많은 사람들이 관심을 가지고있는 것으로 보입니다.
  • 영역 및 컨테이너 : 이들은 매우 유연하고 많은 사람들이 흥분합니다. 매우 유연한 가상화를 제공합니다.

나는 그들이 SMF를 가지고있는 현명한 리눅스 사람을 아직 찾지 못했다. OpenVX는 좋은 영역 / 컨테이너 교체입니다.
시안

5

몇 가지 개인적인 경험 ...

Zones가 너무 쉽고 유용해서 집에서 실행중인 각 서비스에 대해 간단하게 하나만 만들었습니다. 이렇게하면 모든 것을 버리지 않고도 게임을하고 테스트 할 수 있습니다. 영역 중 하나는 리버스 프록시 (Sun Web Java Proxy)이므로 다른 웹 서버를 쉽게 사용할 수 있습니다.

또한 opencsw (이전 Blastwave라고도 함) 패키지 계층 구조가 아직 본 것보다 훨씬 뛰어납니다. 항상 모든 종속성을 처리합니다.

그리고 바이너리 호환성을 잊지 마십시오. 커널 1.2.3_4가 설치된 Linux가 필요한 앱을 지정하면 더 좋습니다. Solaris에서는 모든 것이 향후 릴리스에서 작동합니다. 나에게 이것은 내가 원할 때 업그레이드를 의미하며 스트레스를받지 않습니다.

더 깊이 파고 싶다면 몇 가지 흥미로운 문서가 있습니다. 덜 알려진 Solaris 기능

맛을 위해서만-관리 스페셜 :

라이브 업그레이드 서비스 관리 기능 자원 관리 pfiles 퓨저 / export / home? /집? autofs? lockfs 코어 및 충돌 정보 CacheFS Jumpstart Enterprise Toolkit

(광고처럼 들리나요? 죄송합니다 ...)


1
Blastwave는 여전히 주변입니다 .opencsw는 포크입니다.
TRS-80

4

Solaris의 가장 큰 두 가지 이유는 DTrace와 ZFS 인 것 같습니다. 두 가지 모두 Linux에서 직접 사용할 수 없습니다.



3

pstack, pmap, pflags, pfiles, pcred, psig 및 pldd와 같은 프로세스 관찰 유틸리티는 반드시 숨겨져있는 것은 아니지만 Linux 사용자에게는 분명하지 않습니다. 또한 prstat는 top과 다소 비슷하지만 사용자, 영역, 프로젝트 및 표시 마이크로 스테이트 계정별로 리소스 사용량을 집계 할 수 있습니다.

하나의 OS 인스턴스에서 많은 응용 프로그램을 관리하기위한 프로젝트와 작업을 살펴보십시오.

Linux의 coreadm에 해당하는 것은 모르지만 / proc 어딘가에 흩어져있을 수 있습니다.

Logadm은 약간 애매하지만 logrotate를 대체하기에 적합하며 일반적으로 더 강력하고 유연합니다.

다중 레벨 보안 (역할, 권한 부여, 프로파일)의 배열은 Linux (SELinux 컨텍스트, AppArmor)와 다릅니다.

OpenSolaris의 이미지 패키징 시스템 (IPS)은 매우 깔끔하지만 여전히 개발 중입니다.

또한 LiveUpgrade의 경우 +1입니다. 특히 ZFS 스냅 샷에서 유용합니다.

익숙한 GNU 사용자 영역 대부분이 사용 가능하며 기본적으로 충분히 새로운 Solaris에 설치 될 수 있습니다.


2

OpenSolaris에 대한 빠른 재부트 는 x86 하드웨어에서 일반적인 HW Probing / BIOS POST / GRUB 프로세스를 건너 뛰어 재부트가 ~ 2 분이 아닌 10 초 미만으로 발생할 수 있도록합니다. 대체 부트 환경 부팅 (예 : 봇치 업그레이드 업그레이드)도 지원합니다.


패닉 재부팅도 지원합니다! : 그것은 셰리 무어 (프로젝트 리더)가 뉴욕 오픈 솔라리스 사용자 그룹에 준 프레젠테이션에서 작동하는 방법에 대한 자세한 정보 scribd.com/doc/16925842/DeveloperDayFastreboot
notpeter

그러나 리눅스도 그렇게 할 수 있습니다. "kexec"를 찾으십시오.
knweiss

1

ZFS와 SMF는 훌륭하지만 솔라리스의 실질적인 어려움은 패키지 관리자가 리눅스에 비해 뒤떨어져 있다는 것입니다.

또한 모든 유틸리티는 미묘한 방식으로 다릅니다 (모든 사람?) Linux 시스템을 대부분 관리하는 경우 solaris로 전환하면 매뉴얼 페이지를 반복해서 읽는 것을 의미합니다. 짜증나는 "더 많은"호출기와 항상 약간 잘못 구성된 터미널은 인생을 어렵게 만듭니다.


"내보내기 PAGER = less"는 저에게 충분합니다. 그리고 Solaris에서 killall보다 pkill을 사용하는 것이 좋습니다. 당신은 짜증나는 termcap / terminfo 물건에 대해 옳습니다 (화면에 terminfo가 없으십니까? GTFO!).
Rob Chanter

killall과 관련하여 pkill, pgrep을 제공하는 procps로 옮겼습니다. 이것들은 솔라리스에서 GNU 도구로 사용할 수 있어야합니다. 필자는 killall보다 훨씬 뛰어납니다.
Martin M.

pkill (및 pgrep 및 기타 p- 유틸리티)은 (Open) Solaris의 핵심 시스템 패키지의 일부입니다. 그들은 리눅스에서 procps에 (적어도 pkill / pgrep / pmap) 있습니다.
Rob Chanter

1
솔라리스 패키지 매니저는 OpenSolaris / Solaris 11에서 주요 점검을 받고 있습니다.
Toto


1

kssl, 커널 SSL 모듈. ksslcfg (1M)에서 인용

ksslcfg는 커널 SSL 프록시 모듈의 smf (5) 인스턴스를 관리합니다. SSL 사용 웹 서버는 커널 SSL 프록시 서비스를 사용하여 HTTPS 패킷 처리 성능을 향상시킬 수 있습니다.


1

Linux와 달리 "lsof -o"(파일 오프셋 표시)가 작동합니다. 많은 양의 데이터를 읽거나 쓸 때 프로세스가 얼마나 멀리 있는지 보여주는 데 유용 할 수 있습니다.



0

아마도 새로운 플레이어를위한 가장 큰 함정 인 전형적인 Linux 사용자 는 Solaris 호스트 에서 killall 을 실행하고 싶을 것 입니다.

System Administration Commands                        killall(1M)

NAME
     killall - kill all active processes

SYNOPSIS
     /usr/sbin/killall [signal]

DESCRIPTION
     killall is used by shutdown(1M) to kill all active processes
     not directly related to the shutdown procedure.

     killall terminates all processes with open files so that the
     mounted file systems will be unbusied and can be unmounted.

     killall sends signal (see kill(1)) to the active  processes.
     If no signal is specified, a default of 15 is used.

     The killall command can be run only by the super-user.

ATTRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Availability                | SUNWcsu                     |
    |_____________________________|_____________________________|

SEE ALSO

     kill(1), ps(1), fuser(1M), shutdown(1M), signal(3C),  attri-
     butes(5)

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