Major/Linux(Ubuntu) (9) 썸네일형 리스트형 부팅과 종료 stud2222@com-B70EV-AP5VBGE:~$ ps -ef | more UID PID PPID C STIME TTY TIME CMD root 1 0 0 08:19 ? 00:00:09 /sbin/init splash /sbin/init = /lib/systemd/systemd , symbolic link init process : /etc/init, /etc/init.d, /etc/rc?.d 디렉터리 들의 관리정보 통해서 순차적으로 필요한 프로세스 생성 사용자가 접속할 장치마다 접속을 받는 전담프로세스가 생성되도록 함. 사용자로부터 접속 요청 -> /bin/login 프로세스 생성 후 처리 login process -> get ID,Passwd -> 검증 -> /etc/passwd 파일 지정 프로세.. ProgTools gcc -o executable source-list -o : 실행 파일 이름 명시, 디폴트 a.out gcc -c reverse.c : object 모듈 작성 실행 파일 생성 gcc test.c module.c mv a.out test 직접 실행파일명 지정 gcc -o test test.c module.c 단계별 컴파일1 gcc -c test.c module.c -다중 모듈 프로그램의 부분 컴파일 : 컴파일 작업의 속도 개선 ex) bingo = bingo.o + hidden.o + check.o + bingo.h 전부 컴파일 및 링킹 : gcc -o bingo bingo.c ........... etc * gcc -c => 오브젝트 파일 생성 .c (assembling) => gcc -o => 실행파.. 사용자 정보 관리 adduser : UID, GID 중복되지 않게 자동 부여 addgroup : GID 중복되지 않게 자동 부여 UID : 사용자가 로그인할 때 사용한 계정의 UID EUID : 현재 명령을 수행하는 주체의 UID - 실행 파일에 setUid 설정되어 있는 경우 : 해당 실행 파일을 실행한 프로세스의 UID는 사용자 계정의 UID ㄴㄴ 실행 파일 소유자의 UID가 EUID 처음에는 UID = EUID, su 명령으로 계정 전환 후에 UID != EUID who : 사용자 로그인 정보 확인 w : 현재 시스템 사용하는 사용자의 정보, 작업 정보 출력 last : 시스템 로그인, 로그아웃한 정보 출력 stud2222@com-B70EV-AP5VBGE:~$ whoami stud2222 stud2222@com-B7.. Overwrite script 명령어 : overwrite source dir newname 인수 갯수 오류 시(3개 미만) 사용법 출력 후 종료 출력 : "usage~" , 종료코드1 source 파일이 존재하지 않으면 오류메시지 출력 후 종료 dir 디렉토리 존재하지 않으면 오류메세지 출력 후 종료 대상파일이 일반파일이 아니면 생략 대상 파일이 쓰기 금지이면 쓰기모드 추가 후 덮어쓰기 성공적으로 종료 시 종료코드 0 #! /bin/bash if (( $# < 3 )); then echo "Usage : Overwrite source dir newname" exit 1 //오류 코드 1 fi if [ ! -f $1 ]; then echo "$1 is not a file" exit 2 fi if [ ! -d $2 ]; then ech.. 프로세스 pwd (print working directory) !!! 프로세스 : 현재 시스템에서 실행되는 프로그램. 프로그램과 프로세스의 차이 프로그램 : 지정된 작업 수행하는 명령 프로세스 : 실행 중인 프로그램. (프로그램이 실행되면 이를 프로세스라고 한다.) 각 프로세스는 고유한 번호를 가지고 있는데 이것이 PID. 자식 프로세스는 할 일이 끝나면 부모 프로세스에게 결과 돌려주고 종료. - 데몬 프로세스 특정 서비스 제공 위해서 존재하며 부팅 과정에서 실행 시작함. - 고아 프로세스 자식 프로세스가 아직 실행 중인데 부모 프로세스가 먼저 종료된 자식 프로세스. 이때 1번 프로세스가 새로운 부모 프로세스가 되어서 작업 종료를 지원한다. - 좀비 프로세스 자식 프로세스가 실행을 종료 했는데도 프로세스 테이블 .. vi, 셸 내용 수정 명령 키 r 커서가 위치한 글자를 다른 글자로 수정 cw, #cw 커서 위치부터 현재 단어 끝까지 수정. #에는 수정할 단어의 수 지정. #cw는 커서 위치로부터 #개의 단어를 수정한다는 뜻. s, #s 커서 위치부터 esc키 입력할 때까지 수정. #에는 수정할 글자의 수 지정 cc 커서가 위치한 행의 내용 모두 수정. C 커서 위치부터 행의 끝까지 수정 내용 삭제 명령 키 x, #x 커서 위치의 글자 삭제. # : 삭제할 글자 수 dw, #dw 커서 위치의 단어 삭제. # : 삭제할 단어 수 dd, #dd 커서 위치의 행 삭제. # : 삭제할 행의 수 D 커서 위치부터 행의 끝까지 삭제. 이전 명령 취소 키 u 명령 취소 U 해당 행에서 한 모든 명령 취소 :e! 마지막으로 저장한 내용 이후.. 파일의 속성, 접근 권한 파일의 속성 file 파일 지정한 파일의 종류를 알려줌 groups 사용자가 속한 그룹(파일 소유자의 그룹 이름)을 알려줌 리눅스에서 모든 파일은 소유자가 있음. 파일과 디렉터리의 접근 권한 권한 파일 디렉터리 읽기 r 파일 읽거나 복사 ls명령으로 디렉터리 목록 보기 가능(ls 명령의 옵션은 실행 권한이 있어야 사용 가능) 쓰기 w 파일 수정,이동,삭제 가능(디렉터리에 쓰기 권한 있어야함) 파일 생성, 삭제 가능 실행 x 파일 실행 가능(셸 스크립트나 실행 파일의 경우) cd 명령. 파일을 디렉터리로 이동,복사 가능하고 이 디렉터리의 파일을 실행할 수 있다. 접근 권한 소유자 그룹 기타 사용자 rwxr-xr-x 읽기 쓰기 실행 읽기 실행 읽기 실행 r-xr-xr-x 읽기 실행 읽기 실행 읽기 실행 rw.. 셸,입출력 리다이렉션,셀 변수,환경변수,프롬프트 + 실습기록 cf)명령어는 파란색 - 기본 셸 변경 : chsh +)바꿀 수 있는 셸 종류 확인하기 cat /etx/shells - 배시 셸 출력 명령: echo & printf - 특수문자 * : 모든 내용 나타낼 때 많이 사용함. +)$SHELL 문자열이 화면에 출력됨 echo '$SHELL' = echo \$SHELL 셸 환경변수인 SHELL에 저장된 값인 현재 셸의 종류가 화면에 출력됨 echo "$SHELL" 백쿼터로 감싸인 문자열은 명령으로 해석함. echo "Today is `date`" ls * 현재 디렉터리의 모든 파일과 서브 디렉터리 나열. 서브 디렉터리 내용 또한 출력 cp * /tmp 현재 디렉터리의 모든 파일을 /tmp 디렉터리 아래로 복사 ls -F t* t로 시작하는 모든 파일의 이름과 종.. 이전 1 2 다음