여러 리눅스 서버에서 프로젝트를 돌리고 있는 상황입니다.


프로젝트 작업은 한 컴퓨터에서만 하고 있고, 변경사항은 GIT 으로 업데이트 해주고 있었습니다.


근데 이렇게 매번 업데이트 해줄 때마다 작업한 컴퓨터의 그룹유저 권한으로 바뀌더라고요. 그래서 다시 한번 권한을 원래대로 바꿔줘야 했습니다.


사실 이렇게 매번 권한을 바꿔줘도 문제는 없지만, 귀찮고 불편해서....


서칭 결과 찾은 해결법입니다~!



1
git config core.filemode false
cs



( 처음엔 외국 사이트(Stack Overflow 등)을 찾아다녔고, 거기서는 권한을 바꿔주는 수밖에 없다고 하더라고요.. 근데 한국 블로그에서 해답을 찾았습니다! 갓국! )



추가로 Git 세팅 보기는 아래와 같으며, 아래의 명령어로 Git 설정이 변경됬는지 확인될 수 있습니다~


1
git config --list
cs






참고 블로그 :http://blog.kimsfactory.com/


넷플릭스 오리지널 드라마 레인입니다.


덴마크 드라마로 멋진 푸른색 눈동자와 샤이니한 금발을 가진 등장인물이 많이 나옵니다.



덴마크 드라마라서 드라마 안에서는 모두 덴마크 말을 사용합니다.

독일어 같으면서도 불어 같은 느낌의 대사를 모든 등장인물이 사용하죠.



전체적인 줄거리는


살상률이 매우 높은 치명적인 바이러스가 있고, 그 바이러스는 비로 전파됩니다.

주인공 남매의 아버지는 그 바이러스에 대해 알고 있고, 그 바이러스의 백신을 개발하려는 과학자에요.


바이러스가 퍼지려 하자 아버지는 주인공 남매를 자신 회사의 지하 벙커에 피신시키고, 자신은 할일이 있다면서 떠납니다.


그렇게 남매는 그 벙커에서 아버지가 올때까지 5년을 기다리고, 식량이 떨어져가자 벙커를 떠나 아버지를 찾으러 갑니다.


그리고 밖에 나가니 도시는 폐허가 되어있고, 사람도 존재하지 않습니다.


그리고 벙커를 나간 후 동료가 생기고(너 내 동료가 되라!), 그러한 과정 중에 여러 사실들을 알게 되죠.


여기까지가 1화 줄거리에요.(출처는 Me)




처음에 볼때는 좀비 영화인줄 알았으나, 좀비영화는 아닙니다.


하지만 전체적인 분위기와 배경은 윌스미스 주연의 '나는 전설이다.' 느낌이 나는 것 같아요.



제가 생각하는 이 드라마는


매우 흥미롭고, 재미난 소재를 사용했고,

전체적인 스케일이나 퀄리티도 넷플릭스 오리지널답게 매우 뛰어난 드라마입니다. 


하지만

극 발 암 드라마입니다.


다른 블로그나 커뮤니티 글을 찾아보니 다들 1화만 보고 더는 안보셨다고 하더라고요.


저도 1화 보고 정말 답답하고 발암이었지만, 그래도 2화부터는 괜찮지 하고 2화 보고, 3화부터는 괜찮지 하다가 3화 보고 하다가 끝까지 다봤습니다.


하지만 매화가 전부 엄청난 발암이었습니다.


특히나 저는 남매 중 남동생(아래 사진에서 왼쪽) 정말 극도의 발암이었습니다.

생긴건 매우 잘생긴 미소년인데 하는 짓은 이기적이며, 생각이 짧고, 멍청하고, 단순하고, 답답한 요소는 모두 갖고 있는 등장인물입니다.

Image result for rain tv show



물론 남주 뿐만 아니라 여주도 매우매우 답답합니다.^^



결론은

전체적으로 매우 발암이며,

자신은 답답한 것을 매우 좋아하며,

덴마크 드라마를 보고 싶고,

잘생긴 금발의 푸른 눈동자 등장인물로 눈정화를 하고 싶은 분들에게만

추천드리며,


다른 분들께는 절대 보지 말라고 말씀드리고 싶네요~! 

