_ 11

[Linux] 서비스, 소켓

서비스 : 시스템과 독자적으로 구동 및 제공되는 프로세스 ex) 웹 서버(httpd), DB서버(mysqld), FTP 서버(vsftpd) 실행 및 종료 : systemctl start/stop/restart 서비스이름 ex ) 웹 서버 시작 명령어 : systemctl start httpd 서비스의 실행 스크립트 파일은 /usr/lib/system/ 디렉터리에 '서비스이름.service'라는 이름으로 확인가능 ex ) Cron 서비스는 crond.service라는 이름의 파일로 존재 부팅과 동시에 서비스의 자동 실행 여부 지정 명령어 : systemctl list-unit-files 소켓 : 필요할 때만 작동하는 서버 프로세스 서버와 소켓은 systemd라는 서비스 매니저 프로그램으로 작동시키거나 관리..

_/Linux 2020.10.19

[Linux] 프로세스

프로세스 : 하드디스크에 저장된 실행 코드(프로그램)가 메모리에 로딩되어 활성화 된 것 프로세스 관련 필수 개념 및 용어 포그라운드 프로세스 : 실행하면 화면에 나타나서 사용자와 상호 작용하는 프로세스, 화면에서 실행되는 것이 보이는 프로세스 백그라운드 프로세스 : 실행은 되었지만 화면에 나타나지 않고 뒤에서 실행되는 프로세스 ex ) 바이러스 백신, 서버 데몬 프로세스 번호 : 각각의 프로세스에 할당된 고유 번호, 활성화된 프로세스를 메모리에서 강제로 제거하기 위해 프로세스 번호를 사용 작업 번호 : 현재 실행되는 백그라운드 프로세스의 순차 번호 부모 프로세스와 자식 프로세스 : 모든 프로세스는 부모 프로세스를 가지고 있음 ps : 현재 프로세스의 상태를 확인하는 명령어 ex ) ps -ef | gre..

_/Linux 2020.10.19

[Linux] 리눅스 기본 동작 관련 개념 (파이프, 필터, 리디렉션)

파이프 : 2개의 프로그램을 연결하는 통로의 의미 예시 ) ls -l /etc | more : 'ls -l /etc'를 입력하면 보여주는 파일들을 1페이지씩 나눠서 보겠다는 의미 필터 : 필요한 것만 걸러주는 명령어 (grep, tail, wc, sort, awk, sed 등) 예시 ) ps -ef | grep bash : ps -ef 명령을 입력하면 모든 프로세스 번호를 출력하므로 bash라는 글자가 들어간 프로세스만 출력 rpm -qa | grep dnf : 설치된 패키지 중에서 dnf라는 글자가 들어간 패키지를 출력 리디렉션 : 표준 입출력의 방향을 바꿔준다. 예시 ) ls -l > list.txt : ls -l 명령 결과를 화면에 출력하지 않고 list.txt 파일에 저장하도록 한다. sort <..

_/Linux 2020.10.19

[Linux] 네트워크 관련 설정과 명령어

TCP/IP 가장 널리 사용되는 프로토콜의 종류 중 하나 통신의 전속/송신을 다루는 TCP와 데이터 통신을 다루는 IP로 구성 호스트이름 : 각각의 컴퓨터에 지정된 이름 도메인 이름(=도메인 주소) IP주소 각 컴퓨터의 랜 카드(네트워크 카드)에 부여되며 중복되지 않는 유일한 주소 네트워크에 연결된 모든 컴퓨터는 고유한 IP 주소가 존재 4바이트로 이루어져 있으며 각 자리는 0~255까지의 숫자 네트워크 주소 (네트워크 ID) 같은 네트워크에 속해 있는 공통 주소 브로드캐스트 주소 내부 네트워크의 모든 컴퓨터가 듣게 되는 주소 현재 주소의 제일 끝자리를 255로 바꾼 주소(C클래스) 게이트 웨이 내부 네트워크를 외부로 연결하기 위한 컴퓨터 또는 장비 '외부 네트워크로 나기기 위한 통로' 게이트 웨이에는 ..

_/Linux 2020.10.19

[Linux] 작업예약 명령어 (CRON, AT)

cron : 자동으로 실행할 수 있도록 시스템 작업을 예약해놓는 것 /etc/crontab 형식 분(00~59) 시(00~23) 일(1~31) 월(1~12) 요일(0~6) 사용자 실행명령 요일은 0부터 일요일 ~ 6이 월요일 예시) 00 05 1 * * root cp -r /home /backup : 매월 1일 새벽 5시 00분에 /home 디렉터리가 통째로 /backup 디렉터리에 복사(cp -r /home /backup) at : 일회성 작업 예약 예약 : at 시간 확인 : at -l 취소 : atrm 작업번호 at 시간 설정후 at> 프롬프트에 예약 명령어 입력 완료되면 ctrl + D 를 누른다. ex) at 3:00am tomorrow : 내일 새벽 3시 at 10:00pm January 30..

