별의 공부 블로그 🧑🏻‍💻

🗒️ 리눅스 (207)

728x90
  1. 2021.06.21 [네트워크관리사 2급 실기] 리눅스 문제 모음

    네트워크관리사 2급 실기 리눅스 문제 모음 가급적 영문 소문자로 작성하여 정답을 제출하는 것이 좋다. ① 단답형 1. 윈도우의 ipconfig 명령어와 같이 리눅스에서 ip address 정보를 확인하는 명령어는? 답 : ifconfig 2. 리눅스에서 파일이나 폴더를 찾을 때 사용하는 명령어는? 답 : find 3. 리눅스에서 현재 설치된 하드디스크의 용량을 확인하는 명령어는? 답 : df 4. 리눅스에서 현재 위치를 확인하고 싶을 때 사용하는 명령어는? 답 : pwd 5. 리눅스에서 포트/프로토콜 정보를 확인할 수 있는 명령어는? 답 : /etc/services 또는 cat /etc/services 6. 리눅스에서 CPU 메모리 사용 정보를 확인하는 명령어는? 답 : top 7. 리눅스에서 도움말-메..

  2. 2021.04.29 54. SAMBA

    52. SAMBA 1. SAMBA 개요 Microsoft의 NETBIOS 프로토콜을 이용하여 리눅스 운영체제에서 윈도우 시스템의 자원 및 프린터를 공유하는 프로그램 2. SAMBA 특징 인터넷 및 인트라넷에서 서버 파일 및 프린터기를 공유할 수 있는 프리웨어(Freeware) 프로그램 공통 인터넷 파일 시스템(CIFS) 클라이언트, 서버 프로토콜 리눅스 RPM 패키지 설치 도구를 사용해서 설치할 수 있음. TCP/UDP 137, 139 포트를 사용함. 설정 파일 /etc/samba/smb.conf /etc/smb.conf 3. SAMBA 가동 samba start : SAMBA 서버 실행 samba stop : SAMBA 서버 정지 smbd : SAMBA에서 NETBIOS 프로토콜로 자료 전송 nmbd ..

  3. 2021.04.29 53. RPM 패키지

    52. RPM 패키지 1. RPM Redhat Package Manager 프로그램을 설치하기 위해서 사용되는 명령어 확장자가 rpm인 파일(패키지)을 설치할 수 있음. 리눅스의 종류별로 패키지 관리 프로그램이 다름. rpm 옵션 -i : 패키지 설치 -v : 설치 과정 확인 -h : 설치 진행 과정을 # 마크로 화면에 출력 -U : 패키지 업그레이드 -e : 패키지 삭제 -qa : 설치된 모든 패키지 확인 -qc : 패키지에 의해서 설치된 파일 중, 설정 파일 경로 출력 -qd : 패키지에 의해서 설치된 파일 중, 문서 파일 경로 출력 -qi : 설치된 패키지 정보 확인 -ql : 특정 패키지로 어떤 파일이 설치되었는지 확인 -qs : 패키지로 설치된 파일의 정상 여부 확인 -qpl : 패키지 파일에 ..

  4. 2021.04.29 52. vi 편집기

    52. vi 편집기 1. vi 편집기 문서를 편집할 수 있는 에디터 모드 명령 실행 모드 편집된 문서를 저장하고 취소 등의 명령어를 실행할 때 사용 입력 모드에서 Esc 키를 누르면 명령 실행 모드로 전환됨. 명령어를 입력하고 실행하려면 ;, /, ?를 입력하면 됨. 입력 모드 문서를 입력할 때 사용 a, i, o를 입력하면 입력 모드로 전환됨. # vi test.txt // vi 편집기 실행 입력 모드가 되면 글을 입력할 수가 있습니다. 다시 명령모드로 전환하려면 ESC 키를 누르세요. -- INSERT -- 0, 1 All vi를 실행하고, a, i, o 중 하나를 누르면 입력 모드가 됨. Esc 키를 누르면 다시 명령 실행 모드가 됨. :wq는 저장하고 종료하라는 의미이며, 명령어를 실행한 것을 의..

  5. 2021.04.28 48. 리눅스 계정 관리

    48. 리눅스 계정 관리 1. useadd와 adduser 리눅스에서 사용자를 생성하려면 useradd 혹은 adduser 명령을 사용하면 됨. useradd starrykss와 같은 형식으로 사용하면 됨. # adduser starrykss // 사용자 생성 2. passwd 파일과 shadow 파일 사용자는 해당 계정을 사용하기 위해서 패스워드를 입력해야 함. 사용자가 입력한 패스워드는 /etc/passwd 파일과 /etc/shadow 파일을 참조함. 정당한 사용자(Right User)인지 확인 후, 로그인을 수행함. /etc/passwd 파일 구조 (1) Login Name : 사용자 계정 (2) Password 사용자 암호가 들어갈 자리 /etc/shadow 파일에 저장됨. (3) User ID ..

  6. 2021.04.27 47. 리눅스 파일 시스템

    47. 리눅스 파일 시스템 1. 파일 시스템(File System) (1) 리눅스 파일 시스템 리눅스 파일 시스템은 ext(extend) 2, ext 3, ext 4가 있으며, 현재 대부분의 리눅스는 ext 4를 지원함. ext 4 파일 시스템 대용량의 파일을 저장, 관리할 수 있음. 큰 Extend 단위로 파일 시스템을 할당하거나 삭제할 수 있음. 파일 시스템에 오류가 없는지 확인하는 fsck를 지원함. ext2 파일 시스템 단일 파일의 크기 : 최대 2 GB 파일명 : 최대 256 B 최대 파일 시스템 크기 : 4 TB 디렉터리 당 저장 가능한 최대 파일 수 : 25,500개 ext3 파일 시스템 단일 파일 크기 제한 : 4 GB 파일명 : 최대 256 B 최대 파일 시스템 크기 : 16 TB 디렉터..

  7. 2021.04.27 46. 리눅스(Linux) 개요

    46. 리눅스 개요 1. 리눅스(Linux) 리눅스의 윈도우, 유닉스, iOS와 같은 운영체제의 한 종류 컴퓨터 시스템의 하드웨어를 효율저으로 관리하기 위한 시스템 소프트웨어 1989년 핀란드 헬싱키 대학에 재학 중이던 리누스 토르발스(Linus Torvalds) 가 개발한 것 유닉스(Unix)를 기반으로 개발 공개용(Open Source) 운영체제 기존 유닉스와 다르게 대형 서버를 위해서 개발된 운영체제가 아닌, 개인 컴퓨터나 워크스테이션을 위해 개발됨. 소스 코드부터 운영체제 사용까지 모두 무료로 공개된 운영체제 리눅스를 설치하고 사용자(End User)가 자신의 운영체제를 수정하여 사용할 수 있음. 2. 리눅스의 특징 (1) 다중 사용자(Multi User) 리눅스는 여러 명의 사용자가 네트워크를 ..

  8. 2021.03.09 cat 과 리다이렉션(Redirection)

    cat과 리다이렉션(Redirection) 리다이렉션은입출력의 방향을 바꾸는 역할을 함. 기본적으로 4가지 기호로 되어 있음. > 출력 전환 표준 출력인 모니터에서 파일이나 기타 장치로 전환 >> 특수 출력 보통 파일로 저장할 때, 파일의 뒷부분에 추가되어 덧붙여짐. > a.txt // 기존의 a.txt 라는 파일이 존재하면 그 파일에 표준 입력(키보드)으로 부터 받은 내용을 추가함. // 만약 a.txt 라는 파일이 존재하지면 '>'와 역할이 같음. $ cat < a.txt // a.txt 라는 파일로..

  9. 2021.02.14 로그인 메시지 관련 파일

    로그인 메시지 관련 파일 파일명 내용 /etc/issue 사용자가 로그인할 때, 'login: '이라는 메시지를 보여주기 전에 출력되는 내용을 적는 파일 /etc/issue.net /etc/issue 파일과 역할은 같음. /etc/issue는 로컬(Local)의 터미널로 접속할 때 출력되는 메시지를 기록하고, /etc/issue.net은 텔넷(telnet)을 통해 네트워크에 접속할 때 출력되는 메시지를 기록함. /etc/motd motd는 'Message Of The Day'의 약어로 성공적으로 로그인되었을 때 접속된 사용자가에게 보여주는 메시지를 기록하는 파일 내용 출처 : 리눅스마스터 1급 정복하기(정성재, 배유미 공저, 북스홀릭)

  10. 2021.02.14 데몬 관련 유틸리티

    데몬 관련 유틸리티 (1) ntsysv - 텍스트 환경에서 커서를 이용하여 부팅 중 자동으로 실행되는 서비스를 설정할 수 있는 유틸리티 - 명령행에서 옵션 없이 ntsysv를 시행하면 현재 구동된 실행 레벨에 대한 설정을 할 수 있음. - 관련 서비스로는 커서를 이동하고 적용 유무는 스페이스키를 사용함. - ntsysv 대신에 명령행에서 setup 입력 후 나타나는 항목에서 'System services'를 선택해도 됨. - 사용법 및 예 # ntsysv [option] // option : --level 실행 레벨 # ntsysv // 현재 구동 중인 레벨의 서비스 데몬 설정 # ntsysv --level 5 // 실행 레벨 5의 서비스 데몬 설정 (2) chkconfig - 텍스트 기반의 명령형 프로..

  11. 2021.02.14 리눅스 배포판의 분류

    리눅스 배포판의 분류 (1) SLS : 최초의 리눅스 배포판 - 1992년 5월에 최초의 리눅스 배포판인 SLS 등장 - SLS는 리눅스 커널과 다양한 GNU 프로그램, 기본적인 유틸리티와 X 윈도 시스템까지 탑재하여 하나의 운영체제로 탄생하였지만, 크고 작은 버그들이 존재함. - 버그뿐 만 아니라 응용 프로그램의 설치 및 제거, 업데이트, 검증 등의 패키지 관리에 문제점이 있었음. - 최초의 리눅스 배포판인 SLS 등장 이후에 수많은 리눅스 배포판들이 등장하고 있지만, 이러한 배포판들은 패키지 관리 기법에 따라 크게 슬랙웨어(Slackware), 데비안(Debian), 레드햇(Red Hat)과 같이 3종류 로 분류할 수 있음. (2) 슬랙웨어(Slackware) 소프트웨어를 최상단(upstream)에서..

  12. 2021.02.14 리눅스 클러스터링(Linux Clustering)

    리눅스 클러스터링(Linux Clustering) - 클러스터(Cluster) : 컴퓨터 데이터 통신분야에서 단말 제어 장치와 그에 접속된 복수 단말의 총칭 - 서버 분야에서의 클러스터는 여러 대의 컴퓨터를 연결하여 하나의 컴퓨터를 사용하는 것처럼 구성된 시스템을 의미함. - 리눅스 클러스터는 사용 목적에 따라 크게 3가지로 구분 ① 고계산용 클러스터(HPC: High Performance Computing Cluster) 고성능의 계산 능력을 제공하기 위한 슈퍼컴퓨터 구성에 주로 사용 ② 부하분산 클러스터(LVS: Linux Virtual Server Cluster) HA 와 함께 구성하여 웹 서버를 비롯한 서버 분야에서 주로 사용 ③ 고가용성 클러스터(HA: High Availability Clust..

  13. 2021.02.11 [CentOS] 부팅 모드 변경 방법 (GUI/TEXT)

    ■ CentOS 6버전 이하 # vi etc/inittab - 런레벨을 5로 수정 ... id:5:initdefault: // 5로 수정 ※ 참고 0. 시스템 중지 1. 단일 사용자 모드 2. NFS 기능을 제외한 다중 사용자 모드 3. 모든 기능을 포함한 다중 사용자 모드, 콘솔 모드 4. 사용하지 않음. 5. X-Window로 부팅 6. 시스템 리부트 런레벨 1은 주로 시스템을 복구하거나 루트 계정의 비밀번호를 잃어버렸을 때 사용. 런레벨 0번과 6번은 시스템 종료와 관련이 있음. 런레벨 3번과 5번은 사용자 로그인 메뉴를 볼 수 있음. 런레벨 4번은 시스템 예약값으로 사용되지 않음. 런레벨 5번은 그래픽 환경을 띄우기 위해 사용됨. - 시스템 재부팅 # reboot ■ CentOS 7버전 이상 - ..

  14. 2021.02.10 데몬 실행 방법 (명령어)

    데몬 실행 방법 (명령어) 1. # /etc/init.d/httpd restart 2. # /etc/rc.d/init.d/httpd start 3. # service httpd start

  15. 2021.02.10 포트 번호(Port Number)

    포트 번호(Port Number) - IP 프로토콜에 의해 전달된 데이터는 전송 계층 프로토콜인 TCP/UDP 등에서 서비스 다중화를 위해 포트(Port)로 관리됨. - 각각의 응용 프로그램은 할당된 포트를 이용해 통신할 데이터를 주고 받음. - 포트는 번호로 관리되고, 0번부터 65535번까지 사용됨. - 0번부터 1023번까지는 잘 알려진 포트(Well-Known Port)라 하여 HTTP, SMTP, TELNET 등과 같은 주요 프로토콜이 할당 받아 주로 시스템에서 사용되고 있음. - 리눅스 및 유닉스 시스템에서는 /etc/services 파일에서 주요 포트 번호를 확인할 수 있음. $ cat /etc/services | more # Network services, Internet style # #..

  16. 2021.02.10 인터네트워킹(Internetworking) 장비

    인터네트워킹(Internetworking) 장비 - 인터네트워킹(Internetworking) : 네트워크와 네트워크의 연결 - 게이트웨이(Gateway) : 인터네트워킹을 수행하는 장치 - 게이트웨이는 서로 다른 통신망과 프로토콜을 사용하는 네트워크 간에 통신 기능을 가능하게 해주며, 기능에 따라 다양하게 존재함. - 게이트웨이의 대표적인 장치로 리피터, 브리지, 라우터 등이 있음. (1) 리피터(Repeater) - 물리적 신호는 전송 거리가 멀면 감쇄되기 때문에 중간에 이를 보완해줘야 함. - 리피터는 입력된 신호를 증폭하여 중계하는 역할을 함. - OSI 모델의 첫 번째 계층인 물리 계층에서 동작함. (2) 브리지(Bridge) - OSI 모델의 데이터 링크 계층에 있는 여러 개의 네트워크 세그먼..

  17. 2021.02.10 인터넷 계층 관련 프로토콜 (IP, ICMP, ARP)

    인터넷 계층 관련 프로토콜 - 인터넷 계층은 전송 계층에서 받은 패킷을 목적지까지 효율적으로 전달하는 역할을 함. - 패킷이 목적지에 제대로 도착되었는지와 데이터의 손상 여부에 대해서는 상위 계층에서 처리함. - 이 계층에 해당하는 프로토콜에는 IP, ICMP, ARP가 있음. 관련 프로토콜 설명 IP (Internet Protocol) - OSI 네트워크 계층에서 호스트의 주소 지정과 패킷 분할 및 조립 기능을 담당 - 데이터 세그먼트를 패킷으로 만들어 전송하는 역할 수행 - 라우터간의 패킷을 전송할 때 최선을 다하지만 100% 도착하는 것을 보장하지는 않음. - 비신뢰성(Unreliability)과 비연결형(Connectionless)이 특징 ICMP (Internet Control Message P..

  18. 2021.02.10 네트워크 관련 명령어

    네트워크 관련 명령어 (1) ifconfig(interface config) ifconfig [interace] [address] [option] - 네트워크 인터페이스를 설정하거나 확인하는 명령 - IP 주소, 넷마스크 주소, MAC 주소 등을 설정하고 확인할 수 있음. # ifconfig eth0: flags=4163 mtu 9001 inet 172.31.43.90 netmask 255.255.240.0 broadcast 172.31.47.255 inet6 fe80::88a:29ff:fe31:26ea prefixlen 64 scopeid 0x20 ether 0a:8a:29:31:26:ea txqueuelen 1000 (Ethernet) RX packets 5989820 bytes 2292490847 ..

  19. 2021.02.10 데몬 프로세스 실행 방법

    데몬 프로세스 실행 방법 지속적인 서비스 요청을 처리하기 위해 사용하는 데몬 프로세스를 실행하는 방법에는 다음과 같이 2가지 방식이 존재함. ⓛ standalone 방식 - 보통 부팅 시에 실행되어 해당 프로세스가 메모리에 계속 상주하면서 클라이언트의 서비스 요청을 처리하는 방식 - 웹, 메일 등과 같이 빈번한 요청이 들어오는 서비스의 경우 대부분 이 방식으로 동작함. - 이 방식으로 동작하는 데몬들은 프로세스의 상태를 확인하는 ps 명령으로 확인해보면 항상 동작중인 것을 확인할 수 있음. ② inet 방식 - 프로세스가 메모리에 항상 상주하는 것이 아니라, 클라이언트의 서비스 요청이 들어왔을 때 관련 프로세스를 실행시키고 접속 종료 후에는 자동으로 프로세스를 종료시키는 방식 - 자주 사용하지 않는 서비..

  20. 2021.02.10 RAID(Redundant Array of Independent[Inexpensive] Disks)

    RAID(Redundant Array of Independent[Inexpensive] Disks) - 여러 개의 하드디스크가 있을 때, 동일한 데이터를 다른 위치에 중복해서 저장하는 방법 - 데이터를 여러 개의 디스크에 저장하여 입출력 작업이 균형을 이루게 되어 전체적인 성능을 향상시킴. - 운영체제에서 하나의 RAID는 논리적으로 하나의 디스크로 인식하여 처리됨. - 현재 RAID는 데이터를 기록하는 방식과 에러를 체크하는 패리티(Parity)나 ECC(Error Check & Correction) 사용 등 구성 방법에 따라 다양한 형태로 존재함. - 초기의 RAID는 저용량 하드디스크를 하나의 디스크로 확장하여 사용하는 것이 주류였으나, 현재는 백업을 가능하게 하고 안정적인 데이터의 보존과 유지 기..

  21. 2021.02.10 라이선스(License)

    주요 라이선스(License) # GPL(General Public License) FSF의 창시자인리처드 스톨먼은GNU GPL에서 다음의 다섯 가지의 의무를 저작권의 한 부분으로서 강제함. ① 컴퓨터 프로그램은 어떠한 목적으로든지 사용할 수 있다. 다만 법으로 제한하는 행위는 할 수 없다. ② 컴퓨터 프로그램의 실행 복사본은 언제나 프로그램의 소스 코드와 함께 판매하거나 소스 코드를 무료로 배포해야 한다. ③ 컴퓨터 프로그램의 소스 코드를 용도에 따라 변경할 수 있다. ④ 변경된 컴퓨터 프로그램 역시 프로그램의 소스 코드를 반드시 공개 배포해야 한다. ⑤ 변경된 컴퓨터 프로그램 역시 반드시 똑같은 라이선스인 GPL 라이선스를 적용해야 한다. GPL 버전별 주요 특징 버전내용 GPLv1 프로그램의 소스 ..

  22. 2021.02.06 시그널(Signal)

    시그널(Signal) - '신호'라는 의미로 리눅스에서는 프로세스끼리 서로 통신할 때 사용함. - 즉, 특정 프로세스가 다른 프로세스에게 메시지를 보낼 때 시그널을 이용함. - 리눅스에서 사용하는 시그널에는 사용자가 인터럽트 키를 통해 발생시키는 시그널, 프로세스가 발생시키는 시그널, 하드웨어가 발생시키는 시그널 등 매우 다양함. - 시그널의 목록은 명령행에서 'kill -l'로 확인할 수 있음. - 각 시그널에는 이름이 있고, 번호로 관리됨. $ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIG..

  23. 2021.02.06 OSI 7계층(OSI 7-Layer)

    OSI(Open System Interconnection) - ISO(Internatonal Standardization Organization)에서 개발 - 컴퓨터 네트워크 프로토콜 디자인과 통신을 7계층으로 나누어 정의 - 각 계층은 서로 독립적으로 이루어져 있으며, 각 계층은 하위 계층의 기능만을 이용하고 상위 계층에게 기능을 제공 응용 계층 응용 계층 표현 계층 표현 계층 세션 계층 세션 계층 전송 계층 전송 계층 네트워크 계층 네트워크 계층 데이터 링크 계층 전송 매체 데이터 링크 계층 물리 계층 물리 계층 (1) 물리 계층(Physical Layer) - 실제 장치들을 연결하기 위해 필요한 케이블 및 연결 장치 등과 같은 기계적인 항목과 전압, 신호 방식 등의 전기적인 항목에 대한 특성 규정 ..

  24. 2020.08.29 vim 설정 변경하는 방법 (탭 공백 4칸으로 바꾸기)

    vim의 설정을 변경하려면 홈 디렉토리(~)에 .vimrc 파일을 생성한 후, 이 파일에 설정하고 싶은 내용을 입력해주면 된다. ubuntu@ip-172-xx-xx-xx:~$ cd ~ubuntu@ip-172-xx-xx-xx:~$ vim .vimrc vim에서 탭(Tab) 버튼을 누르면 기본으로 8칸의 공백이 생기는데 이것을 4칸으로 바꾸려면 .vimrc 파일에 다음과 같은 내용을 입력해주면 된다. > .vimrc set smartindentset tabstop=4set expandtabset shiftwidth=4

  25. 2020.08.25 [리눅스] 쉘(Shell) 프로그램 구현 (execl(), execlp() 사용)

    쉘(Shell) 프로그램 구현 (execl(), execlp() 사용) 리눅스에서 C 언어의 `execl()`, `execlp()` 함수를 사용하여 쉘 프로그램을 구현할 수 있다. ■ `execl()`, 함수를 사용하여 쉘 프로그램 구현하기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 #include #include #include #include #include #include #define MAXLINE 64 int main(int argc, char **argv) { char buf[MAXLINE]; pid_t pid; printf("TestShell ver 1.0\n..

  26. 2020.08.20 XShell 또는 PuTTY를 이용하여 AWS EC2 Ubuntu Server에 연결하기

    *XShell 또는 PuTTY를 이용하여 AWS EC2 Ubuntu Server에 연결하기 AWS EC2 설정1. 인스턴트 생성 : Ubuntu Server (ex: Ubuntu Server 20.04 LTS (HVM), SSD Volume Type)2. 키 페어 생성 & .pem 파일 저장3. [네트워크 및 보안] 탭 → [탄력적 IP] → [탄력적 IP 주소 할당] → 할당 후 [탄력적 IP 주소 연결] → 인스턴스 : (생성한 인스턴스) 선택 후 [연결]4. [인스턴스] 탭 → 생성한 인스턴스의 , , 확인 XShell 설정- [파일] 탭 → [새로 만들기]- [연결] 탭- 이름 : (임의 설정) (ex: AWSEC2_Ubuntu)- 호스트 : AWS EC2의 IP 입력- [사용자 인증] 탭- 방법..

  27. 2020.05.05 우분투 su: Authentication failure 오류 해결 방법

    가상머신에 우분투(Ubuntu)를 설치한 후 root 권한을 얻기 위해 'su root' 명령어를 입력했는데 'su: Authentication failure' 오류가 났다.이 문제는 초기에 root 비밀번호가 설정되어 있지 않아서 발생하는 문제이다.따라서 'sudo passwd root' 명령어를 입력하여 root 비밀번호를 설정한 후에 root 권한을 얻으면 된다.

728x90


📖 Contents 📖