오전
repositories : repositories란 개인 Github 계정에 파일이나 폴더를 저장해 두는 저장소를 의미한다.
리눅스 터미널 명령어
최신버전 업데이트 작업
1 .sudo : 현재계정에서 root권한을 사용하여 명령어를 쓸 때 사용. 관리자 권한 잠깐 획득
멀리떨어져있는 상태에서 작업하는게 보통
통신접속을 통해서 제어하는게 보통
다른pc에 접속하려면 ip가 필요하다.
멀리서 관리하기 위해
- ssh Service install : 서버 설치 명령어
sudo apt isntall openssh-server
apt :리포지토리로부터 뭔가를 추가하거나 지우려 할 때 사용하는
sudo systemctl status ssh 설치상태확인
- 방화벽 활성화 작업
sudo ufw allow ssh : 방화벽 활성화 허용
sudo systemctl enable ssh 서버용프로그램 자동실행 될 수 있도록 하는거
sudo su : 관리자 모드
putty download 클라이언트용 프로그램
64비트 다운받기
host name : 접속해야할 ip 넣기 (리눅스의 네트워크 설정에서 할당한 ip주소를 넣어준다)
Saved Sessions 에 정처산기Linux 입력(이름)
Load 정처산기 linux 실행.
글꼴을 consolas 추천하는 이유 : 0과 영문 O가 구분이 잘 됨.
리눅스사용을 추천하는 이유 : 무료 , 오픈소스(원하는 형태의 리눅스를 만들 수 있음)
C언어 → 플랫폼에 독립적 사용 #현대 와서는 그렇게 의미가 있지 않음
@ : at (.같은뜻)
~ : 틸드 ,사용자의 작업공간이다 라는 뜻?
$관리자인지 일반user인지 구분해주는 문자 #가 관리자 계정 $가 일반계정
shell : 명령어 해석하는 프로그램
/ : 폴더의 위치를 구분
비번바꾸기 passwd user1
비번 2번 적기
ifconfig : 네트워크 확인 명령어
pwd(Print Working Directory) : 현재 위치 확인 명령어
cd(Change Directory) : 디렉토리 변경 명령어
사용자계정 : root 계정
상위 폴더 : root directory
cd : 절대경로, 상대경로 이용하는 방식
경로 앞에 /붙어있으면 절대경로 없으면 상대경로 /가 최상위디렉토리 !
리눅스 명령어 → [명령어 -옵션 -경로] 가 보통 기본값
[옵션]
- a : 모두보기 (숨김파일도)
- -l : 자세히 보기
- -R : 하위까지 보기
- -d : 디렉토리 보기
ls : 디렉토리 목록 확인
ls /etc/ ls -l /etc/ 법칙 1 [명령어][옵션][타겟] ls -al /etc/ 법칙 2 명령어의 옵션은 조합이 가능하다 ls -Ral /etc/ cd /etc ls -l 법칙 3 상대경로에서의 작업은 생략이 가능하다. ls -ld /etc
l : 링크파일
dir : 디렉토리파일 (ls랑 거의 비슷한 명령어라고 한다. 그러나 ls에서 더 많은 기능을 제공하기 때문에 대부분 ls를 사용한다.)
r : 일반파일
-p : 상위디렉토리 포함 생성
[실습] Mkdir /home/test
Ls -l /home
Mkdir /home/heath/a/b (x) Mkdir /home/heath/a Mkdir /home/heath/a/b
Ls -al /home/heath/a Mkdir /home/test/c/d (x) Mkdir -p /home/test/c/d/
mkdir(Make Directory) : 디렉토리 생성 명령어
mkdir -p ./test4/a/b/c : c를 만드려 할때 상위폴더가 없다면 -p를 입력하면
상위폴더까지 같이 만들어준다 (없으면 안됨!)
touch 4 5 6 : 상대경로에서 파일 만들기 (현재폴더에서)
[옵션]
- d 00:00 : (date time) 시간
- t YYYYMMDDHHmmss : 날짜시간 변경
[환경] mkdir /touch cd /touch
[실습]
touch /touch/1 touch 2
touch /touch/3 4 ./5 법칙 4 띄어쓰기시 새로운 옵션 및 경로가 지정된다.
touch -d 12:12 1
touch - t 201601010101 6 날짜시간 지정 빈파일 생성
cf) stat(파일 상태확인명령어) 6 하면 해당 파일의 변경날짜 확인
man(manual) : 명령어 정보 확인
touch :파일생성, 파일의 시간을 변경
touch /home/test1/2 /home/test1/3 : 한 칸 띄우고 치면 여러개를 만들 수 있음
시간변경 명령어: touch -t 199901011200 12 (YYYYMMDDHHMM) (파일이름)
cp : 파일복사 명령어
-p : 보존복사 : 원본 파일의 소유주, 그룹, 권한, 시간 정보들을 그대로 보존하여 복사
-r : 디렉터리 복사 :일반 파일이면 복사, 원본이 경로면 그 경로를 따라 경로 안에 있는 모든 하위 경로, 파일 복사
파일 여러개 복사
cp /home/test1/6 /home/test1/7 /home/test1/8 ./(현재 디렉터리라는 뜻) :상대경로
cp /home/final/12 /home/final/15 /home/back/ : 절대경로 (마지막폴더에 복사함)
하면 한번에 여러개 복사됨
오후
mv : 파일 디렉토리 이동(삭제도 하고 생성도 함 , 삭제보다는 높은 권한)
mkdir /mvfile /mvtest
cd /mvfile
touch 1 2 3 4
mkdir a b c
cd /mvtest
rm(remove) 파일,디렉토리 삭제
[옵션]
-f : 강제 삭제
-r : 디렉토리 삭제
-i : 질의(y/n)
[환경]
mkdir /rmtest
cd /rmtest
touch 1 2 3 4
mkdir a b c
find : 파일,디렉토리 검색하는 명령어
find 파일&디렉토리 검색
- `------------------------- [옵션]
name : 파일/디렉토리명 검색
perm : 지정된 퍼미션 검색
size : 파일 크기가 일치하는 파일 찾기
type : 파일 형식 지정함
exec : 검색 결과를 해당 명령어로 실행 하는 옵션
o : 복수 옵션 적용
type : 파일 유형검색 (파일 or 디렉토리)
atime n : n일 전에 엑세스한 파일 찾기, +n 또는 -n 형식으로도 사용가능
mtime n : n일 전에 마지막으로 수정된 파일 찾기, +n 또는 -n 형식으로도 사용가능
newer : 지정된 파일 이후 생성된 파일 찾기
used n : 변경된지 n일이 지난 모든 파일 찾기
uid : 지정된 UID를 가진 파일 검색
gid : 지정된 GID를 가진 파일 검색
group : 지정된 그룹을 가진 파일 검색
user : 지정된 소유자가 소유한 모든 파일 검색
cat : 문서 파일안의 내용을 확인 (행수도 같이 출력)
cat /etc/passwd (etc 폴더안에 passwd 의 내용을 보겠다 !) #행 수 없이
cat -n /etc/passwd 행수 나오게!
head : 위에서부터 기본10줄 표시
head -7 /etc/a (a의 위에서부터 7줄을 표시하겠다)
tail : 밑에서부터 기본10줄 표시
tail -7 /etc/a (a의 위에서부터 7줄을 표시하겠다)
more : 화면 크기만큼 출력
리다이렉션
해당 파일의 내용을 다른 파일에 적용시키고 싶을 때 사용하는 명령어 < , >를 사용한다.
시험은 표준출력 리다이렉션만 나옴!
cat > ./a : a라는 파일안에 내용을 넣겠다.
쓸 때마다 계속 들어감 !
cat >> a : a안에 내용을 유지하고서 그대로 내용을 넣음 !
ls -l /etc > b : b파일 안에 etc의 내용들이 다 들어감
cat /retest/{a,b,c} > /retest/d # 저기서 a,b,c는 파라미터라서 저런 방법도 가능
ls -l /b |cat -n |more -5
apt install vim : vim 모듈 설치
vi : 텍스트모드
i : insert
esc : 이동모드로 다시
: 실행모드
:q (나가기) 저장안하고 나가려면 강제종료(q!)
:s 현재 커서 위치의 문자를 삭제
vi passwd
u 이전으로 돌아가기
오전
리눅스 , putty 설치
putty 에서 파일 복사하는법 , 폴더 만드는법 등 함
곧 있을 내부 시험에 나올 문제 정리
- /etc/login.defs /etc/inittab /boot/grub2/grub.cfg 파일을 확인하고 3개의 파일 /backup 디렉토리 생성한 뒤 복사
- /backup에 있는 3개의 파일 /backup/test 디렉토리에 각각 login init grub 란 이름으로 이름변경 복사
- /backup에 test1 이라는 파일 , /backup/test 에 test2 라는 파일을 한줄명령어로 생성
- /backup/test 디렉토리를 /home/test/c/d/linux란 이름이 되도록 이름변경 보존 복사
- /home으로 이동(cd /home) 한뒤 경로를 변경하지 않고 /backup안에 있는 파일들 4개를 /home/test/c/d/linux 디렉토리에 한줄명령으로 보존복사 (이름변경및 디렉토리 복사 금지)
그리고 깃허브에 있는 문제풀이 (5개 중에 3개가 평가 문제로 나온다고함! , 내부평가 , 아마 123번 나올거라고 하는데.. 그래도 5번까지 알아두면 좋을듯! )
오후
리눅스 명령어 계속 연습
- /output 디렉토리 만든 후 /etc/passwd, /etc/login.defs 를 복사
- /output/login.defs 의 내용을 위에서부터 5줄만 확인하세요
- /output/login.defs의 내용을 화면 크기만큼 끊어서 확인하세요
- /output/passwd의 내용을 행번호를 붙여서 확인해보세요
- find 명령어를 이용해서 /output 디렉토리 안의 login.defs , inittab, passwd의 내용을 위로 5행만 출력하는 alias a1 을 만들고 실행해서 확인해 보세요(이건 아마 안나올듯) 빼고 2개정도 나올듯?
cp -rp /backup/test1 /home/test/c/d/linux
cp /backup/grub.cfg /backup/login.defs /backup/passwd /backup/test1 /home/test/c/d/linux
p.s 오늘은 리눅스를 배웠다만 해봤는데 꽤 흥미로웠음.
리눅스 화면을 보면서 하니까 눈에 즉각적으로 잘 들어와서 더 와닿는 것도 있었고.
근데 너무 많은 양을 배운것 같아 머리에 다 저장이 안된다는게 조금 아쉽다...
집에가서 좀 들여다보고 쳐보고 하면 좀 외워지겠지?
'Developer Note > 국비과정 수업내용 정리&저장' 카테고리의 다른 글
24년 08월 09일 (0) | 2024.08.09 |
---|---|
24년 08월 08일 (0) | 2024.08.08 |
24년 08월 06일 (0) | 2024.08.07 |
24 년 07월 31일 (0) | 2024.08.07 |
24년 08월 2일 (0) | 2024.08.06 |