_/Linux 2020.10.18

[Linux] 패키지 설치를 위한 명령어(RPM,DNF)

RPM Windows의 setup,exe 와 비슷한 설치파일 확장명은 *rpm이며 패키지라고 부른다. 패키지 의존성의 단점이 있다. 설치 : rpm -Uvh 패키지파일이름.rpm U(대문자) : 기존에 패키지가 설치되지 않았다면 일반적인 설치를 진행, 패키지가 설치되어있다면 업그레이드 v : 설치과정확인 h : 설치 진행 과정을 #로 화면에 출력 삭제 : rpm -e 패키지파일이름 이미 설치된 패키지 조회 rpm -qa 패키지이름 : 시스템에 패키지가 설치되었는지 확인 rpm -qf 파일의절대경로 : 이미 설치된 파일이 어느 패키지에 포함된 것인지 확인 rpm -ql 패키지이름 : 특정 패키지에 어떤 파일들이 포함되었는지 확인 rpm -qi 패키지이름 : 설치된 패키지의 상세 정보, 패키지 설치되었는지 ..

_/Linux 2020.10.18

[Linux] 링크

파일의 링크는 하드 링크와 심볼록 링크 원본 파일이 inode1를 사용할 때 하드 링크를 생성하면 '하드 링크 파일'만 하나 생성되며 같은 inode1을 사용 하드링크 생성 명령어 : ln 링크대상파일이름 링크파일이름 원본 파일이 심볼릭 링크를 생성하면 새로온 inode2를 만들고 데이터는 원본 파일과 연결되는 효과를 가짐 Windows의 바로가기 아이콘도 심볼릭 링크에 해당 심볼릭 링크 생성 명령어 : ln -s 링크대상파일이름 링크파일이름 basefile의 하드링크 생성 : ln basefile hardlink basefile의 심볼릭 링크(=소프트 링크) 생성 : ln -s basefile softlink

_/Linux 2020.10.18

[Android] 플래그(Flag) 사용하기

액티비티는 액티비티 매니저(Activity Manager)라는 객체에 의해 액티비티 스택(Activity Stack)이라는 것으로 관리됩니다. 액티비티를 여러번 실행하다 보면 동일한 액티비티들이 스택에 들어가게 되는데 이를 방지하게 위해 플래그(flag)를 사용합니다. 대표적인 플래그 3개만 알아보겠습니다. 1. FLAG_ACTIVITY_SINGLE_TOP 액티비티를 실행할 때 이미 생성된 액티비티가 있으면 그 액티비티를 그대로 사용하라는 플래그입니다. 주의할 점 ❕ 동일한 액티비티가 연속적으로 생성될 때만 적용됩니다. [A] [B] [B] ≫ [A] [B] ( 적용 ○ ) [A] [B] [A] ≫ [A] [B] [A] ( 적용 × ) 2. FLAG_ACTIVITY_NO_HISTORY 이 플래그를 사용한..

_/Android 2020.09.08

[Android] 버튼 클릭 시 화면 전환하기(startActivityForResult() 사용법)

앱에서 화면전환은 거의 필수적이라고 할 수 있는데요, 오늘은 새로운액티비티(Activity)를 띄우고 결과를 처리하는 예제를 통해 화면전환을 해보겠습니다. 액티비티를 띄워 화면에 보이도록 하려면 startActivity() 메서드와 startActivityForResult() 메서드를 사용하면 됩니다. startActivity() 메서드는 단순히 액티비티를 띄워 화면에 보이도록합니다. startActivityForResult() 메서드는 어떤 액티비티를 띄운 것인지 그리고 띄웠던 화면을 닫고 원래의 메인 화면으로 돌아오면서 응답을 받아 처리합니다. startActivityForResult(intent intent, int requestCode) startActivityForResult() 메서드에서 전달..

_/Android 2020.09.07

[Android] 토스트(Toast) 메시지 이용하기

안녕하세요 오늘은 토스트(Toast) 메시지를 사용하는 법을 알아보겠습니다. 일단 토스트는 간단한 메시지를 잠깐 보여주었다가 없어지는 뷰입니다. 사용자에게 간단한 메시지를 보여줘야 하는 경우가 생기는데 이때 토스트 메시지를 사용할 수 있습니다. 1. 토스트 메시지 생성하고 띄우기 토스트 메시지를 만들고 보여주는 방법은 다음과 같습니다. Toast.makeText(Context context, String message, int duration).show() Toast 클래스의 makeText() 메서드를 통해 Toast 객체를 생성합니다. makeText() 메서드의 매개변수 현재 context 정보, 토스트 메시지에 보여줄 문자열, 토스트 메시지의 지속 시간을 파라미터로 전달하여 객체를 생성한 후에 s..

_/Android 2020.08.27