태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

Hokey

OS 별 SSH 설정 방법

IT/Unix

OS 별 SSH 설정 방법



최근 VM에 AIX, HP-UX, SUN을 올려 테스트를 해볼 수 있는 기회가 생겼다.

군 시절 3가지 OS을 잠깐 건드려 보았지만,

취업 후 몇 년 동안 Linux 외에 다른 OS를 건드릴 여건이 되지 않았었다.

(사실 핑계..ㅠㅠ)


이번 기회에 다시금 군 시절 생각도 좀 하고, 종류별 OS에 대해 포스팅 할 수 있게 되어 기쁘(지않)다.


먼저 해당 필자가 근무중인 회사는 보안 상 OS접근 프로그램을 사용하여 해당 VM에 접근하는데

Telnet으로 접속 할 수 없고 무조건 SSH를 통해 접속해야 한다.

그래서 SSH 서비스를 올리려고 하니, 명령어가 기억이 나지 않아 정리 할 겸 포스팅을 한다.



먼저 Linux는 service XXX start, stop으로 데몬을 시작, 중지한다.

예를 들어 필자가 운영 중인 Cent OS환경의 SSH의 경우 아래 명령어로 동작 한다.

service sshd start/stop/restart


또 데몬이 존재하는 파일시스템에 접근하여 컨트롤하는 것도 가능하다.

/etc/rc.d/init.d/sshd start/stop/restart

환경설정은 /etc/ssh/sshd_config에서 가능


OS 별 ssh 데몬을 실행하는 명령어는 다음과 같다.

AIX

startsrc -s sshd

stopsrc -s sshd


HP-UX

/sbin/init.d/secsh start

/sbin/init.d/secsh stop

환경설정은 /opt/ssh/etc/sshd_config


SUN(Solaris)

/etc/init.d/sshd start

/etc/init.d/sshd stop

Solaris 10에서는 svcadm enable/disable ssh를 사용한다고 한다.



어차피 테스트 서버니까 마음껏 테스트하면서 알게 되는 것도 포스팅 해야겠다.



버그란 무엇인가 - 버그에 대한 고찰

IT/SW

버그란 무엇인가 - 버그에 대한 고찰



개발이든, 시스템 운영이든, 꼭 IT 업계가 아니더라도,

각종 기기를 사용하다 보면 이유 없이 알 수 없는 메시지가 발생되거나 오작동하는 경우를 볼 수 있다.

이럴 때 우리는 "버그가 발생했다"라고 이야기를 한다.

(원하는 결과가 나오지 않았을 때 이거 버그아냐? 라고 말하는 경우도 많다)

여기서 말하는 버그란 무엇일까?


버그 (Bug)

프로그램 상의 결함에 의해 하드웨어나 소프트웨어가 오작동을 하는 현상


영어로 "벌레"를 뜻하는 "버그"는 "글리치(glitch, 작은 문제)"라고도 불리는데,

글리치는 하드웨어 상의 오류를 나타내고 버그는 소프트웨어 상의 오류를 나타내지만, 모두 버그라고 지칭하는 것이 일반적이다.


"버그"라는 단어는 컴퓨터가 발전하기 전부터 사용해왔는데

1878년 전기발명가로 유명한 "토마스 에디슨"이 동료에게 다음과 같은 편지를 보냈다고 한다.

this thing gives out and [it is] then that "Bugs"—as such little faults and difficulties are called—show themselves and months of intense watching

"버그" - 작은 결함과 어려움을 나타내는


실제로 기계에서 오작동이 발생하였을 때 벌레가 원인이 된 사건도 있었다.

[출처 : 위키백과]

위 사진은 1945년 9월 9일 Mark.II 라고 불리우는 컴퓨터가 합선을 일으키자 원인을 파악한 결과

컴퓨터 회로에 나방이 들어간 것을 확인하였다.

이 나방은 미 해군에서 여러 해 동안 전시했다고 하며, 현재 미국 워싱턴에 있는 스미소니언 박물관에서 소장 중이라고 한다.



버그가 단순하게 오류메시지만 출력한다고 생각하면 오산이다.

1980년, 방사선 치료를 목적으로 만들어진 기계의 버그로 인해 치료 받던 환자의 죽음을 직접적으로 초래한 사건도 있으며,

1996년, 유럽 우주국에서 만든 10억 달러(약 1조 1,200억원)에 달하는 로켓이 발사 10분 만에 폭발하였고

최근 논란이 되고 있는 자동차 급발진 사고 역시 버그에 의한 것이다.