다이어 그램이나 도식 그리거나 할 때 툴입니다.


따로 설치할 필요없이 브라우저 상에서 쓸 수 있어서 매우 편해요.


또한 매우 가벼워서 좋습니다! 있을 기능은 다있는데 정말 가벼워요.(크롬 앱 중에 다이어그램 있는거 써봤는 데, 그건 너무 무겁더라고요...)



아래는 해당 주소입니다!


https://www.draw.io/



파일을 xml, png, jpg 등 다양하게 저장가능합니다. 구글 드라이브와 같은 크라우드 스토리지에도 저장 가능해요.~!



저장한 파일은 다시 불러와서 수정할 수도 있습니다!



무엇보다도 무료!

리눅스 서버를 돌릴 때 포트가 열렸는지 닫혔는지를 확인하고, 포트를 열고 닫기에 대한 글입니다!


제가 쓴 리눅스는 Linux Redhat 7.0 (RHEL) 기준으로 쓰였지만, 대다수의 리눅스 버젼에서 통용됩니다!


<수정>

리눅스 7.0 이상 버전 부터는 iptables 이 아닌 Firewall Daemon을 이용한다고 한다!


이유는 여러가지가 있다!


그렇기에 아래의 글을 따라하지 말자!




1. 포트를 확인합니다!


1
netstat -na
cs


위와 같은 명령어를 입력합니다.


netstat 은 현재 네트워크 연결 상태 등을 프린트해주는 명령어입니다.


추가로 -n 옵션은 현재 열려있는 ip 주소를 문자형(localhost)가 아닌 숫자형(172.16.1.30) 형태로 보여줍니다.

-a 옵션은 all의 약자로 모든 걸 보여달란 의미입니다.


위와 같이 명령어를 입력하시면, 무수히 많은 네트워크 상태를 볼수 있습니다.



만약 웹서버를 운영 중이신 분들에게 팁을 드리자면,

너무 많은 정보중에서 자신의 웹서버 포트를 확인하고 싶다면 아래와 같이 입력해주세요.


1
netstat -nat

cs


위와 같이 입력하면 tcp 프로토콜의 정보만 나오게 됩니다. 아래처럼 말이죠.


1
2
3
[fcjyct@localhost ~]$ netstat -nat
tcp        0      0 172.16.1.30:8080        0.0.0.0:*               LISTEN     
tcp        0      0 172.16.1.30:8081        0.0.0.0:*               LISTEN     
cs


위의 결과는 순서대로

프로토콜 종류, 받는 큐, 보내는 큐, 로컬 주소, 허용된 외부 주소, 상태

입니다!


그리고 제 리눅스 컴퓨터는 현재 tcp 프로토콜로 8080 포트와 8081 포트가 모든 사람에게 열려져 있음을 알 수 있습니다!




2. 열린 포트 확인합니다!


1
netstat -na | grep LISTEN
cs


추가로 자신의 컴퓨터에서 열린 포트만 확인하고 싶을 때의 명령어입니다.



3. 포트를 열어줍니다!


리눅스 상에서 포트를 열어줄 때( 방화멱을 열어줄 때 )는  일반적으로 iptables 명령어를 사용합니다.


1
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
cs


위의 명령어는 tcp 프로토콜의 포트를 열어주는 명령어입니다.


순서대로 설명하면

-A 는 append의 약자로 방화벽 규칙을 추가한다는 의미입니다.

INPUT은 들어오는(INBOUND)의 규칙을 추가한다는 의미이며

-p tcp 는 프로토콜 tcp 의 규칙을 추가하겠다는 의미입니다. 다른 옵션으로는 udp, icmp, sctp등이 있습니다.

--dport  8080 은 8080 포트 번호를 의미합니다. dport는 destination-port 의 약자입니다. (man iptables-extensions에서 확인하실 수 있습니다.)

-j ACCEPT 는 ACCEPT 규칙을 추가한다는 의미입니다. -j 옵셥은 어떻게 할거냐는 의미로 ACCEPT 외에 DROP, REJECT 등이 있습니다.



이상 리눅스 방화벽의 포트 확인과 포트 열기였습니다~!





