카테고리 없음

ABC 부트캠프 AI 파일럿 1기 MLOps 51일차 : 리눅스 기초부터 ML 서버운영까지

개발 기록자 2026. 10. 15. 17:20

 

git bash -> 클라이언트, 로컬


ubuntu   -> wsl

 

 

git의 수업은 끝났고 오늘부터 리눅스의 ML서버 운영을 배운다.

 

 

깃을 배우며 알게된 익숙해진 명령어가 있었다.

 

컴공과에서는 운영체제만 1년을 배운다.

 

 

운영체제가 없으면 PC는 아무것도 못한다.

 

커널은 운영체제의 핵심 역할이자 대부분의 성능이라고 볼 수 있다.

 

밑에가 로우레벨, 위가 하이레벨

 

 

 

 

오픈소스 생태계 때문에 리눅스를 사용하는 게 가장 크다.

 

 

 

 

쉘 배포판 종류 : power shell(윈도우), Bash(리눅스)

요즘 개발자들은 z shell, fish shell을 자주 사용한다 

 

 

&& 명령어는 앞의 명령어가 성공할 경우 뒤에 명령어가 시행되도록 한다.

 

 

l : 정보를 길게 보여준다. (long)

h: 사람이 이해하기 쉽게 함

 

링크 : 윈도우의 바로가기 기능과 유사하다.

 

윈도우에도 권한 기능이 있다.

 

 

 

절대경로와 상대경로를 재복습을 해보았다.

 

 

파일이 없는 경우 : 빈 파일을 생성할 수 있다.

파일이 있는 경우 : 내용은 그대로고 수정 시각만 갱신된다.

 

cp 기능은 copy라서 나온 말인데,

요즘은 가독성을 위해 변수명도 풀네임으로 보여주는 추세이다.

 

 

i는 대화식이라서

덮어쓰기 전에 확인하는 문구가 나온다.

 

mv는 폴더 이동과 이름 변경 둘 다 가능하다.

 

 

 

 

cat은 파일 하나를 다 보여준다

less는 페이지를 나눠서 보여주기에 페이지별 볼 수 있다.

 

 

실무에서는 tail을 많이 사용한다.

log를 확인하기 쉽기 때문이다.

 

운영자 입장에서는 로그파일을 잘 남기는 게 중요하다.

 

nano는 vi의 대체품이다..

 

 

vi랑 vim이 동일하다고 보면 된다.

기존 vi를 더 편리하게 만든 것이 vim이다.

 

 

이것은 내부망 ip이다.

 

윈도우에서는 ipconfig를 사용하면 알 수 있다.

 

ssh <ubuntu이름>@<ubuntu내부망ip>

 

 

$$는 쉘의 프로세스 아이디를 가르키는 특수한 용어다

잘 몰라도 된다 ~

 

사용자 계정 정보를 알 수 있는 명령어

 

컴퓨터의 이름을 알 수 있는 명령어

 

 

memo.txt를 touch했다.

 

 

 

nano를 이용해서 들어갔다.

^는 ctrl이라는 의미이다.

 

cat을 이용해서 적어둔 것을 출력해보았다.

 

 

less를 이용해보았다.

 

/전에

대문자 N 앞, 소문자 n 뒤

 

q는 밖으로 나가기 

 

 

less를 사용해보았다.

스페이스바 : 다음페이지

b : 이전 페이지

대문자 N 앞, 소문자 n 뒤

/ 검색가능

q: 밖으로 나가기

 

 

 

퐁 몇줄인지 

 

cp를 실습해보았다.

 

복사후 nano로 docs/GUIDE.md를 수정하였다.

 

 

docs 폴더와 backup 폴더의 GUIDE.md를 비교해보았다.

 

 

 

 

 

 

각각 확인

 

 

폴더별 확인

 

 

 

 

 

 

 

파티션이란?

파티션은 하드디스크 용량을 여러개로 나누는 것을 파티션이라고 한다

 

 

 

사용자가 사용하는 일반 프로그램 

 

윈도우의 환경변수(path)와 동일한 역할인가?

 

로그파일이 var 밑에 있는 것이 일반적인 관례이다.

 

 

apt의 단점 : 너무 보수적이다

서버의 안전성을 위해서 업데이트가 너무 느리다

 

매우매우매우매우매우매우 중요하다.

 

 

 

 

 

x : 실행할 수 있는 권리

디렉터리에 x가 없으면 폴더에 들어갈 수 없다

 

예외 : root는 다 할 수 있다 !

 

권한을 숫자로 보는 것

 

4 2 1

r w x

 

rwx : 7

