July 02, 2000
리눅스는 서버 환경에 원격으로 접속해서 원하는 작업을 할 수 있는 운영체제입니다.
GUI 환경 보다는 CLI 환경을 주로 사용하며 명령어에 익숙해진다면 보다 능률좋은 작업을 진행할 수 있습니다.
다중 사용자가 원격으로 접속해 사용하는 멀티유저 환경을 지향하는 이 운영체제는 어떻게 쓰이는지 보겠습니다.
리눅스가 어떻게 쓰이는지 직접 확인해보기 위해 리눅스를 설치합니다.
가상머신 Virtual Box, Parallels Desktop, Vmware 등 중 하나를 골라 먼저 설치합니다.
저는 맥 환경인데 유료는 페러렐즈, 무료는 vmware가 사용하기 괜찮았습니다.
ubuntu 공식 홈페이지에 가면 확장자가 iso인 disk image를 설치할 수 있습니다.
가상머신에 해당 파일을 설치해줍니다.
* * * * * CMD
# m h dom mon dow command 다섯가지 키워드로
# 일정한 시간마다, 일정한 시각에 특정 명령을 수행할 수 있습니다.
crontab -e # 자동화 명령을 작성할 편집기를 호출합니다.
crontab -l # 작성한 자동화 명령을 들여다봅니다.
crontab -r # 자동화 명령을 초기화시킵니다.
sudo scp -r 가상환경이름@ip:/가상환경path 로컬path
$chmod a-rwx sample
$ls -l sample
---------- 2 unixguy unixguy 96 Dec ~~~~
ls -l 명령어를 출력할 때 앞에 붙는 drw-rw——와 같은 문구도 다음과 같이 해석할 수 있습니다.
기존 유닉스는 어셈블리어를 사용해 기종 간 호환이 잘 되지 않았습니다.
이 문제는 후에 C언어로 재작성되며 무료로 배포되면서 여러 OS들의 모체가 되었습니다.
후에 GNU(GNU is Not Unix) 프로젝트가 시작되었으나 커널이 존재하지 않아 핵심이 빠진 상태였습니다.
이 때 GNU시스템에 적합한 커널이 개발되고 있었는데 이것이 리눅스였습니다.
리눅스는 최대한 확장 가능하고 어떤 인터페이스에도 종속되지 않는 방향을 지향했습니다.
결과적으로 뛰어난 신뢰성과 다양한 사용자 지원체계 등이 강점인 OS가 되었습니다.
sudo apt install python
pwd #현재 위치를 확인합니다.
/home
cd /backup #위치를 이동합니다. change directory
~/backup$pwd
/home/backup
cd ../ #상위 폴더로 이동합니다.
ls #ls는 현재 위치 파일의 list를 출력합니다. 여러 옵션을 사용할 수 있습니다.
ls -al #모든 정보 출력
cat file #file의 내용을 확인합니다. concatenate
cp fileA fileB #fileA를 copy해 fileB를 만듭니다.
grep [-opt][pattern][file] # 검색합니다.
#-r, -i, -v 또는 -l 과 같은 옵션을 줘서 상세한 검색을 합니다.
zip fileA.zip fileB # fileB의 내용을 fileA.zip이라는 이름으로 압축합니다.
tar
gzip # 압축에는 여러 명령어가 존재합니다.
#!/bin/sh
ls -al
ls -l
ls