++ 추가로 간혹가다 방화벽의 포트도 열어주고 다 했는 데도, 외부 접근이 안되는 경우가 있습니다. 저도 그런 경험이 있어서 너무나 고생했었는데요.

레드햇 리눅스의 경우 SELinux라는 따로 보안 시스템이 돌고 있습니다. 만약 포트도 열고 다 해줬는데도 권한 오류가 나시는 분들은 SELinux를 꺼보고 다시 해보라고 전해드리고 싶어요! 간단하게 명령어는 아래와 같습니다.


1
sudo setenforce 0
cs


SELinux를 끄겠다는 의미입니다!


사실상 끄는 것보다는 제외 규칙을 만들어 주는 게 좋겠지만, 찾아보니 쉽게 끝날일은 아닌 것 같아 저 또한 우선은 끈 채로 개발 중에 있습니다~!



'LINUX' 카테고리의 다른 글

telnet 상황별 증상  (1) 2024.02.04

테라 단위의 매우 길고 복잡한 디렉토리 구조를 갖고 있는 파일 및 폴더를 S3에서 다운 받아야 할 경우가 있었어요.



얼마 안되는 양의 데이터라면 별 부담없이 일일이 다운 받아도 되겠지만,

테라 단위까지 가면 일일이 다운받는 일은 불가능하겠죠... (시간이 오래걸리겠지만 가능하긴 할거에요...)



이런 난해한 상황에서 제가 사용한 방법들을 소개하려 합니다.



처음에는 FTP 프로그램을 사용하려 했었어요. 

아래는 제가 시도하려 했거나, 시도했었던 FTP 프로그램들입니다!

사용법은 적지 않았어요.

굳이 사용법을 적을 필요도 없이 FTP 프로그램의 사용법은 쉬우니까요!


다만 제가 사용했을 때, 장점이나 단점이나 단점이나 단점에 대해 말하려 합니다!



파일질라에 대한 이미지 검색결과

1. 파일질라

장점 : 유명

단점 : 무료버전은 AWS S3 지원 X 

가장 유명하고 친숙한 FTP 프로그램으로는 '파일질라'가 있죠.

하지만 파일질라에서 AWS S3를 연결하려면 무료 버젼으로는 불가능하며, 유료 버젼을 사용해야 합니다.


그래서 저는 파일질라는 PASS 했습니다!



사이버덕에 대한 이미지 검색결과

2. 사이버덕

장점 : 이쁨, 편한 UI, 무료버젼 AWS 지원 O

단점 : 3일에 한번꼴로 있는 업데이트와 후원하라는 안내창, 대용량 및 복잡한 디렉토리 구조에서 에러

사이버덕은 파일질라와 같은 FTP 프로그램입니다. 파일질라보다 더 이쁜 아이콘과 UI를 갖고 있죠. 하지만 사용 방법이나 방식은 파일질라와 거의 99% 같습니다.


처음 사용했을 때는 매우 좋았어요. 파일질라와 다르게 무료 버젼이 AWS S3을 지원하고, 인터페이스도 파일질라보다 이쁘고, 쉬웠거든요.


하지만 가장 중요한 대용량 전송에 있어서 처음엔 잘되다가 계속 중간에 끊어지고 오류가 발생하더라고요...

만약 300기가의 데이터를 다운받는다 치면 99.9%에서 항상 오류가 발생했어요. 찾아봤는데 그이유는 모르겠더라고요...

화가나는건 항상 99.9%에서 멈추고, 이어받기가 안된다는 점이었어요.

원래는 이어받기가 되어야하는데 에러난 항목은 이어받기를 하더라도 또 똑같은 99.9%에서 에러가 발생하더라고요....

추측하건데 이 에러는 사이버덕 쪽의 문제가 아닌 큰 용량과 복잡한 디렉토리 구조의 문제인 것 같아요.

디렉토리 구조가 너무 복잡해서 255자가 넘어가는 경우가 많았는데 그럴때마다 에러가 나더라고요.(윈도우는 255자 이상의 디렉토리 구조를 사용하려면 따로 설정을 바꿔야 합니다.)


그리고 또다른 단점으로는 3일에 한번꼴로 파일의 업데이트가 이뤄지면서 후원하라는 안내창이 뜹니다.

