나의 개발일지(김지헌)
우분투 기본 공부 본문
코드블럭
cd ~ - 제일 처음 접속하는 디렉토리 이동
[유저이름] 대괄호는 생략 가능
sudo - 사용자 변경 하는 것
관리자모드(슈퍼유저)
sudo -s
sudo su
[유저 만들기 /home에 저장됨]
sudo adduser [유저이름] - 대화형 작업 유저생성
->패스워드 입력하기
-> 새로운 값 또는 기본값을 사용할 꺼면 엔터
(enter로 항목 스킵가능) 이름 설정 -> 방 번호 -> 직장 번호 -> 집번호 -> 기타 -> Y
OR
sudo useradd -m [사용자명] <-이거쓰면 될듯
[sudo 사용 할 수 있도록 변경]
sudo usermod -a -G sudo [사용자명]
[비밀번호 변경]
sudo passwd [유저명] -비번 설정
passwd - 슈퍼유저 비번 변경
[삭제]
sudo deluser -> 사용자이름
[로그인]
su - [사용자명]
[그룹관리]
sudo addgroup - 대화형 작업 유저생성
sudo groupadd [그룹이름] - 옵션가능
[권한]
ls -l 목록 확인
[권한 변경]
u: owner
g: group
o: other (not owner, not group)
a: all
chmod o-r app.js
: app.js 파일의 other read 권한 삭제
chmod o+r perm.txt
: app.js파일의 other read 권한 허가
[리렉토리 목록확인]
ls -al -감춰진 목록 까지 보기 히스트 형식
[디렉토리 생성]
mkdir [폴더명]
[디렉토리 삭제]
rm [파일명]
rm -r - -r은 내용까지 삭제
[빈 파일 생성]
touch [파일명]
[파일 이름 수정 및 이동]
mv [파일위치 및 파일이름] [목적지 파일위치 및 파일 이름]
mv [원래 파일 이름] [바꾸고 싶은 파일 이름]
[파일 편집 및 생성]
nano [파일명] -수정 및 생성 가능 Ctrl + s(저장) Ctrl + x (나가기)
cat [파일명] - 파일 내용보기
[현재위치 확인]
pwd
[패키지 명령어]
apt-get update -패키치 목록 업데이트
apt-cache search [패키지명] - 찾기
apt-get install [패키지명] - 설치
apt-get upgrade - 업그레이드
apt-get upgrade [패키지명] - 업그레이드
apt-get remove [패키지명] - 삭제
항상 update 다음에 install 하기
[다운로드]
wget -O [저장할 파일명] [다운로드 url] -파일 다운로드
apt-get install git
git clone [소스코드url] [디렉토리명]
git clone --branch [브랜치명] [소스코드url]
git clone -b {branch_name} --single-branch {저장소 URL} 여러개의 브랜치가 있을경우
[디렉토리 구조]
/bin: 사용자가 사용하는 명령어 모음
/sbin: 관리자가 사용하는 명령어 모음
/etc: 프로그램 설정을 관리하는 디렉토리
/etc/init.d: daemon의 목적을 가진 프로그램들 있음.
/var: 내용이 바뀔 수 있는 파일들 모음
/tmp: 임시파일들. 컴퓨터가 꺼지면 날아간다.
/home: 사용자들의 파일들이 저장되는 디렉토리
/lib: /bin과 /sbin에 있는 프로그램들이 사용하는 라이브러리 모음
/usr: 유저가 다운받은 프로그램들 저장..
[IP]
ip addr - 컴 아이피 확인
curl ipinfo.io/ip : 퍼플릭 ip
cd ~ - 제일 처음 접속하는 디렉토리 이동
[유저이름] 대괄호는 생략 가능
sudo - 사용자 변경 하는 것
관리자모드(슈퍼유저)
sudo -s
sudo su
[유저 만들기 /home에 저장됨]
sudo adduser [유저이름] - 대화형 작업 유저생성
->패스워드 입력하기
-> 새로운 값 또는 기본값을 사용할 꺼면 엔터
(enter로 항목 스킵가능) 이름 설정 -> 방 번호 -> 직장 번호 -> 집번호 -> 기타 -> Y
OR
sudo useradd -m [사용자명] <-이거쓰면 될듯
[sudo 사용 할 수 있도록 변경]
sudo usermod -a -G sudo [사용자명]
[비밀번호 변경]
sudo passwd [유저명] -비번 설정
passwd - 슈퍼유저 비번 변경
[삭제]
sudo deluser -> 사용자이름
[로그인]
su - [사용자명]
[그룹관리]
sudo addgroup - 대화형 작업 유저생성
sudo groupadd [그룹이름] - 옵션가능
[권한]
ls -l 목록 확인(ex -rw-rw-r-- 1 test1234 test1234 59 Mar 17 01:54 app.js)
-rw-rw-r-- 1 test1234 test1234 59 Mar 17 01:54 app.js |
||||||
- | rw- | rw- | r-- | test1234 | test1234 | |
오너권한 | 그룹권한 | 그외 | ||||
1. type | 2. access mode (r: read,w: write, x: excute(실행) |
3. owner | 4. group | |||
- file : - dir : d |
[owenr 권한] r : read w : write x : excute(실행) - 권한 없음 |
[group의 권한] rw- |
[other의 권한 (!owner && !group)] r-- |
[ 권한 변경 (chmod - 체인지모드 )]
- : 삭제시 (ex. u-r , g-w
+ : 추가시 (ex. a+r , o+w)
r : read
w : write
x : excute(실행)
chmod [options] mode[ ,mode] file1 [file2...] -여러개 관리
chmod [누가]-[옵션] [파일명] - 권한 삭제
chmod [누가]+[옵션] [파일명] - 권한 추가
ex) chmod o-r app.js -오너 및 그룹이 아닌 사람들이 app.js파일을 읽지 못하게 하겠다.
[excute(실행)]
nano [파일명].sh ->
#!/bin/bash (빈 배쉬라는 프로그램으로 이 파일을 해석해라)
echo 'hi hi hi hi'
->저장 -> 실행 하기 ./[파일명].sh (에러뜸) -> /bin/bash [파일명].sh (정상)
[디렉토리 권한]
chmod [누가]-[옵션] [폴더명] - 권한 삭제
chmod [누가]+[옵션] [폴더명] - 권한 추가
ex) chmod o-r ./dir - 폴더의 w는 파일을 작성 금지(폴더내 파일 수정 가능),r ls못함, x 폴더 접근 금지
[Octal modes]
진법으로 계산하여 chmod 적용(2진법)
4 = 1*2^2 | 2 = 1*2^1 | 1 = 1*2^0 | ||||||
r : read | w : write | x : excute |
오너 | 그룹 | 그외 | chmod | ||
7 | r | w | x | rwx | rwx | rwx | rwx | chmod 777 |
6 | r | w | - | rw- | rw- | rw- | rw- | chmod 666 |
5 | r | - | x | r-x | r-x | r-x | r-x | chmod 555 |
4 | r | - | - | r-- | r-- | r-- | r-- | chmod 444 |
3 | - | w | x | -wx | -wx | -wx | -wx | chmod 333 |
2 | - | w | - | -w- | -w- | -w- | -w- | chmod 222 |
1 | - | - | x | --x | --x | --x | --x | chmod 111 |
0 | - | - | - | --- | --- | --- | --- | chmod 000 |
[디렉토리 목록확인]
ls -al - 감춰진 목록 까지 보기 리스트 형식
ls -l
[디렉토리 생성]
mkdir [폴더명]
[디렉토리 삭제]
rm [파일명]
rm -r - -r은 내용까지 삭제
[디렉토리 안에 모든 파일 권한]
폴더내 모든 파일,폴더 권한 옵션 -R
chmod -R [누가]-[옵션] [폴더명] - 권한 삭제
chmod -R [누가]+[옵션] [폴더명] - 권한 추가
[빈 파일 생성]
touch [파일명]
[파일 이름 수정 및 이동]
mv [파일위치 및 파일이름] [목적지 파일위치 및 파일 이름]
mv [원래 파일 이름] [바꾸고 싶은 파일 이름]
[파일 편집 및 생성]
nano [파일명] -수정 및 생성 가능 Ctrl + s(저장) Ctrl + x (나가기)
cat [파일명] - 파일 내용보기
[현재위치 확인]
pwd
[패키지 명령어]
apt-get update -패키치 목록 업데이트
apt-cache search [패키지명] - 찾기
apt-get install [패키지명] - 설치
apt-get upgrade - 업그레이드
apt-get upgrade [패키지명] - 업그레이드
apt-get remove [패키지명] - 삭제
항상 update 다음에 install 하기
[다운로드]
wget -O [저장할 파일명] [다운로드 url] -파일 다운로드
apt-get install git
git clone [소스코드url] [디렉토리명]
git clone --branch [브랜치명] [소스코드url]
git clone -b {branch_name} --single-branch {저장소 URL} 여러개의 브랜치가 있을경우
[디렉토리 구조]
/bin: 사용자가 사용하는 명령어 모음
/sbin: 관리자가 사용하는 명령어 모음
/etc: 프로그램 설정을 관리하는 디렉토리
/etc/init.d: daemon의 목적을 가진 프로그램들 있음.
/var: 내용이 바뀔 수 있는 파일들 모음
/tmp: 임시파일들. 컴퓨터가 꺼지면 날아간다.
/home: 사용자들의 파일들이 저장되는 디렉토리
/lib: /bin과 /sbin에 있는 프로그램들이 사용하는 라이브러리 모음
/usr: 유저가 다운받은 프로그램들 저장..
[IP]
ip addr - 컴 아이피 확인
curl ipinfo.io/ip : 퍼플릭 ip
'공부' 카테고리의 다른 글
초기 세팅 (0) | 2023.04.03 |
---|---|
로드밸런서 (0) | 2023.03.14 |
MYSQL 우분투 설치 및 명령어 (0) | 2023.03.13 |
리눅스 명령어 및 EC2설정 NginX (0) | 2023.03.13 |
공부 (0) | 2023.03.13 |