리눅스는 CLI(Command Line Interface)이며 명령어는 현재 머물고 있는 디렉토리를 대상으로 내려진다
설치 없이 실습하기
- 리눅스 실습 사이트 접속
- StartupLink 클릭
pwd
: 현재 디렉토리ls
: list segment, 현재 위치의 파일 목록 조회mkdir
: 디렉토리 생성touch
: 파일 생성cd
: change directory, 디렉토리 이동rm
: remove, 파일 삭제mv
: move, 파일 이동cp
: copy, 파일 복사도움말 명령어
--help
: 명령어에 대한 간단한 메뉴얼을 보여줌, 예)ls --help
man
: 페이지로 이동하여 상세한 메뉴얼을 보여줌, 예)man ls
ls
: 현재 위치의 파일 목록 조회-l
: 파일 상세정보-a
: 숨김 파일 표시-t
: 파일 생성시간순으로 표시(제일 최근 것부터)-rt
: 파일 생성시간순으로 표시(제일 오래된 것부터)-F
: 파일 표시 시, 마지막 유형에 나타내는 파일명을 끝에 표시cd
: 디렉토리 이동cd [디렉토리 경로]
: 해당 디렉토리로 이동cd ~
: 홈 디렉토리로 이동cd /
: 최상위 디렉토리로 이동cd .
: 현재 디렉토리cd ..
: 상위 디렉토리로 이동cd -
: 이전 경로로 이동touch
: 파일 생성touch [파일명]
: [파일명]
의 파일을 생성touch -c [파일명]
: 해당 파일의 시간을 현재 시간으로 갱신touch -t 202311221610 [파일명]
: 해당 파일의 시간을 날짜 정보(yyyymmddhhmm)로 갱신touch -r [파일A] [파일B]
: 파일B의 날짜 정보를 파일A의 날짜 정보와 동일하게 변경rm
: 파일 삭제rm [파일명]
: 해당 파일 삭제rm -r [폴더명]
: 해당 디렉토리 삭제rm -f [파일명]
: 해당 파일 강제 삭제mkdir
: 디렉토리 생성mkdir [폴더명]
: [폴더명]
디렉토리 생성mkdir [폴더A] [폴더B]
: 한 번에 여러 개의 디렉토리 생성mkdir -p [폴더A]/[폴더B]/[폴더C]
: 상위 디렉토리 생성 후 하위 디렉토리도 생성mkdir -m 777 [폴더명]
: 특정 퍼미션(권한)을 갖는 디렉토리 생성8진수 | 2진수 | 권한 | 의미 |
---|---|---|---|
0 | 000 | --- | 아무 권한 없음 |
1 | 001 | --x | 실행 권한만 있음 |
2 | 010 | -w- | 쓰기 권한만 있음 |
3 | 011 | -wx | 쓰기,실행 권한 있음 |
4 | 100 | r-- | 읽기 권한만 있음 |
5 | 101 | r-x | 쓰기,실행 권한 있음 |
6 | 110 | rw- | 읽기,쓰기 권한 있음 |
7 | 111 | rwx | 모든 권한 있음 |
cp
: 파일 복사cp [파일A] [파일B]
: 파일A를 파일B라는 이름으로 복사cp -f [파일A] [파일B]
: 강제 복사(이미 존재할 경우 기존파일을 지우고 복사)cp -r [폴더A] [폴더B]
: 디렉토리 복사, 폴더 안의 모든 하위 경로와 파일들을 복사mv
: 파일 이동mv [파일A] [파일B]
: 파일A를 파일B로 변경mv [파일A] /[폴더명]
: 파일A를 해당 디렉토리로 이동mv [파일A] [파일B] /[폴더명]
: 여러 개의 파일을 해당 디렉토리로 이동mv [폴더A] [폴더B]
: 폴더A를 폴더B로 이름 변경일반 사용자가 시스템 관리자와 같은 root 권한을 사용할 수 있도록 해준다.
sudo usermod -aG sudo 사용자
sudo apt-get update
nano
는 텍스트 기반의 편집기에 해당vi
도 있지만 초심자에게는 nano
추천nano
를 입력하면 아래와 같이 nano 에디터가 실행된다
^
: ctrl
을 의미^O
를 실행하여 파일명을 작성하고 enter
를 치면 hello.html
이라는 파일이 저장된다^X
를 실행하여 에디터에서 나온 뒤 확인해보면 hello.html
라는 파일이 생긴 것을 확인할 수 있다hello.html
을 편집하고 싶으면 nano hello.html
이라고 입력하여 에디터로 들어간 후 편집한다vi 에디터
컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성의 제거 과정을 자동화하는 소프트웨어 도구들의 모임
패키지 매니저란? 참고
리눅스의 패키지 매니저에는 apt
와 yum
등이 있다
apt
: Advanced Packaging Toolapt
뿐만 아니라 apt-get
이라는 명령어도 있다.
apt-get
의 옵션이 많기 때문에 자주 사용하는 옵션들을 추출해서 apt
가 만들어졌다.
apt | apt-get | 설명 |
---|---|---|
apt install <package_name> | apt-get install <package_name> | 패키지 설치 |
apt remove <package_name> | apt-get remove <package_name> | 설정파일을 제외한 패키지 파일 삭제 |
apt purge <package_name> | apt-get purge <package_name> | 설정파일을 포함한 패키지 파일 모두 삭제 |
apt upgrade <package_name> | apt-get upgrade <package_name> | 패키지 업그레이드(최신버전으로) |
apt update | apt-get update | 소프트웨어 페키지 목록 업데이트 |
관리자로 로그인하지 않은 경우에는
sudo
명령을 추가해야 한다
apt-get
대신 apt-cache
를 사용해야하는 기능이 있다.
apt-cache | apt | 설명 |
---|---|---|
apt-cache search <package_name> | apt search <package_name> | 패키지 검색 |
apt-cache show <package_name> | apt show <package_name> | 패키지 정보 표시 |
apt-cache policy | apt policy | 설치된 패키지의 우선순위 및 저장소 정보 표시 |
wget
웹에서 파일 다운로드를 하기 위한 명령줄 유틸리티
url을 통해 파일을 다운로드 받을 수 있다
wget http://example.org/file.tar.gz
익명 FTP를 통해 파일을 다운로드할 수 있다
wget ftp://example.org/file.tar.gz
--no-check-certificate
옵션을 사용하면 인증서 유효성 검사를 무시할 수 있다
wget http://example.org/file.tar.gz --no-check-certificate
-m
옵션으로 미러링을 설정하면 모든 웹사이트의 파일을 다운받을 수 있다
wget -m http://example.org/
다운받을 URL을 지정한 파일에서 찾는다
wget -i filename
-o
옵션으로 결과 파일을 지정하면 기존에 존재하는 모든 파일에 덮어쓰기를 한다
wget -q http://example.org/file.tar.gz -o filename
wget -b http://example.org/file.tar.gz
wget -c http://example.org/file.tar.gz
wget -limit-rate=128k http://example.org/file.tar.gz
wget -version
git
리눅스에서 개발된 분산버전관리 시스템
먼저 아래 사진처럼 git
이 설치되어 있는지 확인한다
설치되어 있지 않다면 패키지 매니저를 통해 다운받는다
sudo apt-get install git
해당 주소에 해당하는 오픈 소스 프로젝트를 해당 폴더에 복제한다
git clone [오픈 소스 프로젝트 URL] [폴더명]
생활코딩-리눅스 강좌
https://cocoon1787.tistory.com/717
위키백과 - 패키지 관리자
wget 명령어 사용법