아마 무료버젼으로 프로그램을 푼 대신 자주 업데이트하여 사람들에게 후원을 유도하는 전략을 사용하는 것 같아요.

무료로 좋은일 하시는 좋은 사람들에게 후원하고 싶지만... 하하!


3. 포크리프트3 (Fork Lift 3)

장점 : 편한 UI, 무료버젼, AWS 지원 O

단점 : 맥전용

맥에서만 사용할 수 있는 어플리케이션입니다. 그리고 상대적으로 위에 나열한 FTP 보다 에러가 많이 적었어요.

하지만 결국에는 이 포크리프트3도 에러가 발생하더라고요.



Image result for cloudberry aws

4. 크라우드베리

장점 : AWS 지원 O

단점 : 촌스럽고(?) 복잡한 UI, 

윈도우에서 사용한 FTP 프로그램입니다. 마지막으로 시도해본 FTP 소프트웨어입니다. 단점에 복잡하다고는 했었으나 한번 눈에 익으면 오히려 다운로드 과정 같은 것이 자세히 나오기 때문에 더 좋을수도 있을 것 같아요.

하지만 이 소프트웨어 또한 대용량 전송 시에는 에러가 발생했습니다.



결론은

"AWS S3에서 대용량을 LOCAL로 옮길시에는 FTP 소프트웨어는 적합하지 않다." 

입니다.


이는 제가 2주 넘게 시간을 투자해서 내린 결론입니다. 기가 단위로 쪼게서 다운받았을 때도 결국에는 에러가 발생했고, 갖은 노력을 했지만 결국에는 에러가 발생했습니다.



제가 최종적으로 성공하고, 사용한 방법은 맥 OS에서 터미널창을 이용한 AWS Command Line Interface 입니다.

제가 생각하는 대용량 전송을 스트레스 없이 전송할 수 있는 가장 최고의 방법이 아닐까 생각합니다.


저는 맥 OS에서 사용했지만, Linux계열 운영체제에서 사용해도 좋을 거라고 생각합니다.

이에 대한 방법은 다음에 올리도록 하겠습니다~~







한국 면허증을 택사스 면허증으로 교환하기입니다!



오늘로 미국에 온 지 86일이 되었습니다.



처음엔 정말 막막함 그 자체였죠.


물론, 지금도 막막한 것이 정말 많지만

그래도

자동차 사기, 자동차 타이틀 받기, 자동차 번호판 달기, 소셜번호 받기, 집 구하기 등 정말 많은 것을 해결했습니다.



오늘은 마지막 남은 과제인 자동차 운전면허 교환을 했습니다.



많은 사람들이 얘기하지만 미국의 관공서는 업무처리가 느립니다.


공무원이 느릿하게 업무 처리 하는 것도 있겠지만, 무엇보다도 사람이 항상 정말 많은 것 같아요.


사실 공무원이 느릿하게 처리하는 것보다 사람이 많은게 크다고 생각해요.


사람은 정말 많은데 그만한 관공서가 있지는 않은 것 같아요.


한국은 곳곳에 동사무소, 구청, 시청이 있어서 괜찮은데 말이죠.


아마 그렇지 않을까요.



소셜 번호 받을 때도 2시간 넘게 걸렸는데, 오늘 운전면허 교환하는 데도 역시 2시간 이상 걸렸습니다.


총 2시간 30분 걸렸던 것 같고, 그 중 2시간은 대기 시간이었습니다.


느긋하게 책이나 드라마 같은 것을 보며 기다리는 것도 좋을 것 같아요.





택사스 주는 한국의 면허증을 별도의 시험 없이 바로 미국 택사스 운전면허로 교환 해줍니다.


필요한 서류와 간단한 시력검사만 그치면 바로 운전면허 교환이 가능하죠.



필요한 서류는 


http://overseas.mofa.go.kr/us-dallas-ko/brd/m_4317/view.do?seq=979549


댈러스 대사관 홈페이지에 친절히 잘 나와 있어요.



우선


1. 신분증이 필요합니다.

저는 여권을 가져갔습니다.


2. 유효한 비자를 가져오라고 하네요.

저는 J1 비자로 와있는 상황이라, J1 비자를 알려 줄 수 있는 DS-2019 와 DS 7001 을 가져갔어요.