이런 버그를 찾아서 고치는 것을 "디버깅(debugging)"이라고 한다.

상황에 따라 프로그램을 만드는 것 보다 디버깅하는데 시간이 더 오래 걸리기도 한다.

버그의 종류는 굉장히 많은데, 논리적 오류(Logical Error)가 바로 이런 경우이다.

개발하면서 오류가 없다고 생각했는데 동작이 정상적으로 되지 않을 때 자칫 잘못하면 설계부터 다시 해야 하는 경우가 생기기 때문이다.


[출처 : 구글 이미지 검색]

컴퓨터공학도들에게 엄청난 공감을 자아내는 짤이다.

(웬만한 컴퓨터공학전공자들은 과제를 하면서 많이 겪어본 상황이닼ㅋㅋㅋ 필자 역시 학부 때도, 지금도 겪는 상황)

왜 동작이 안 되는 거지..?

왜 동작이 잘 되는 거지..?



위에서도 언급했듯이, 버그의 종류는 엄청나게 많다.

사소한 변수 오탈자 부터 대규모 인명피해의 원인이 될 수 있는 버그까지, 센다는 것이 불가능 할 것이다.

 

특히 요즘 같이 소프트웨어의 Size와 Complexity가 증가하고

하드웨어에서 소프트웨어 중심으로 변화 중인 IT생태계는 더욱 해결하기 힘든 복합적 버그가 발생할 수 있다.


빠르게 발전하는 IT업계의 경쟁력은 타 제조사, 개발사 보다 최신 트렌트를 접목한 HW, SW를 출시하는 것이라 할 수 있다.

여기서 우리는 큰 실수를 범하고 있다.

바로 개발한 결과물을 안정성을 위해 스트 하는 시간에 투자하기 보다 개발에 집중이 되고 있다는 점이다.

이는 대규모 사이버 재해의 원인이 될 가능성이 존재한다.


최근 인공지능, 자율주행, 무인화 등 여러 산업에서 자동화가 이루어지고 있다.

우리 사회가 점점 더 Cyber화 되어 갈 수록 앞서 말한 대규모 재해에 대한 대비책이 필요하다.

이 대비책을 마련하게 해주는 것, 그 근간이 되는 것이 바로

버그(Bug)

인 것이다.


이를 완벽하게 고치는 것은 불가능하다.


오죽하면 버그가 없는다는 것은 버그가 없을 정도로 단순하거나, 버그가 있는 것을 모를 정도로 복잡다는 것 이라는 말이 있을 정도이다.

심지어 외국의 대규모 벤더사인 오라클(Oracle), 인텔(Intel) 등도 피해갈 수 없다.

(인텔은 작년 스펙터라는 큰 이슈가 있었다.)

본인 역시, 시스템을 운영하며 주기적으로 각 벤더에서 권고하는 Bugfix Patch를 하고 있다.


하드웨어나 소프트웨어를 개발하는 데에는 돈이 들어가며, 결과물을 테스트하는 품질관리(QA)에도 엄청난 비용과 시간이 소요된다.

기술을 개발하는 것은 중요하지만, 그와 함께 버그를 통한 "안정성"에 대해서 생각해보아야 하지 않을까?


"버그"는 계속해서 우리에게 "Cyber Disaster"를 미리 방지하라고 이야기 하고 있다.





'IT > SW' 카테고리의 다른 글

버그란 무엇인가 - 버그에 대한 고찰  (0) 2019.03.01
JVM 크래시 - java core dump의 원인 및 해결방법  (0) 2018.08.12
Spring Integration 정리  (0) 2018.08.05
Apache Camel 정리  (0) 2018.08.05

맥북에 부트캠프로 윈도우 설치 후 인터넷 및 오디오 이상 조치 방법

IT/ETC

맥북에 부트캠프로 윈도우 설치 후 인터넷 및 오디오 이상 조치 방법



최근 맥북을 사은품으로 받은 지인 중 윈도우를 사용하고 싶어하는 분이 있어 부트캠프를 사용해 윈도우로 변경하였다.


맥북 에어에 부트캠프로 윈도우10을 설치하였다.



부트캠프를 사용하여 윈도우 10을 설치하고 난 후 이상하게 와이파이가 되지 않았다.


이유는 맥북에서 지원했던 드라이버가, 윈도우가 설치되면서 윈도우용 드라이버로 정상 설치되지 않기 때문이다.