rw : 6

rx : 5

 

 

644가 가장 기본적인 권한이다

 

755,700,600을 자주 사용한다.

 

 

777은 위험하다.

 

chmod는 매우매우매우 자주 사용된다.

 

 

+는 권한 부여

-는 권한 빼기

 

644라고 숫자로 부여하면 바로 부여가 된다.

 

u+x는 user에 실행권한(x)만 추가하는 것이다.

 

일반적으로 숫자를 부여하는 것을 많이 사용한다.

 

chown : 오너를 바꾸는 것

chgrp : 그룹을 바꾸는 것

 

이 명령어를 사용할 때는 주의해야한다.

 

이 명령어는 sudo계정(임시 관리자)만 사용이 가능하다.

 

 

 

 

이 시스템에 등록된 사용자 정보를 보여준다. 

 

root는 0으로 시작하고

사용자 계정은 1000으로 시작한다.

 

이 명령어를 사용하면

이 시스템에 어떤 사용자가 포함되어있는지 확인이 가능하다 !

 

id 를 입력하면 sudo가 있는 것을 확인할 수 있다.

sudo는 root관리자의 권한을 실행할 수 있다.

 

보안은 권한을 최소화하는 것이 좋다

사용자가 할 수 있는 최 소 한 의 권 한

 

sudo는 명령어가 기록으로 남는다

 

$는 내꺼

#은 관리

 

sudo -i --rooot를 사용하면 관리자로 변경된다

 

 

sudo 명령어를 입력하기 전에는 install htop을 못했는데

sudo 명령어를 입력한 후에는 되는 것을 볼 수 있다.

 

부등어 > 

파이프 |

 

표준 스트림

터미널 입장에서의 표준스트림

 

 

 

 

 

^단어 : 이 단어로 시작하는 줄

단어$ : 이 단어로 끝나는 줄

 

 

find도 많이 사용된다.

 

옵션만 알면 매우 유용하게 사용할 수 있다.

자주 사용하는 몇개만 근육지식으로 만들면 좋다.

 

 

 

 

이거는 알아두면 좋다

 

ln : 링크 만드는 명령어

심볼릭 링크는 윈도우로 비유하자면 바로가기 같은 느낌이다

 

하드 링크를 배우고 나니까 대충 상상가는데

C언어..? Python..?? 자바에서 배운 무언가가 떠오른다.

 

나의 홈 디렉토리가 어떤 하드디스크에 마운트 되어있는지 확인

 

 

 

텍스트파일은 rwx 중 x의 권한이 있다면

그 x를 실행하면 어떻게 되는지 궁금했다.

 

교수님께 여쭤보니

txt 파일은 실행해도 아무런 반응이 없다고 하셨다.

실행되는 파일의 형식이 아니라고 한다.

 

파일을 실행을 할 때는 ./파일경로/<실행할 파일>을 하면 된다고 한다.

 

아 그래서 tmux를 실행할 때 .

/ <실행할 파일> 으로 진행했구나?! 싶었다.

깨달음을 얻었다~ ~ ~

 

터미널에 따라서 .앞에 bash나 다른 명령어를 붙여야할 수 있다고 하셨다.

 

 

모두 644인데 

다른 교육생 중 한분은 664?가 되었다고 한다. 

umask 명령어를 사용하였더니 교육생의 umask 값만 달랐다.

umask는 666에서 뺀 값이다.

디렉토리는 777

파일은 666

 

 

오늘의 tip : 괄호 박스를 주면 소괄호 내에서만 영향을 준다.

 

 

 

현대 개발 워크플로우의 복잡성을 해결하기 위해 등장한 차세대 올인원 CLI 개발 프론트엔드 도구

 

 

 

빌드 : 우리가 만든 코드를 컴퓨터가 이해할 수 있도록 하는 것

린트 : 쓸모없는 코드는 관리하고 잘라내는 것

 

Rust 기반이라서 속도가 굉장히 빠르다.

 

 

 

Rust 언어로 작성한 올인원 파이썬 패키지 및 프로젝트 관리자

 

최근 머신러닝에서는 대부분 UV를 쓴다

많은 프로젝트에서 많이 이전하고 있다.

 

 

패키지 락킹 : 프로젝트 내에서 라이브러리 버전을 고정시켜두는 것

 

 

 

그간 requirement.txt를 자주 사용했는데

요즘은 pyproject.toml 를 사용한다고 한다.

 

 

 

 

 


GIT에 좀 익숙해졌나 했는데 또 다시 새로운 것들을 배웠다.

끊임없이 뇌에 새로운 지식들을 집어넣고 있다.