만약 J1 비자로 오신 분은 2개 다 가져 가야합니다. DS-2019 만 확인할 줄 알았는데, 둘다 확인 하더라고요.


3. 소셜시큐리티카드 를 가져 갑니다.

대사관의 안내문에는 소셜시큐리티가 있음을 증명할 수 있는 서류를 가져가라 하는데, 저는 그냥 소셜시큐리티카드를 가져갔고, 이게 가장 마음 편한 방법이 아닐까 싶어요.


4. 차량등록증과 보험증서, 차량점검표.

차가 있는 사람만 가져가면 되는 것 같아요. 저는 차가 있었기에 가져갔습니다.

특이사항은 차량점검표는 따로 보여달라고 하지 않더라고요. 차량등록증인 Car Title 과 보험 증서를 보여줬습니다.


5. 대한민국 운전면허증

대한민국 운전면허증을 가져가고, 제출해야 합니다. 제출한 면허증은 한국가면 다시 돌려 받을 수 있다고 하나봐요. (아마 저는 새로 발급 받을 것 같습니다.)


6. 택사스 거주를 증명할 수 있는 서류 2개

저는 이 항목이 가장 어려웠어요.

저와 같이 미국에 계속 거주하는 것이 아닌 사람에게 수도세, 가스비 고지서가 있을리 없으니까요.

저는 현재 쉐어하우스에서 월세 주면서 살고 있어서 당연히 제 이름과 주소로 된 고지서 같은 것은 갖고 있지 않았어요.

그리고 문제가 되는 것이 저는 인턴으로 여기 와있었고, 대부분의 서류상의 주소와 소셜시큐리티 주소가 쉐어하우스 주소가 아닌 모두 회사로 되어있었어요.

거주하고 있음을 증명해야 하는데, 제가 정작 살고 있는 쉐어하우스로 된 서류는 하나도 없었습니다.


그래서 그냥 SIMPLE 하게 서류상 주소인 회사를 그냥 주소로 했습니다.


서류 준비는 정말 많이 했었어요. 회사로 날라온 보험 고지서, 고속도로 통행료 고지서, 차량 타이틀, 소셜시큐리티, 체크카드 우편물 등등


근데 정작 공무원님께서 확인하는건 차량타이틀과 소셜시큐리티만 확인하더라고요.


즉, 저는 소셜시큐리티와 차량 타이틀만 보여줬습니다.


간단히 대화를 정리해 보면


"여기 살고 있는 거 증명할 서류 있니?"


"차량 타이틀과 소셜시큐리티 있.."


"소셜시큐리티? 오 긋"


하고 대화는 끝났고 저렇게 두개 보여줬습니다.


사실상 서류를 뭐 달라 뭐달라 이런식으로 차근차근 준게 아니고, 냅다 한꺼번에 줘서 그 서류가 언제 필요했고, 언제 사용 되었는지는 정확하지 않습니다.


7. I-94

댈러스 안내문에는 I-94 서류를 가져가라는 말이 없었습니다.

하지만 I-94를 달라고 하더라고요. 저는 미리 많이 복사 해놔서 그걸 줬습니다.

운이 좋았던 것 같아요. I-94 꼭 챙겨가세요. 

I-94는 인터넷에서 쉽게 인쇄 가능합니다~!


8. 대사관에서 받은 면허증 공증

이글을 작성하기 2달 전쯤 댈러스 대사관 출장소에서 면허증 공증을 받았습니다. 

특별히 대사관에서 받은 거 달라는 말은 안했어요. 그냥 면허증을 트랜스레이션 할 수 있는 거 있냐 그러더라고요.

그래서 아무 생각없이 대사관에서 받은 서류를 줬습니다. 제가 받은 느낌은 꼭 필요한건 아니라는 느낌이었어요.

한국에서 국제면허증 받아온거 있는데 왠지 그 것으로도 될것 같은 느낌이었습니다.


9. 마지막으로 운전면허 신청서인  DL-14a 입니다

미리 작성해 가셔도 되고, DPS 에서 작성하셔도 됩니다. 가니까 친절하게 팬이랑 DL-14a 서류를 주더라고요.

