윈도우즈에서 작업한 파일을 리눅스에서 열 경우 라인 끝마다 ^M 문자가 들어간 것을 볼 수 있다.

특히, 쉘스크립트 등에 포함이 될 경우 쉘이 동작하지 않게 된다.

아파치쪽 SSL 패스워드(SSLPassPhraseDialog) 설정과 톰캣쪽 환경설정 파일(setenv.sh)이 쉘로 되어 있었는데 ^M 떄문에 정상적으로 뜨지 않아 헤맴 -ㅅ-;


어쨌든 ^M을 없애는 방법은 간단하다.

vi 에디터를 열고,


:%s/^M//g

(^M은 단순 텍스트 입력이 아닌 Ctrl + v + m으로 입력하여야 한다.)


이렇게 명령어를 날려주면 된다.


Posted by SungHoon, Park
,

소프트링크(심볼릭링크, symbolic link)

1. ln -s 명령을 통해서 소프트링크(이하 심볼릭링크)를 생성한다.

예제) ln -s original.txt soft.txt


심볼릭링크는 바로가기와 동일하다고 할 수 있다. 원본인 original.txt가 삭제가 된다면 심볼릭링크는 깨지게 되고 당연히 original.txt에 접근할 수 없다. 반대로 soft.txt를 지우더라도 링크만 삭제되는 것이기에 원본에는 영향이 가지 않는다.


2. 생성후 확인하기

예제) ln -ali


790572 -rw-rw-r--  2 centos centos   12 2016-05-11 00:44 original.txt

790560 lrwxrwxrwx  1 centos centos   12 2016-05-11 00:55 soft.txt -> original.txt


하드링크(hard link)

1. ln 명령을 통해서 하드링크를 생성한다.

예제) ln original.txt hard.txt


물리적인 데이터 위치 정보를 나타내주는 inode값이 같은 링크방식이다.

쉽게 말하면 파일에 또다른 이름이 있다고 생각하면 이해하기 편하다.

원본인 original.txt 파일을 삭제하더라도 hard.txt라는 다른 이름이 계속 존재하기 때문에 파일은 계속 유지될 수 있다.


2. 생성후 확인하기

예제) ln -ali


790572 -rw-rw-r--  2 centos centos   12 2016-05-11 00:44 hard.txt

790572 -rw-rw-r--  2 centos centos   12 2016-05-11 00:44 original.txt


i옵션을 붙여주면 inode 정보가 추가로 출력된다.


※ inode란?

우리는 탐색기 등을 통해서 트리구조로 파일을 쉽게 확인하고 볼 수 있다. 이것을 파일테이블이라고 한다.

이 파일테이블의 파일정보에는 물리적 저장공간을 가리키는 위치정보가 포함되는데 이것이 바로 inode값이다. inode값은 별도의 inode 테이블에 존재한다.


사용자 파일 테이블(a.txt) -> 파일 테이블(a.txt=100) -> inode 테이블(100=xxx) -> 하드디스크(xxx)


[참고자료]

http://blog.naver.com/pk920207/110147243183

http://mycute7.blog.me/220521823025



Posted by SungHoon, Park
,

/ (루트)

- 파일시스템 구조에서 최상위를 가리키는 루트 디렉토리이다.

- 모든 것들이 이 디렉토리 안으로 들어가며, 모든것의 출발점이다.


/boot

- 부트로더, 커널 등 부팅에 필요한 요소가 저장된다.


/bin과 /sbin

1) /bin

- 일반 사용자가 사용하는 프로그램이 저장된다.

- /bin -> /usr/bin 심볼릭 링크


2) /sbin

- 관리자가 사용하는 프로그램이 저장된다.

- /sbin -> /usr/sbin 심볼릭 링크


/dev

- 장치(디스크, 그래픽카드, 사운드카드 등)에 관련된 파일들이 있다.

- 시스템 도구가 특정 컴퓨터의 하드웨어에 간편한 방법으로 접근할 수 있도록 한다.


예)

/dev/sda

/dev/sda1

/dev/sda2

/dev/sdb


- 이 경우 sd는 SCSI 디스크를 의미하며, a, b는 디스크의 순서이다. sd 뒤의 1, 2는 파티션 번호이다.

- 하드 디스크의 경우는 hd로 시작한다.


/etc

- 시스템에서 가장 중요한 디렉토리라 할 수 있다.

- /etc에는 시스템 또는 사용자가 설치한 애플리케이션의 환경설정 파일등이 담기게 된다. (웹서버 등)

