본문 바로가기

Linux39

[Linux] 파일의 종류 리눅스에서는 모든 디바이스를 보통의 파일인 것처럼 다룰 수 있다. 즉, 프로그램에서 정규 파일에 적용하는 입출력 연산을 디바이스 파일이라는 특수 파일을 통해 디바이스에도 같은 방법으로 적용할 수 있다. 파일의 종류 정규 파일 : 대부분의 파일이 정규 파일이며 텍스트 파일, 이미지 파일, 실행 파일과 같은 일반적 파일에 해당 한다. 텍스트 파일은 문서 편집기를 사용하여 내용을 보거나 편집할 수 있다. 디렉터리 : 파일이나 서브 디렉터리이 이름과 위치 정보를 가지고 있는 파일이다. 리눅스에서는 디렉터리도 파일로 취급한다. 심벌릭 링크 : 윈도우 운영체제에서 '바로가기'와 같은 것이다. 소프트링크 라고도 하며 절대경로 또는 상대 경로를 사용하여 다른 파일이나 디렉터리를 가르키는 파일이다. 블록 디바이스 : 블.. 2020. 11. 16.
셸 변수 셸은 '셸 변수'를 사용하여 정보를 저장할 수 있는데, 셀 변수는 기본적으로 문자열 정보를 갖는다. 변수를 설정하고 값을 지정하려면 등호(=)를 사용한다. 현재 사용 중인 셸에서 설정되어 있는 모든 변수를 확인하려면 set 명령을 사용한다. 환경 변수 환경 변수는 보통의 셸 변수와 다르게 현재 셸로부터 새로운 서브 셸이 만들어질 때 전달되는 변수를 의미한다. 셸 변수는 현재 셸에서만 사용 가능한 지역 변수라 하면, 환경 변수는 서브 셸에서도 사용할 수 있는 전역 변수라고 할 수 있다. 보통 환경 변수의 이름은 대문자를 사용한다. 설정된 환경 변수를 모두 확인하기 위해선 printenv 명령과 env 명령을 사용하면 모든 환경 변수와 환경 변수의 값을 출력한다. 환경 변수로 사용하기 위해선 'export .. 2020. 11. 16.
명령의 연결과 확장 리눅스의 셸의 강력하고 유용한 기능 중 하나는 '명령어와 명령어' 사이에 또는 '명령어와 파일' 사이에 출력과 입력을 연결시켜 조합할 수 있다는 점이다. 우선적으로 셸에서 사용되는 특수문자에 대하여 알아보자. 명령 치환 명령 치환은 명령의 결과를 인수로 사용하는 방법이다. 주어진 명령 전체를 그대로 실행하지 않고 지정된 부분의 명령을 먼저 해석한 후 전체 명령을 실행하는 것이다. $(command) 혹은 `command`의 형태를 가지고 있다. 다만 $() 형태를 사용하는 것이 가독성 부분에서 도움이 된다. 또한 명령어의 치환 결과를 셸 변수에 저장할 수 있다. 인용부호 인용부호는 빈칸을 포함하는 문자열을 1개의 인수로 사용할 때 사용되는데 특히 파일 이름에 빈칸이 포함되는 경우 필요하다. 따옴표의 종료.. 2020. 11. 16.
리눅스 표준 디렉터리 다양한 리눅스 배포판이 등장함에 따라 디렉터리 구조와 디렉터리의 사용방법에 차이가 생겨 리눅스 시스템의 관리나 응용 프로그램의 개발이 힘들어지게 되었다. 특별한 파일이 있더라도 디렉터리 구조에서 표준 위치가 정해지지 않았기 때문인데, 따라서 개발자나 관리자들 사이에 리눅스 파일 시스템 계층구조 표준(FHS:Filesystem Hierarchy Standard)에 관한 요구가 생겼다. 현재 대부분의 리눅스 배포판은 FHS에 맞춰 개발되고 있다. 이 표준에서 리눅스는 전체적으로 파일 시스템이 하나의 트리 구조로 정의되어야 한다. 리눅스 디렉터리 구조에서 중요한 표준 디렉터리를 설명하면 다음과 같다. 1. 루트 디렉터리(/) 마운트되는 모든 파일 시스템을 포함하는 디렉터리로, 파일 시스템에 존재하는 모든 파일.. 2020. 11. 12.
Advanced Package Tool을 이용한 jdk설치 다운로드를 하기 위한 저장소에 대한 주소가 등록된 파일이 존재합니다. cat /etc/apt/sources.list 이 파일 안에는 많은 주소가 존재합니다. focal은 버전의 코드네임입니다. main, restricted는 Canonical에서 지원하는 무료/유료 universe는 Canonical에서 지원하지 않는 무료 저장소입니다. 이러한 저장소를 검색해서 패키지 목록을 받아 옵니다. 설치할 수 있는 패키지 목록을 캐시와 합니다. 이러한 목록을 보기 위해서 apt-cache [options] 명령을 사용합니다. 예를 들어 jdk패키지를 보기 위해서 apt-cache pkgnames | grep jdk을 치면 저장소에서 다운받을 수 있는 패키지들입니다. 그중 openjdk-11을 다운로드하겠습니다. .. 2020. 9. 29.
[Linux]파일의 내용 확인 파일의 내용 보기 : more 리눅스 시스템에는 사용자가 읽을 수 있는 많은 종류의 텍스트 파일이 존재한다. 단순히 파일의 내용만 잠시 화면에 출력시키기 위한 명령인데 화면 단위로 끊어서 파일내용을 보여준다. more options files --more--에 존재하는 퍼센트는 문서전체중 화면에 나타난 비율이다. space Bar로 다음 페이지를 볼 수 있으며 q를 눌러 종료할 수 있다. 파일의 내용 보기 : less less는 more 명령에 기초하여 개발된 개선된 버전이다. more명령과는 다르게 스크롤되어 지나간 내용을 거슬러 올라가 확인이 가능하다. less options filename pageUp,Down 과 방향키를 사용할 수 있고 그 외 옵션들이 다양하다. head와 tail 명령 파일전체.. 2020. 9. 10.
[Linux]파일 시스템 접근 권한 일반 사용자 계정으로 리눅스 시스템을 이용하면 Permission denied라는 메시지를 받을 수 있다. 이것은 대상 파일 혹은 디렉터리에 대한 접근 이 허용되지 않아서 발생하는 오류 메시지이다. 리눅스에서 사용자는 자신의 파일 또는 디렉터리 중에서 다른 사용자가 어느 수준으로 접근이 가능하게 할 것인지를 정하여야 한다. ls명령어를 통해 rwxrwx 같은 9개의 비트를 본 적이 있을 것이다. 여기서 처음 3개의 비트에서 r은 소유자의 읽기, w는 소유자의 쓰기, x는 소유자의 실행 권한이 있다는 의미이다. 그다음 3개의 비트는 그룹의 구성원에게 주는 건한이며 마지막의 3개의 비트는 그 외 모두에게 주는 권한이다. 권한을 주지 않는 경우는 -로 표시된다. 읽기 쓰기는 알겠지만 실행 권한에 대해서 궁금할.. 2020. 9. 10.
[Linux]파일 시스템 탐색 리눅스 시스템은 계층적으로 구성된 디렉터리 구조에 파일을 보관한다. 계층적 디렉터리 구조란 트리 형태 안에 다수의 디렉터리가 존재한다는 의미이다. 여기서 각 디렉터리는 다수의 파일과 서브 디렉터리를 포함할 수 있으며 이러한 계층 구조에서 가장 상위의 디렉터리를 루트 디렉터리라고 한다. 윈도와 별개로 리눅스는 전체적으로 하나의 파일 시스템으로 관리되고 다루어진다는 점이다. 저장 장치마다 파일 시스템이 만들어지고 시스템에 마운트 된다. 디렉터리의 내용 출력 : ls 단연코 많이 사용되는 명령어이다. 디렉터리의 내용, 즉 파일과 서브 디렉터리 목록을 확인할 수 있고 다양한 속성을 확인할 수 있다. 파일의 종류 리눅스에서는 모든 디바이스를 보통의 파일인 것처럼 다룰 수 있다. 즉 프로그램에서 정규 파일에 적용하.. 2020. 9. 10.
사용자 계정 만들기 리눅스 시스템 관리자는 사용자 계정을 만들고 관리해야한다. 사용자 계정을 가지고 있어야 리눅스 시스템에 로그인해서 시스템을 사용할 수 있기 때문인데 사용자 그룹을 설정하면 한 번에 다수의 사용자에게 같은 권한을 부여할 수 있다. 계정을 생성하는 명령어는 두가지가 존재한다. 1) adduser - 실행시 기본 계정정보를 같이 생성해준다. 2) useradd - 계정만 생성하고 기타 다른 정보들을 수동으로 생성해 주어야한다. useradd useradd명령어를 사용해 계정을 생성하면 사용자의 홈 디렉터리를 만들고 기본 셸을 지정하고 사용자 ID와 그룹ID를 부여할 수 있다. 사용자 계정과 관련된 세세한 항목을 수정할 때 꼭 필요한 명령이다. 우분투에서는 root권한을 가진 명령을 실행할때 sudo를 붙여 실.. 2020. 9. 10.