전공/리눅스 13

리눅스 관리, 네트워크

시스템 사용자 관리 런 레벨(Run level) - 시스템 관리를 용이하게 하기 위해 서비스의 실행을 단계별로 구분 - /etc/rc0.d ... 런레벨 0 시스템 종료 1, S, s 단일 사용자 모드 2 다중 사용자 모드 3 다중 사용자 모드 + 네트워크 4 5 6 시스템 재시작 사용자 관련 파일 /etc/passwd (사용자 계정 관련) - 기본 항목 구성은 사용자 로그인 계정 : 암호화된 비밀번호 : UID : 기본 GID : 정보(GECOS) : 홈 디렉토리 : 로그인 쉘이 저장되어 있는 파일 - cat /etc/passwd root:x:0:0:root:/root:/bin/bash ykkim:x:1000:1000:Kim yk,,,:/home/ykkim:/bin/bash * x는 shadow 패스워..

전공/리눅스 2023.01.12

vi 에디터

리눅스 편집기 vi - 화면 단위 편집기 - 모드형 편집기 입력모드(txt 입력) // 명령모드(편집 명령) vi 동작모드 vi 시작 vi vi test.txt vi 종료 마지막 행 모드 :q, q! 저장하지 않고 종료 (작업x, 작업o) :w [파일명] 저장 :wq, wq! 저장 후 종료 명령 모드 ZZ 저장 후 종료 입력모드 입력모드로 전환하는 명령키 i 커서 앞에 입력 (현재 커서 자리) a 커서 뒤에 입력 (현재 커서의 다음 자리) o 커서 위치한 행의 다음 행에 입력 I 커서 위치한 행의 첫 컬럼에 입력 A 커서 위치한 행의 마지막 컬럼에 입력 O 커서 위치한 행의 이전 행에 입력 명령모드에서 커서 이동 ← ↓ ↑ → \ ^ 또는 0 커서를 현재 행의 처음으로 이동 $ 커서를 현재 행의 마지막으..

전공/리눅스 2023.01.12

리눅스 apt, 아카이브, 압축

- 리눅스에서 sw는 1) 소스 코드 형식 배포 : 하나의 아카이브 파일로 묶은 후 압축하여 배포 2) 패키지 형태 배포 : 바로 설치하여 사용 * 일반 소스파일은 아키텍처 상관x, binary 소스파일은 상관ㅇ 리눅스 패키지의 구성 - 바이너리 형태로 컴파일되어 바로 쓸 수 ㅇ, 컴퓨터의 아키텍처 고려, CPU가 Intel/AMD는 x86계열, ARM은 ARM계열 RPM 형식 : RedHat (CentOS, Fedora) deb 형식 : 우분투 apt-get apt-cache apt apt-cache stats apt-cache pkgnames apt-cache search vsftpd : 패키지 이름 검색 apt-cache show vsftpd : 패키지 정보 검색 apt-cache showpkg v..

전공/리눅스 2023.01.12

리눅스 디스크

22년도 32. (2 points) 파티션 테이블을 출력하라. fdisk -l 33. (2 points) /dev/sdb는 몇개의 파티션이 존재하는가? 2개 opensw@tux:~$ ls /dev/sdb* /dev/sdb /dev/sdb1 /dev/sdb3 34. (2 points) mkfs 명령어를 이용하여 /dev/sdb3에 ext4 파일시스템을 생성하라. mkfs -t ext4 /dev/sdb3 38. (2 points) /dev/sdb1을 /mnt/disk1에 마운트하는 명령은? sudo mount /dev/sdb1 /mnt/disk1 39. (2 points) LVM(______)은 물리적 디스크나 스토리지를 논리적 스토리지로 생성하고 공간 활용을 유연하게 만들어 준다. Logical Volum..

전공/리눅스 2023.01.12

바이너리 핸들링 + 라이선스

바이너리(0,1), 컴퓨터가 읽을 수 있음 od (명령어) octal dump, 바이너리 파일 내용 확인 - 바이너리 파일(텍스트 파일x)을 8진수로 덤프 symbol table - nm : list symbols from object files nm opensw 심볼 크기 작은 순으로 정렬 nm --size-sort opensw 큰 순 nm --size-sort -r opensw strip opensw : 심볼 삭제 ELF 파일 정보 보기 readelf -h opensw ELF 파일 헤더 덤프 readelf -l opensw ELF 프로그램 헤더 덤프 readelf -S opensw ELF 섹션 헤더 덤프 file opensw(실행 가능한 파일) : 정보 보기 특정한 포맷(ELF포맷)을 가지고 메모리에..