이 현상을 해결하지 위해 우선 내 컴퓨터를 켜고, OSXRESERVED (D:)로 이동한다.

여기서 BootCamp 폴더로 이동한다.


폴더 안에는 Drivers, BootCamp, Setup 총 3개의 파일이 존재하는데,

여기서 Setup를 눌러 설치하면 MAX OS에서 지원하는 드라이버를 윈도우 환경에서 사용할 수 있도록 자동으로 설치를 해준다.

즉, Setup를 눌러 설치하면 인터넷이 연결되지 않는 현상(와이파이 못잡는 현상)과 오디오가 안나오는 현상 모두 해결 할 수 있다.


개별 Diver 설치를 원한다면 Drivers 폴더로 이동 후 원하는 드라이버를 설치해주면 된다.



window7 패스워드 잊었을 경우 푸는 방법

IT/ETC

window7 패스워드 잊었을 경우 푸는 방법



몇일 전, 회사 컴퓨터의 window계정이 풀리지 않는 경우가 발생했다.

비밀번호를 바꾸지도 않았는데 아무리 입력해도 틀렸다고 나오는 상황.

(사실 머리보다 손이 기억하고 있었던 터라 확실하게 맞는 비밀번호였는지도 모르겠다ㅋㅋ)


보안상 CD나 부팅USB는 구할 수도, 사용할 수도 없는 상황이었다.

이럴 경우 윈도우 패스워드 초기화 방법이 없을까 구글링을 통해 해결법을 찾아내었다.


삼성 복원솔루션을 사용하기 때문에, 다른 제조사 PC는 테스트 하지 못했다.

필자의 PC는 삼성, OS는 window 7이었으며, admin 계정이아닌 사용자 계정을 사용하는 환경이다.



먼저 PC를 재부팅한다.

다음으로 F4를 연타하여 삼성복원 솔루션 화면으로 들어간다.

위와 같은 화면이 지나면,

복원/백업을 할 수 있는 화면으로 넘어온다.


여기서 Ctrl+Alt+F10을 누른다.

그럼 비밀번호를 입력하라고 나오는데

삼성 복원솔루션 5의 경우 비밀번호가 secclx이고

삼성 복원솔루션 4의 경우 secos 또는 secas이다.


그럼 하드디스크 관리 / 명령 프롬프트을 선택할 수 있는 화면으로 넘어가는데,

여기서 명령 프롬프트를 선택한다.

위와 같은 검정색 창이 하나 뜨는데

regedit을 입력한다.


regedit 창(레지스트리 편집기)이 뜬다.

레지스트리란 운영체제에 필요한 시스템 설정값을 저장하고 있는 데이터 베이스로 registry(저장소, 등록소)와 edit(편집)의 합성어 이다.


여기서 왼쪽을 보면 다음과 같은 폴더를 볼 수 있다.

HKEY_CLASSES_ROOT

HKEY_CURRENT_USER

HKEY_LOCAL_MACHINE

HKEY_USERS

HKEY_CURRENT_CONFIG


비밀번호를 초기화 하는 데에는 HKEY_USERS 값을 수정해 주어야 한다.

HKEY_USERS를 더블 클릭 후 File -> Load Hive를 선택하고 나서 다음 경로에 있는 SAM파일을 추가해 준다.

C드라이브 -> Windows -> System32 -> config


SAM 파일을 추가하면, Keyname을 입력하라는 창이 하나 뜨는데 아무거나 입력해주면 된다.

그럼 레지스트리 편집기 창의 왼쪽 화면에 HKEY_USERS 아래 본인이 입력했던 Keyname으로 폴더가 하나 생성된 것을 볼 수 있다.

그 폴더를 더블 클릭한다.

그리고 나서 SAM -> Domains -> Account -> Users를 순서대로 들어가면, 오른쪽 창에 (Default),  F, V가 떠 있는 것을 볼 수 있다.


여기서 F를 더블 클릭하면 binary value를 수정 할 수 있는 창이 뜨는데

8번 째 줄에 있는 0038의 오른쪽 11이라는 값을 10으로 수정 후 재부팅을 해준다.


그럼 사용자 계정이 아닌 Administrator 계정이 살아나면서 관리자 계정으로 부팅이 가능하다.

이후 제어판 -> 사용자 계정에 들어가서 비밀번호를 변경할 계정을 선택해 변경을 해주면 끝.




HP - array controller failure

IT/Server

HP - array controller failure


HP ProLiant DL380 Gen8과 HP ProLiant DL380 Gen9 장비를 운영하면서