근데 저는 미리 작성해가는 게 편하지 않을까 싶어요. 다닥다닥 붙어있는데 제 개인정보를 적는건 불편하니까요오.


저는 이 서류 작성하는 데 어려움이 많았어요. 사실 미국에 있는 모든 서류 작성이 어려워요.

저는 영어를 잘못해요. 특히나 이런 공식 서류에는 정말 생소한 단어들이 정말 많아서 사전 검색해가면서 써야합니다.

가뜩이나 영어도 못하는 데, 서류에는 한국에 없는 개념이 있거나, 쓰는 방식이 한국과 다른게 너무 많아요.

이건 어떻게 써야하지, 여긴 뭘 적어야하지, 이걸 왜 묻는 거지 등등 지금까지 제가 받은 영어 교육은 무쓸이란 걸 매번 느낍니다.


인터넷에 찾아봐도 이런 서류 작성하는 법에 대해 나와 있는 블로그나 글은 없더라고요...


물론 제가 멍청해서겠지만, 저와 같은 어려움을 겪고 있는 분이 있을 수도 있기에 제가 뭘 적었는지 자세히 적으려고요.


일단 맨위에 체크 하는 부분은 Driver License 를 체크합니다.


이름은 쓰시면 되고, Suffix 나 Maden Name 은 사전 찾아보시면 쉽게 무슨 뜻인지 알 수 있고, 감도 오실태니 패스~ (저도 모릅니다. 한국인은 쓸일 없는 개념의 이름이라고 생각해요.)


인종에는 A 썼습니다.(체크는 따로 안했어요)


키는 피드 및 인치 단위네요. 구글 및 네이버에 변환기 사용했어요.

몸무게도 파운드네요. 왜 파운드를 lbs 라고 적는 걸까요. 너무 헷갈리더라고요. 변환기 사용했습니다.


전화번호는 HOME 이랑 OTHER 가 있는데, 저는 하나는 제 핸드폰, 하나는 회사 번호 적었어요.

아마 하나만 적어도 되지 않을까요.


대망의 주소 부분입니다.

Residence Address 와 Maling Address 로 2개 적으라고 되어있네요.

위에서 말했듯이 저는 회사가 주소로 되어있어서, 혹시라도 "여기 회산 데 왜 사는 곳이라고 했어?"라고 퇴짜 맞을까봐 너무나 걱정 됐었어요.

근데 별일 없이 넘어가서 다행이라고 생각합니다.

저는 둘다 회사 주소 적었고, Mailing 주소에만 슈트넘버 즉, 사무실 호수를 적었습니다.

저번에 소셜 시큐리티 발급 받았을 때, 발급 받은 지 3주가 지나도록 소셜카드가 배송이 안되더라고요. 

알고보니 사무실 호수인 슈트(Suite)번호를 적지 않았기 때문이더라고요. 이미 항상 사무실 건물까지 왔다가 돌아간 것 같아요.

소셜 시큐리티 카드 같은 매우 중요한 서류 같은 것은 본인에게 직접 배달이라고 하나봐요.


이번에도 그런 경우가 생길 까봐, 마지막에 운전면허증은 어디 주소로 배송되냐고 물어봤어요.

그랬더니 너가 적은 주소로 온다고 하더라고요. 그래서 확인할 수 있냐고 요청했고 확인해보니 슈트번호가 빠져있더라고요.

아마 공무원님께서 대충 읽고 레지던스 주소랑 메일링 주소랑 비슷하니까 그냥 레지던스 주소를 메일링 주소로 복붙한게 아닐까 싶어요.

그래서 내가 메일링 주소에 슈트번호 추가해달라 그리고 그곳으로 보내달라 요청했습니다.

회사분들은 슈트번호 적으면 회사인거 티나서 퇴짜맞을 수도 있다고 했는데, 다행이라고 생각해요.

저는 나름 편법쓴다고 레지던스 주소에는 슈트번호 빼고, 메일링에만 넣었어요... 

같은 주소에 슈트번호만 뺀다고 의심 안할 것 같진 않지만, 어찌됐든 저를 담당하신 공무원님께서는 별 의심 안하셔서 다행이에요.