전공/리눅스 2023.01.12

리눅스 프로세스

프로세스 - 현재 시스템에서 메모리에 올라가 실행 중인 프로그램 - 여러 개의 프로세스 동시에 실행 (다중 프로세스 시스템) - 모든 프로세스는 부모-자식 관계 - 부모 프로세스는 자식 프로세스를 생성(fork()), 자식 프로세스는 부모 프로세스로 종료/복귀 - 자식 프로세스는 또 다른 자식 프로세스 생성 프로세스 번호 - PID(Process Identification Number) - PID는 1~, 하나씩 증가 - 부팅될 때 systemd(PID 1) (모든 시스템 프로세스의 부모 프로세스), kthredd(PID 2) (모든 커널스레드의 부모 프로세스)실행 systemd(일반 프로그램, /sbin/init, PID 1, PPID 0) 와 kthredd(리눅스 커널 관련 프로세스, PID 2, P..

전공/리눅스 2023.01.12

리눅스 git

소스코드 형상관리 저장소 로컬 저장소 원격 저장소 버전 관리 - 중앙 집중식 버전 관리 - 분산 버전 관리 diff vs snapshot - 깃은 snapshot git의 상태 : committed, modified, staged working directory의 파일 - tracked file : unmodified(=committed), modified(커밋버전 != working directory) "M" , staged "A" - untracked file "??" 기본 sudo apt install git git init git clone git config git add * git status git status -s (git status --short) git diff : working di..

전공/리눅스 2023.01.12

리눅스 명령어

리눅스 명령어 명령 [옵션] [인자 ...] date clear man : - man 명령어 passwd : - passwd (로그인 ID) exit : 터미널 종료 (ctrl+d) pwd : 현 위치의 절대경로 cd : 지정 디렉토리로 이동 - cd 경로명 cd / 는 루트 디렉토리로 이동 cd cd ~ cd /home/ykkim 홈 디렉토리로 이동 . 현재 디렉토리 .. 상위 디렉토리 ls : 디렉토리 내용 출력 -a : 경로안의 모든 파일을 나열한다.(숨김파일도 포함) -d : 디렉토리 자체의 정보 출력 -l : 파일의 상세 정보 출력 -F : 파일의 종류 출력 * 실행파일, / 디렉토리, @ 심벌릭링크 -h : 파일크기를 해석하기 편하게 출력 -R : 위치한 디렉토리의 하부 디렉토리 파일까지 모두..

전공/리눅스 2023.01.11

리눅스 파일 속성

ls -l로 속성 확인 -rw-r--r-- 1 ykkim ykkim 231 Dec 27 00:49 hosts - 파일 종류 rw-r--r-- 파일을 읽고 쓰고 실행할 수 있는 접근 권한 1 하드 링크의 개수 ykkim 파일 소유자의 로그인 ID ykkim 파일 소유자의 그룹 이름 231 파일 크기 (바이트) Dec 27 00:49 파일이 마지막으로 수정된 날짜, 시간 - 연도 없으면 올해 의미 hosts 파일명 *txt file은 실행파일이 아님 *호스트이름@컴퓨터이름 ① 파일 종류 - 일반(정규) 파일 d 디렉터리 파일 l 심벌릭(소프트) 링크 파일 b 블록 단위로 읽고 쓰는 블록 장치 파일 c 섹터 단위로 읽고 쓰는 문자(캐릭터) 장치 파일 p 파이프 파일 (프로세스 간 통신에 사용되는 특수 파일) ..

전공/리눅스 2023.01.10

리눅스 개요

유닉스 - 멀티태스킹, 멀티유저 지원 운영체제 - C언어로, 초기는 어셈블리어 package 관리 - 데비안(Deb)계열 - 레드햇(RPM)계열 포트 관련 http://xxx.xxx.xxx.xxx 나 http://xxx.xxx.xxx.xxx:80 으로 접속하는 결과는 같은 처리를 보여줍니다. 이는 브라우저 등에서 ip뒤에 붙는 port가 없는 경우, 기본port인 80으로 처리를 하는 것이고, domain을 사용하는 경우는 domain -> ip adress로 변경하는 DNS를 거치게 되는데, 이때 DNS에 등록된 ip+port 정보로 처리를 합니다 https://sevendollars.tistory.com/43 [네트워크] 네트워크 통신에서 포트 Port 란? 21, 22, 80, 443번 포트? 포트..

전공/리눅스 2023.01.09