서버가 뻗어버리는 이슈 중 한 가지를 공유하려고 한다.

OS는 Cent OS6.x이다.

Array controller failure

Array Contoller란, 여러개의 Disk를 하나의 Disk처럼 인식 해주는 장치로

HP에서는 HPE Smart Storage Administrator로 접속하여 Raid 구성이 가능하다.


HP 상 로그는 회사 보안 때문에 첨부할 수 없지만, hpasm(hp-health 데몬)에서는 해당 이슈가 있을 때

Array Controller Failure 메시지를 남기고 서버가 자동 reboot된다.

(구글에서 찾은 비슷한 에러메시지)


이런 경우, Gen 8장비는 메인보드에 onborad이므로 메인보드 교체가 필요하고,

Gen 9장비는 모듈형식이기 때문에 해당 모듈을 교체해야한다.

좌측부터 메인보드, Primary PCIe riser, Array Controller 이다.

Array Controller에 나와있는 선은 확장 모듈로, Gen 8의 Cache module로 보면 된다.

참고로, PCIe에 Array Controller를 탈착, 장착하기 위해서는 스타 드라이버가 필요하다.



최근, Gen 9서버에 Raid 0으로 서버를 구축했는데 이 환경에서는 

Disk Lock이 걸린 상태가 되는 현상이 있었다.

(동일 모델, 동일 구성환경에서 Raid 5구성은 Gen 8과 같이 시스템이 reboot되었다.)


input/output error가 발생하며 파일 read만 가능하고 write는 불가능 한 상태인데,

system call은 정상으로 동작해 WatchDog도 시스템 reboot을 하지 않는 상태였던 것 같다.



shutdown, reboot 명령어가 듣지 않기 때문에 system call 명령어인 init 0 으로 서버를 내려 array contoller를 교체하여 정상화하였다.

필자가 운영하고 있는 Gen 9의 경우 확장 모듈(Cache Module)도 장착되어 있어, 함께 교체하였다.



사실, Array controller failure가 발생하며 서버가 리붓되는 경우, 명확하게 Array Controller가 문제라고 볼 수는 없다.

실제로, 필자가 운영하는 환경의 경우 서버가 올라오면 운영AP가 자동으로 올라오도록 설정되어 있는데

Array Controller가 발생하고 서버가 리붓되어 올라오고 나서 AP가 동작하는데 전혀 문제가 없었기 때문이다.


물론 즉시 Gen 8은 메인보드를(앞서 언급했듯이, Array controller가 onboard이기 때문), Gen 9는 Array Controller를 교체하긴 했다.

HP에 정식 접수하여 확인한 결과 스토리지가 아닌 서버에서 스토리지처럼 사용하고 있어 발생하는 것으로 보인다고 가이드를 받았다.

실제, 해당 이슈가 잦은 서버는 HDD와 SSD를 하나의 Array Controller에 하이브리드 구성하여 스토리지처럼 사용하며,

I/O가 굉장히 많이 발생하는 서버이다.


하지만, 이런 환경이 아닌 Gen 8장비에서도 동일한 이슈가 발생하여 Firmware 패치 등 여러 조치를 취해보았지만,

특별히 개선되어 보이는 점은 없었다.

아마 Array Controller failure 메세지는 어떤 HW 부품 등에 문제가 발생하였을 경우 default로 뿌리는 메세지가 아닐까 싶다.

실제로, AHS로그 분석 결과 BackPlane 문제로 확인되어 SAS cable과 함께 교체한 적이 있었기 때문이다.



Mission Critical환경에서는, 이중화 구성이 되어 있어도 이런 이슈는 굉장히 민감할 수 밖에 없다.

SLA(service level agreement)협약이 맺어 있는 경우 이중화 구성으로 서비스에 이상이 없더라도,

서버 down 시점부터 시간을 측정하여 위약금이 물리기 때문이다.


최근 신기술 동향 교육에서 후지쯔가 이런 이슈로 안정성을 강화하여 HW 이슈가 있을 때 서버 강제 리붓을 하지 않는다고 하였는데,

HP도 Critical한 HW 이슈가 아니라면 경고 메시지를 주고, 강제 리붓을 하지 않는 방향으로 가면하는 바람이다.




'IT > Server' 카테고리의 다른 글

HP - array controller failure  (0) 2019.02.22
HP서버 정보 보기 - hpasmcli  (0) 2018.08.05
HP서버 정보 보기 - hpssacli, hpacucli  (0) 2018.08.05

티스토리 툴바