it - 궁금했던 것

conda, sudo, apt, pip,... 과 cli 명령어, 가상환경을 만드는 이유

030binfolder 2024. 2. 29. 10:12

sudo

리눅스(리눅스의 배포판 ubuntu에서도 사용) 및 macOS에서 슈퍼유저 또는 관리자 권한으로 명령어를 실행하기 위해 사용된다. "Superuser Do"의 약자이다.

 

`sudo`를 명령어 앞에 붙여 일반 사용자도 관리자 권한으로 작업을 수행할 수 있다.

예시) sudo apt update 또는 sudo rm -rf /

 

 

runas

 

Windows 운영체제에서 사용자 계정 또는 관리자 권한으로 프로그램을 실행하기 위해 사용되는 명령어. 윈도우에서는 주로 해당 프로그램 마우스 우클릭 > 관리자 권한으로 실행으로 하기 때문에 runas 명령어는 많이 사용하지 않는 것 같다. 

 

 

conda

Anaconda/Miniconda의 패키지 관리자이다. Python 패키지의 설치, 관리, 환경 관리 등에 사용된다. 또한 가상 환경을 만들어 독립적인 Python 환경을 구성할 때도 사용된다.

예시) conda install <패키지이름> 또는 conda create -n <가상환경이름>

 

 

pip

 

Python 패키지 인스톨러. Python 패키지를 설치, 업데이트, 제거할 수 있다. `pip`를 통해 Python Package Index(PyPI)에서 패키지를 다운로드하여 설치한다. pip(python 2.x용), pip3(python 3.x용)

예시) pip install <패키지이름> 또는 pip uninstall <패키지이름>

 

 

apt

 

Ubuntu 및 Debian 계열의 리눅스에서 패키지 관리를 위해 사용되는 명령어. Advanced Packaging Tool의 약자이다.

`apt`를 사용하여 소프트웨어 패키지의 설치, 업데이트, 제거 등을 할 수 있다.

apt-get도 있는데 apt과 큰 차이는 없으나 주로 자세한 설명과 세부옵션들이 필요할 때 사용한다고 한다.

예시) apt install <패키지이름> 또는 apt remove <패키지이름>

 

 

pip vs apt

 

pip와 apt 모두 패키지 설치를 도와주는 명령어지만 가져오는 패키지의 저장소 위치가 다르다.

Pip 또는 pip3는 pypi에서, apt의 경우는 우분투 저장소에서 패키지를 가져온다.

 

 

 

https://j8n17.tistory.com/52

 

conda와 pip, apt의 차이

개발을 하면서 패키지를 설치하는 경우가 많은데, 지금은 conda install, pip install을 사용해서 패키지를 설치하고 서버를 할당받았을 때는 apt install도 사용했었다. 여태까지는 그냥 필요하니까 설치

j8n17.tistory.com

pip과 conda의 차이점을 잘 정리해준 사이트. 이 사이트를 참고하여 요약함.

 

 

요약...? 정리

pip vs conda

 

pip은 python에 한정된 패키지 관리자인 반면에, conda는 python, java, C 등 다른 언어를 포함한 패키지 관리자이다.

기본적으로 conda로 설치하는것이 좋다. (처음부터 conda로 설치를 해주는 것이 좋다)

 

이유

1. pip과 conda의 패키지 빌드 방법이 다르기 때문이다.

pip은 cpp빌드에서 오류가 나는 경우가 생길 수 있지만 conda는 항상 os에 맞게 미리 빌드된 패키지가 설치된다.

이러한 이유로 최신 버전이 올라왔을 시 pip엔 있어도 conda엔 없는 경우가 생길 수 있다.

2.  conda로 업데이트하면 pip으로 설치된 패키지가 업데이트되지 않는다.

 

 

conda activate 가상환경이름

^ 으로 가상환경을 활성화했을 때, conda와 pip 모두 패키지 설치 시 해당 가상환경에 설치된다.

 

또한 pip이 아닌 pip2, pip3은 패키지 설치를 가상환경이 아니라 전역에 한다고 한다.

 

 

가상환경을 만드는 이유

결론적으로 pip(python)과 conda(anaconda)가 섞이지 않기 위해(버전관리가 안 되므로) 가상환경을 만들어 pip 따로, conda 따로 진행할 수 있도록 한다. 

 

 

CLI 명령어 모음

 

  window os macOS 및 Linux
현재 디렉토리의 파일 및 폴더 목록 dir ls
작업 디렉토리를 변경 cd cd
새로운 디렉토리를 생성 mkdir mkdir
파일을 삭제 del rm
파일을 복사 copy cp
파일을 이동하거나 이름을 변경 move mv
파일 내에서 특정 문자열을 검색 find grep
네트워크 상태를 확인 ping -
원격 서버에 안전하게 접속 - ssh

 

 

리눅스 CLI 명령어는 아래 사이트를 참고하면 될 것 같다.

https://ittrue.tistory.com/79

 

[Linux] 리눅스 CLI 기본 개념과 명령어 정리

CLI(Command-Line Interface) CLI는 가상 터미널 또는 터미널을 통해 사용자와 컴퓨터가 상호 작용을 하는 방식을 뜻한다. 리눅스의 터미널은 키보드의 입력과 모니터의 출력으로 모든 작업을 할 수 있다

ittrue.tistory.com

 

https://kimkmg.tistory.com/24

 

리눅스 기초 명령어 및 옵션 정리

자주 사용되는 리눅스 명령어 옵션 I : 파일들 나열해 줌 a : 경로 안의 모든 파일들 출력해 줌 (숨김파일 포함) R : 현재 위치한 디렉터리 의 하부 디렉토리 파일까지 모두 출력 h : 파일 크기(K, M, G

kimkmg.tistory.com

 

Linux, ubuntu CLI 명령어는 명령어 옵션이랑 함께 다시 정리해야 할 것 같다.