- 실제로 로봇 과정은 여러가지 분업해서 개발해야하는 경우가 많음
- 엔진, 센서, 운영체제 등등을 분업함
- data 수집 및 crawling 및 시각화 python 수업
- GUI 수업이 필요함 thread 연습하기 프로그래밍
- 자율주행도 해야함
- 수업은 따라가도 프로젝트를 따라가기 어려움. 실제로 내가 공부하고 원하는 것을 해야함.
- 모르는 것을 찾는 능력도 사용해야함환경설정
ℹ️ Ubuntu 설치
- https://releases.ubuntu.com/jammy/
- Desktop image 를 설치해주면됨
- etcher.balena.io/#download-etcher
명령 프롬프트 - sudo add-apt-repository universe
- sudo apt install libfuse2
2개의 라이브러리를 설치했으면 위의 balena를 활용해서 아래와 같이 Ubuntu환경을 Flash 가능함
이때 USB는 꼽은 상태에서 진행하면 됨
- ❗ 간혹 balena 프로그램을 설치했음에도 위와같이 Flash 파일이 안뜨는 경우가 생김 exe 클릭해도 실행이 안됨 그러한 경우 위의 Download Etcher에서 Debian (.deb)를 클릭
- sudo apt install ./balena-etcher_**_amd64.deb
- 위 명령어를 prompt를 넣어서 직접설치해주면 됨
- 이후 Ubuntu를 설치하기위해서 usb를 꼽은 상태에서 BIOS를 들어가서 1순위 우선순위로 start
- 설치시 유의사항이 Normal installation하고나서 download updates while installing Ubuntu + Install third-party software for graphics and Wi-Fi hardware and additional media formats를 선택하여 진행
ℹ️ Ubuntu 환경
- sudo apt update
- 평소에 update를 잘하기
- ❗ sudo apt update 시 Error
- E: Could not get lock /var/lib/apt/lists/lock. It is held by process 1648 (packagekitd)
- N: Be aware that removing the lock file is not a solution and may break your system.
- E: Unable to lock directory /var/lib/apt/lists/
- 👍 sudo rm /var/lib/apt/lists/* -vf
- 위 명령어 입력한 이후에 sudo apt update하면 위의 error가 해결이 됨
sudo rm /var/lib/apt/lists/* -vf
명령어는/var/lib/apt/lists/
디렉토리 안의 모든 파일을 강제로 삭제하는 명령입니다. 이 명령어는 주로 APT의 목록 파일을 정리하여 패키지 목록을 새로 고칠 때 사용될 수 있습니다.- 이후 sudo apt update 진행하면 업데이트됨.
- sudo apt upgrade
- sudo ubuntu-drivers autoinstall
ℹ️ terminator 다운로드
- sudo apt install terminator
- property - scrolling - infinity
- wget --version
- sudo apt install wget
- wget dpkg ~ chrome 설치관련 구글 검색
- defalut application에서 web을 chrome으로 설정
📌평소에 정리하는 습관을 들여야함
📌workspace에서 dev_ws 해당 폴더등에 구분하는것이 중요함
📌code는 document가 아님 별도의 폴더를 구분해야함
📌확장이 가능한 구조로 잘정리해서 정리하는 것
📌workspace
- project
- source
- date
- driver
📌User - home 밑에 workspace를 만들기
- ~이 home을 의미함
- venv 가상환경을 home 밑에 만들기
- workspace에 venv를 만드는것이 아니고
- venv에 code를 작성하는 것도
📌python 가상환경을 default로 사용함
- https://www.w3schools.com/
- c++은 다른 사이트에서 공부하는 것을 권함
- python, SQL 공부하는데는 괜찮음
- python tutorial에서 Python Inheritance까지는 최소한 python 기초를 한달안에
📌개념이 없이 코딩만 하고 있는지 여부를 면접에서 파악을 하게됨
📌포트폴리오가 뛰어나지 않으면 그곳에서 처내지게됨. 그래서 좋은게 정보처리기사 자격증이 있으면 좋음. 컴공에서 다루는 CS 개념을 문제가 나오기 때문에 이것을 공부했다는 것, 용어를 알고 있다는 느낌을 줄 수 있음.
📌시험 시간이 맞지 않을 수 있으니 미리미리 준비해두고, 회사다니면서도 자격증이 있으면 도움이 됨
ℹ️ 가상환경
- opensource기반으로 작업을 하기때문에 버전관리를 하는것이 좋음
- releases가 하나의 버전으로 잘 배포가 된것이 아님.
- 각각이 구동되는 환경이 달라지기 때문에 가상환경으로 버전을 나눠서 관리해주는 버전관리가 필요함
ℹ️ 클라우드 : 데이터센터에서 하나의 큰 리소스를 일부 빌려주는 것
- pip python installer는 os에 설치되는 것임
- python installer를 사용해서 python을 사용하는 것임
- system(OS)에서 pip install 왠만하면 하지 말기 base에 너무 많은 파일이 설치가 되면 느려짐
- venv에서는 sudo를 하지 않기 system에 설치가 됨
ℹ️ Jupyter notebook
- 개발환경이라고 볼 수는 없고 Markdown을 포함한 결과를 제시하고 있기에 문서라고 볼 수 있음
- 스터디할때 활용하면 좋음. 이것은 학습용이고 개발용은 아님
~/venv/
VS code에서 자주 발생하는 문제 : 가상환경 설정시 venv 글씨가 깨져보이거나 안보이는 경우가 많음.
연습, 배운내용 정리하기
✅ubuntu 설치하기 위해서 balena 설치 및 IOS 이미지 파일 설치
- ubuntu 이미지 파일을 flash하기 위해서 설치할 파일
- 22.04 Ubuntu image file download
- 설치 이미지 flash 툴인 balena ETCHER download ETCHER FOR LINUX X64 (64-BIT) (APPIMAGE)
- 다운로드가 느리거나 실행이 안되는 경우에 Debian (.deb) packages 에서 아래 명령어 실행
- sudo apt install ./balena-etcher_**_amd64.deb
- Appimage 실행을 위한 라이브러리 설치
- sudo add-apt-repository universe
- sudo apt install libfuse2
- balenaEtcher.Appimage 속성 변경 Allow executing file as program
- Bios에서 USB를 부팅 1순위로 놓고 설치
- 설치 시 언어선택 English
- Normal installation
- 전체 파일 지우고 다시 설치
- third party 설치 --> display, wifi, bluetooth와 같은 driver 설치
✅sudo를 사용하여 terminator 다운로드
- sudo apt install terminator
- sudo 명령어를 사용하면 os에 terminator가 설치가 됨
✅wget를 사용한 구글 크롬 다운로드
- sudo apt install wget
- wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
- sudo dpkg -i google-chrome-stable_current_amd64.deb
- sudo apt install ./google-chorme-stable_current_amd64.deb
- ❓ 위 둘의 명령어의 차이는 뭐지?
- 둘 다 설치하는데는 상관없지만 향후에 의존성 오류, 시스템 복구 및 문제해결, 패키지 파일 관리 등등에서 dpkg만이 할 수 있는 것들이 있음
- 위의 명령어를 사용하여 deb 패키지를 다운받음
- . dot이 의미하는 바는 현재 폴더의 위치를 말함
- .. two dot이 의미하는 바는 한단계 상위폴더를 말함
✅주기적으로 해주어야 할 것들
- sudo apt update
- sudo apt upgrade
- ❓ update와 upgrade는 어떠한 차이지?
- update는 해당 패키지 목록을 업데이트 하며, 설치는 따로 하지 않음
- upgrade는 해당 패키지의 버전을 최신상태로 업데이트 하는 것
✅가상환경 설정하기위한 폴더 만들기
- mkdir venv
- 위 명령어로 환경파일을 저장할 폴더를 생성할 수 있음.
- ~/ 물결표시가 의미하는 바는 system/user_name/
✅pip installer 설치하기
- 현재 버전 찾아보기 : pip3 --version
- sudo apt install python3-pip
✅python3 가상환경에서 설치하기
- python3 -m venv ~/venv/eda_venv
✅sudo apt install 과 pip install 과의 차이점 설명하기
- sudo 명령어를 사용하면 어떠한 폴더에 있더라도 해당 OS에 설치가 완료됨
- pip install의 경우에는 해당 base 또는 가상환경에 activation 되었을때 해당 환경에 설치가 됨.
✅한글설정을 추가할때 유의해야할 것들
- Keyboard에서 한국어를 추가한 뒤에 Hangul이라고 써져있는 Korean을 추가해야함. 만약 해당 Hangul이 안써져 있는경우에는 재부팅후 선택창이 생김
'TIL > 2024TIL' 카테고리의 다른 글
24-05-26~06-01_TIL (0) | 2024.05.26 |
---|---|
24-05-19~25_TIL (0) | 2024.05.19 |
24-05-12~18_TIL (0) | 2024.05.18 |