출생지는 City 에 서울 적고 나머지는 비워두고 Country 에 사우스코리아 적었습니다.


그리고 나머지는 체크 하는 항목들인데요.


맘편히 전부다 No 체크 추천드립니다.


읽을 필요 없이 그냥 전부다 No!


아.. 14번 항목은 Yes 입니다.


나머지는 전부다 No


두번째 장에 Certification 부분부터 아래는 비워둡니다.

Do not sign below until instructed .... 뭐 이렇게 시작하니까요. 쓰지말라는데 너무나 감사하죠호호호.


자 



정리하면 제 경우에 필요했던 서류는


여권

DS-2019

DS-7001

I-94

DL-14a

한국 운전면허증

댈러스 대사관 출장소에서 받은 운전면허 공증

소셜시큐리티카드

차량 타이틀

차량 보험증



입니다.



이렇게 서류 보여주고, 공무원님께서는 서류를 읽으시고, 타자를 치시고 스캔을 하십니다.


그 다음 지문을 등록합니다.


지문 등록한 후에는 시력검사를 해요.


시력검사는 따로 이동해서 하지 않고 책상 앞에 있는 조그만 VR 기계 같은거에 눈 갖다대고 합니다.


저는 4번째줄 왼쪽부터 오른쪽으로 읽으라고 해서 번호를 읽었어요. 


그리고 사진을 찍어요.


사진은 따로 안챙겨가고 현장에서 바로 찍어요.


사진 찍는 것도 따로 이동해서 찍는게 아니라 그 자리에서 찍습니다. (모든 과정은 책상에서 이뤄집니다!)


사진 찍고, 공무원님께서 "긋~" 하길래 사진 잘나왔는줄 알았는데, 모자라게 나왔더라고요. 선택권은 없습니다.


그러면 끝입니다.


위의 서류중에 운전면허증과 대사관에서 받은 공증, I-94는 제출했어요. 달라고 하더라고요.



팁을 드리자면 영어를 잘 못하는 척을 하면 그냥 술술 넘어가는 것 같아요.

아 물론 저는 따로 영어를 못하는 척하지 않았지만 술술 넘어가더라구요! 하하하하!




모두 운전면허증 교환 잘하시기를 바랍니다아~






우선 서버 종류는 node 로 한다


node 업데이트와 npm 업데이트를 한다


node 업데이트는

sudo npm cache clean -f

n 모듈 설치

sudo npm install -g n

n 모듈을 이용해 안정화 버전의 노드 설치

sudo n stable



npm 으로 npm 설치

sudo npm i -g npm



나와 같은 경우는 초기에 이 업데이트 해주는 과정을 하지 않아서 계속해서 에러가 났고 시간을 많이 잡아 먹었다.


무조건 시작하기 전에 노드와 npm 버젼을 설치하자.


이후에 bash 창에서 npm run dev 하면 끝




!!충격적인 사실을 발견했다.


C9 의 터미널 창은 닫았다 키면 초기화가 되나 보다.


업데이트 시켜놓은 node 버젼과 npm 이 초과화 된다


.....


신기방기네....


이때는 노드 업데이트를 npm으로 못한다


nvm install 8.10.0 으로 최신 버전의 노드를 설치하자

C9 으로 루비 작업을 하고 git으로 로컬 저장소로 클론 해왔을 때 루비 버전이 달라 에러가 발생했습니다.


이 때 해결하는 방법을 적습니다~


(아래의 포스팅은 맥 osX 를 기반으로 작성되었습니다.)



RVM (Ruby Version Manager)을 사용하시면 됩니다.


RVM에 관한 자세한 설명은 https://rvm.io/ 를 참고하시면 좋을 것 같아요.


간략히 말하면 루비의 버전을 관리를 도와주는 도구입니다.



실제로 루비를 설치할 때도  RVM을 사용해서 설치 가능하고, 이 방법이 좋다고 하더라고요.



우선 RVM을 설치해줍니다.



RVM 설치 방법은 위의 RVM 공식 사이트에 영어로 친절하게 설명되어 있습니다^^



우선 터미널 창을 여시고


gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB


위의 명령어를 치셔서 GPG KEY를 설치합니다.