- 백업이 필요할 경우 /etc 디렉토리의 환경설정 파일 백업도 고려해야 한다.


/home

- 사용자의 홈 디렉토리


/lib

- 애플리케이션에 필요한 라이브러리 파일이 저장된다

- 라이브러리는 패키지 형태로 애플리케이션 사이에서 공유된다.

- 직접 건드릴 일은 없겠지만, 그래야 하는 상황이라면 조심해야 한다. 시스템 안정성에 영향을 미칠 수 있다.


/lost+found

- 파일시스템에 문제가 있을 시 문제가 발생한 파일의 아이노드 번호가 이곳에 저장된다.


/mnt

- mount를 의미한다.

- 네트워크 공유, 외장 하드디스크 등을 연결하려면 /mnt 하위에 디렉토리를 만들어 마운트하게 된다.


/media

- 최근에 등장한 디렉토리이며, USB나 카메라 등과 같은 이동식 미디어가 마운트된다.


/opt

- 서드파티 소프트웨어나 애플리케이션이 이 디렉토리를 사용한다.


예) 오라클 DB의 Default 설치경로


/root

- 루트 사용자의 홈 디렉토리 (/와 혼동하지 말자)


/proc

- 시스템 정보 및 프로세스(process) 정보를 확인할 수 있는 디렉토리

- 정보들은 커널에서 메모리상에 만들어주기 때문에 가상 파일시스템이라 할 수 있다.


예)

cat /proc/cpuinfo

cat /proc/meminfo


/srv

- 파일을 다루는 서비스에서 데이터를 저장하는 곳이다.


/sys

- 시스템 정보가 담기며, /proc과 달리 실제 파일이 저장된다.


/tmp

- 임시파일이 저장된다.

- 모든 애플리케이션이 이 디렉토리에서 파일을 만드며, 임시저장소로 이곳을 사용한다.


/usr

- 모든 애플리케이션이 설치되는 곳이다.


/var

- 로그파일, 캐시파일, 잠금파일 등이 저장된다.



※ 참고자료

- 리눅스와 함께하는 라즈베리 파이. 92-105


Posted by SungHoon, Park
,

OS 배포판 정보 확인하기

스샷과 같이 배포판 종류, 버전, 계열 등을 확인할 수 있다.

예제) cat /etc/*-release



OS 비트 확인하기

64비트면 x86_64로 출력되고, 32비트면 i686 or i386이 뜬다.

예제) uname -m



Posted by SungHoon, Park
,

윈도우 PC와 버추얼박스로 설치한 우분투와 폴더공유하는 방법에 대해 정리한다.


1. 일단 버추얼박스에서 [설정] 클릭


2. [공유폴더] 클릭


3. 우측 [폴더추가] 클릭



4. 머신의 고유대상 폴더를 선택


5. 폴더이름 변경

 - 적절한 이름으로 변경. 이 이름은 마운트할때 활용됨

 - 자동마운트, 항상 사용하기 체크





그런다음 VirtualBox 우분투를 실행한 다음 터미널을 하나 띄운다.


6. df 명령을 통해 마운트된 정보 확인

- /media/sf_vbox_share로 공유폴더가 마운트된 것을 확인됨.

- 버뜨.. 해당폴더로 이동하게 되면 Permission 문제때문에 접근이 되지 않는다.



7. vboxsf 그룹에 내 계정을 추가

sudo adduser xxxxxx vboxsf



8. 재부팅


9. 재부팅후 sf_vbox_share 폴더에 접근이 가능하며, 파일저장이 되는 것을 확인할 수 있다.



10. 윈도우 PC에서도 D:\vbox_share에 접근하면 VirtualBox 우분투에서 저장한 파일이 확인된다.




끝..

Posted by SungHoon, Park
,

우분투를 설치한 후

vim을 통해 편집모드로 들어갔을 때 방향키랑 백스페이스를 누르면 ABCD 알파벳 문자들이 찍혀 불편하다.

왜냐하면 우분투 설치시에는 vim-tiny 버전이 기본으로 설치되기 때문이다.


vim-tiny버전을 vim-full버전으로 바꾸면 방향키, 백스페이스 문제는 해결된다.


full 버전 설치

- sudo apt-get install vim


설치후, 터미널을 종료한 후 다시 접속하면 방향키, 백스페이스가 정상동작하는 것을 확인할 수 있다.




Posted by SungHoon, Park
,