Software Tech/DevOps
[Linux/Ubuntu] 리눅스는 무엇일까?
SuperDev
2025. 3. 29. 13:30
1. 리눅스(Linux)
리눅스는 Window와 Mac과 같은 운영체제 입니다.
추가적으로 더 알아보면 아래와 같은 것들도 할 수 있는 소프트웨어 입니다.
- 하나의 시스템에 다수의 사용자가 동시에 접속하고, 여러 개의 응용프로그램을 사용할 수 있습니다.
- 운영체제의 핵심인 커널과 내장된 응용 프로그램이 공개되어 있어, 수정해서 사용할 수 있습니다.
- 리눅스에서는 C언어를 사용하고 있어, C언어 컴파일이 가능하다면 쉽게 다른 시스템에 이식이 가능합니다.
- 용도에 따라 서버, 개발용, PC용 모두 사용 가능하며, 그에 맞게 다양한 배포판이 존재합니다.
리눅스 운영체제의 핵심으로 하드웨어랑 통신하는 리눅스 커널이 있는데,
이 커널은 C언어로 짜여져있기 때문에 컴파일이 가능합니다.
2. 우분투(Ubuntu)
그렇다면 리눅스와 함께 많이 보이는 우분투는 무엇일까요? 우분투는 리눅스를 수정해서 배포한 배포판 입니다. 대부분의 리눅스 배포판들이 서버용으로 사용되고 있는 것에 반해, 우분투는 개인 사용자와 데스크탑 환경에 최적화 되도록 사용자 편의를 중점으로 개발되었습니다.
3. 가상화와 클라우드
리눅스와 우분투를 알아보면 가상화와 클라우드에 대한 내용도 많이 찾아볼 수 있는데, 가상화 도구로 현재 많이 사용하고 있는 Docker도 리눅스 기반이며, 물리 서버의 공간을 공유하는 클라우드도 리눅스 기반입니다.
리눅스를 사용하는 이유는 클라우드 환경 제공을 할 때, 다양한 도구를 사용하면서 서비스간 호환 문제가 발생할 수 있는데, 리눅스를 통해 어느정도 해결할 방법이 있습니다. 오픈 소스이기도 하고, 보안이나 이식성이 높기 때문입니다.
4. 리눅스의 구조
이제 리눅스의 구조에 대해 알아봅시다.
리눅스는 Tree 형태를 가지고 있습니다. 루트 파일 시스템인 '/' 을 시작으로 하위 디렉토리를 거치는 구조 입니다.
또한 사용자 정보가 표시되는데,
- "root"는 계정 이름을 의미하고,
- "x"는 패스워드로 /etc/shadow 파일에 저장됩니다.
- "0"은 UID 번호인데, root는 슈퍼 User 이므로 0 으로 표시됩니다.
- 다음에 나오는 "0"은 해당 사용자가 소속된 그룹번호(GID)를 의미합니다.
- 사용자는 무조건 하나의 그룹에 포함되며, 다수의 그룹에 포함될 수 있습니다.
5. 리눅스의 기본 명령어
cd : 절대경로는 "/" | 상대경로는 "."(현재) | ".."(상위) 디렉토리를 의미 |
ls : ls는 현재 경로의 파일을 출력 | "ls -a" 옵션은 숨견진 파일을 포함 모두 출력 | "ls -l"은 상세 출력
cat : cat으로 파일 전체 내용 출력하기 | "q"로 빠져나감
wget : 특정 웹 주소로부터 파일 등을 다운로드 하기 위한 툴
curl : 웹 사이트 주소를 통하여 해당 페이지의 코드를 다운로드 하거나, api 연결, 파일 다운로드 등에 활용
툴을 설치하기 위해 "sudo yum -y install wget"을 사용하며, -y 옵션은 사용자 확인 메세지가 생략됨
기타 추가적인 리눅스 명령어들도 있으니, 실습을 통해서 하나씩 알아볼 생각입니다.
화이팅~!!
728x90