이 과정을 거치는 이유는 보안을 보장하기 위해 설치 패키지를 확인하는 데 사용되는 mpapisPublic(공용 키)키를 설치하기 위해서 입니다.



이 다음은 아래의 명령어를 터미널창에 치셔서, rvm을 설치합니다.


\curl -sSL https://get.rvm.io | bash



이렇게 설치를 끝내신 후 아래의 명령어를 치셔서 잘 설치 되었는지 확인합니다.


rvm -v


잘 설치 되었다면 아래와 비슷하게 나올 겁니다.


rvm -v 명령어는 rvm의 버젼을 확인하는 명령어입니다.



이제 모든 준비는 끝났습니다.


우선 c9에 가셔서 프로젝트의 루비의 버전을 확인합니다.


ruby -v 명령어로 루비 버전을 확인 가능합니다.



아직까지 C9 은 루비 버전 2.3.0 을 지원합니다. (현재는 안정 버전으로 2.4.2로 나와있습니다)


맥 OS X 에는 기본적으로 루비가 설치되어 있습니다. 하지만 그 버전이 굉장히 옛날 버전입니다.


실제로 루비를 한번도 설치 하지 않은 상태에서


ruby -v


명령어를 치셔서 확인 하실 수 있습니다.



위와 같은 식으로 말이죠.


(저는 최신 버전을 이미 깔아놓았기에 2.4.2 의 버전이 나옵니다~)



이처럼 컴퓨터의 디폴트 루비 버전과 c9이나 다른 방법으로 만든 루비 프로젝트의 루비 버전이 다르면 에러가 나게 됩니다.

(실제로 2.3.0 버전에서는 Bignum, Fixnum의 두개의 정수 클래스를 가지고 있다면, 2.4.0 부터는 Integer로 통합되었다고 합니다.)



이때 rvm으로 컴퓨터의 루비버전을 프로젝트의 루비 버전과 맞게 바꿔 주시면 에러 없이 즐코딩 가능합니다.

(반대로 프로젝트의 루비 버전을 바꿔 줄 수도 있을 겁니다. 다만 이때는 여러 가지 많이 만져줘야 해요.(그렇다고 알고 있습니다.. 어렵고 힘들다고))



이제부터 rvm을 사용합니다.


우선 rvm list 명령어로 사용가능한 루비 버전을 봅니다.

rvm list


저는 아래와 같이 나옵니다.


저는 현재 두개의 루비 버전이 깔려있네요.



제가 만든 c9 프로젝트의 루비 버전은 2.3.0 이니까 저는 2.3.0 을 깔 필요가 있습니다.


이 명령어는 아래와 같습니다.


rvm install 버전


저는 2.3.0이 필요하니 rvm install 2.3.0 을 쳤습니다.



시간이 꽤 걸립니다.


차분히 기다리면 설치가 됩니다.


루비 2.3.0 버전이 잘 설치 되었는 지 보기위해 다시 rvm list 명령어를 쳐봅시다.

오 2.3.0 버전이 생겨놨습니다.


저기서 => 는 현재 사용하고 있는 ruby 버전을 말하고 * 는 컴퓨터의 디폴트 버전을 말합니다.

저렇게 설치 한것만으로도 현재 2.3.0 버전을 사용할 수 있습니다.


한번 ruby -v 를 쳐보세요.

위와 같이 아까와 달라진 것을 확인할 수 있습니다.


만약 다른 버전을 사용하고 싶다면

rvm use 버전

위의 명령어를 치시면 됩니다.



위와 같이 rvm use 명령어를 통해 자유롭게 버전을 오고 갈 수 있습니다.


추가로 디폴트 루비 버전을 바꾸고 싶다면


rvm --default 버전


위의 명령어를 치시면 됩니다.


위와 같이 * 가 붙은 위치가 바뀐 것을 확인 하실 수 있습니다!



** 요약 **


설치된 사용 가능한 루비 목록 보기

rvm list

특정 버전의 루비 사용하기

rvm use 버전

트정 버전의 루비를 디폴트 버전으로 하기

rvm --default 버전




출처 : 

https://rvm.io/

http://wantknow.tistory.com/        원노님

https://www.ruby-lang.org/ko/news/2016/11/09/ruby-2-4-0-preview3-released/

+ Recent posts