<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>호두파파</title>
    <link>https://dbstkd95.tistory.com/</link>
    <description>dbstkd95 님의 블로그 입니다.</description>
    <language>ko</language>
    <pubDate>Fri, 10 Apr 2026 04:19:05 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>IT 공부방</managingEditor>
    <image>
      <title>호두파파</title>
      <url>https://tistory1.daumcdn.net/tistory/7411252/attach/94de79a5a8654bf09c1b494dd630ddac</url>
      <link>https://dbstkd95.tistory.com</link>
    </image>
    <item>
      <title># L2 [네트워크 기초] - Mac Address</title>
      <link>https://dbstkd95.tistory.com/entry/L2-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EC%B4%88-Mac-Address</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;ChatGPT Image 2025년 9월 18일 오전 09_48_45.png&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cdFemZ/btsQD11tKW7/HztsjCa1MO7zjcnhYTzAqK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cdFemZ/btsQD11tKW7/HztsjCa1MO7zjcnhYTzAqK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cdFemZ/btsQD11tKW7/HztsjCa1MO7zjcnhYTzAqK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcdFemZ%2FbtsQD11tKW7%2FHztsjCa1MO7zjcnhYTzAqK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;672&quot; height=&quot;448&quot; data-filename=&quot;ChatGPT Image 2025년 9월 18일 오전 09_48_45.png&quot; data-origin-width=&quot;1536&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요 오늘은 네트워크 기초지식과 관련하여 전달드립니다. 네트워크를 공부하다 보면은 Layer7 이라는 말을 자주 들어 보셨을 겁니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네트워크 엔지니어라면 앞으로 L2-L7 에 대한 기술을 사용합니다. L2-L7을 장비의 기준으로 나누면 이해하기 쉽습니다. 이제 본격적으로&amp;nbsp; L2가 무엇인지 설명 드리겠습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;L2- 데이터계층&lt;/li&gt;
&lt;li&gt;L3- 네트워크 계층&lt;/li&gt;
&lt;li&gt;L4- 전송 계층&lt;/li&gt;
&lt;li&gt;L7- 응용 계층&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;u&gt;Layer 2&lt;/u&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Layer2는 저희가 흔히 애기하는 스위치, 허브 등의 장비를 의미합니다. 그렇다면 해당 장비들의 역할은 무엇일까요?&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.jpg&quot; data-origin-width=&quot;367&quot; data-origin-height=&quot;137&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bzUHfq/btsQB2AG9ny/QSZR5GoJg6BkeOGTb8ASW1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzUHfq/btsQB2AG9ny/QSZR5GoJg6BkeOGTb8ASW1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzUHfq/btsQB2AG9ny/QSZR5GoJg6BkeOGTb8ASW1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzUHfq%2FbtsQB2AG9ny%2FQSZR5GoJg6BkeOGTb8ASW1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;617&quot; height=&quot;230&quot; data-filename=&quot;다운로드.jpg&quot; data-origin-width=&quot;367&quot; data-origin-height=&quot;137&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대부분 장비끼리 통신을 할때 IP기반으로 한다고 알고 있습니다. 하지만 스위치에 경우 IP를 기반으로 통신을 하지 않습니다. 스위치는 기본적으로 Mac 주소를 참조하여 정보를 전달합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시로 아래의 서버 두개가 스위치와 연결되어 있습니다 해당 장비들은 모두 스위치를 통해서 통신을 합니다. 이때 스위치는 장비들이 처음 연결되었을 때 브로드캐스트를 하여 Mac 정보를 받아 옵니다. 이 다음 부터 스위치는 MAC Address 라는 것을 보고 타 장비에게로 전달을 합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;565&quot; data-origin-height=&quot;332&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8vMxk/btsQCIIsNiE/ve2Vimw1TEyyRCH2AfYeZ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8vMxk/btsQCIIsNiE/ve2Vimw1TEyyRCH2AfYeZ1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8vMxk/btsQCIIsNiE/ve2Vimw1TEyyRCH2AfYeZ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8vMxk%2FbtsQCIIsNiE%2Fve2Vimw1TEyyRCH2AfYeZ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;837&quot; height=&quot;492&quot; data-origin-width=&quot;565&quot; data-origin-height=&quot;332&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MAC Addresse 란 장비간의 고유 번호입니다. 해당 주소는 고유 번호이기 때문에 유일하며 스위치는 해당 정보를 ARP 라는 프로토콜을 통해서 정보를 받아와 Mac Table이라는 곳에 정리를 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시로 서버 1번 이 서버 2번에게로 Ping을 보냅니다. 이떄 서버 1의 경우 서버의 IP 주소 밖에 모릅니다. 이때 스위치는 서버의 1의 요청을 받고 목적지 주소와 연결되는 Mac 주소를 찾아 전달합니다. 이러한 흐름이 기본적인 스위치에 정보 전달 방식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xgxpC/btsQElSQTP4/Ckx4quJfRY5pQw2kRxg2M0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xgxpC/btsQElSQTP4/Ckx4quJfRY5pQw2kRxg2M0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xgxpC/btsQElSQTP4/Ckx4quJfRY5pQw2kRxg2M0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxgxpC%2FbtsQElSQTP4%2FCkx4quJfRY5pQw2kRxg2M0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;789&quot; height=&quot;496&quot; data-origin-width=&quot;563&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;전달 방식:&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;서버1&lt;/b&gt;: src:192.168.1.1 - dst:192.168.2.1&lt;/li&gt;
&lt;li&gt;&lt;b&gt;스위치:&lt;/b&gt; src:&lt;span style=&quot;color: #000000;&quot;&gt;00:1A:2B:3C:4D:&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;5E( 192.168.1.1 )&lt;/span&gt; - dst:&lt;span style=&quot;color: #000000;&quot;&gt;00:2B:2B:3C:4D:&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;5E( 192.168.2.1 )&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후에는 L2에서 중요한 개념인 Vlan에 대해서 알아보도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다.&lt;/p&gt;</description>
      <category>네트워크/L2</category>
      <category>ccna</category>
      <category>ccnp</category>
      <category>Cisco</category>
      <category>Layer2</category>
      <category>network</category>
      <category>네트워크</category>
      <category>네트워크 관리사</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/15</guid>
      <comments>https://dbstkd95.tistory.com/entry/L2-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EC%B4%88-Mac-Address#entry15comment</comments>
      <pubDate>Thu, 18 Sep 2025 10:55:02 +0900</pubDate>
    </item>
    <item>
      <title>[Kubernetes/쿠버네티스] - 기본 환경 구축</title>
      <link>https://dbstkd95.tistory.com/entry/Kubernetes%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EA%B8%B0%EB%B3%B8-%ED%99%98%EA%B2%BD-%EA%B5%AC%EC%B6%95</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;318&quot; data-origin-height=&quot;159&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wPAbD/btsQEnQFLyP/EsVKuOMBUrhVJuoTtkfkGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wPAbD/btsQEnQFLyP/EsVKuOMBUrhVJuoTtkfkGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wPAbD/btsQEnQFLyP/EsVKuOMBUrhVJuoTtkfkGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwPAbD%2FbtsQEnQFLyP%2FEsVKuOMBUrhVJuoTtkfkGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;332&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;318&quot; data-origin-height=&quot;159&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요 오늘은 &lt;b&gt;&lt;a href=&quot;https://dbstkd95.tistory.com/entry/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EA%B8%B0%EC%B4%88-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%84%A4%EC%B9%98&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;쿠버네티스 설치&lt;/a&gt;&lt;/b&gt;에 이어서 환경 구축을 해보겠습니다. 오늘 소개해드릴 환경 구축이란 쿠버네티스 환경을 더욱 쉽고 편하게 이용하기 위한 환경 구축입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 항목:&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;kubectl autocomplete&lt;/li&gt;
&lt;li&gt;kubectl krew&lt;/li&gt;
&lt;li&gt;ctx, ns, neat&lt;/li&gt;
&lt;li&gt;helm&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;u&gt; kubectl autocomplete&lt;/u&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;쿠버네티스의 명령어들은 기본적으로 들여쓰기와 단축어가 없습니다. 떄문에 kubectl autocomplete은 쿠버네티스 환경에서 가장 유용한 서비스입니다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치방법:&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1758154077647&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;apt-get install bash-completion

type _init_completion

source /usr/share/bash-completion/bash_completion

echo 'source &amp;lt;(kubectl completion bash)' &amp;gt;&amp;gt;~/.bashrc

echo 'alias k=kubectl' &amp;gt;&amp;gt;~/.bashrc
echo 'complete -o default -F __start_kubectl k' &amp;gt;&amp;gt;~/.bashrc

source ~/.bashrc&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참조 사이트: &lt;a href=&quot;https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion&lt;/a&gt;&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;u&gt;kubectl krew&lt;/u&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;krew는 kubectl의 플러그인 매니저 입니다. kubectl 안에서 유용하게 사용할수 있는 플러그인을 설치할 수 있는 서비스입니다&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 방법:&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1758154794905&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;(
  set -x; cd &quot;$(mktemp -d)&quot; &amp;amp;&amp;amp;
  OS=&quot;$(uname | tr '[:upper:]' '[:lower:]')&quot; &amp;amp;&amp;amp;
  ARCH=&quot;$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')&quot; &amp;amp;&amp;amp;
  KREW=&quot;krew-${OS}_${ARCH}&quot; &amp;amp;&amp;amp;
  curl -fsSLO &quot;https://github.com/kubernetes-sigs/krew/releases/latest/download/${KREW}.tar.gz&quot; &amp;amp;&amp;amp;
  tar zxvf &quot;${KREW}.tar.gz&quot; &amp;amp;&amp;amp;
  ./&quot;${KREW}&quot; install krew
)

echo 'export PATH=&quot;${KREW_ROOT:-$HOME/.krew}/bin:$PATH&quot;' &amp;gt;&amp;gt; ~/.bashrc
source ~/.bashrc&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-end=&quot;1107&quot; data-start=&quot;1086&quot; data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-end=&quot;1107&quot; data-start=&quot;1086&quot; data-ke-size=&quot;size26&quot;&gt;&lt;u&gt;kubectx (ctx)&lt;/u&gt;&lt;/h2&gt;
&lt;p data-end=&quot;1205&quot; data-start=&quot;1108&quot; data-ke-size=&quot;size16&quot;&gt;여러 클러스터 context를 쉽게 전환할 수 있게 해주는 플러그인입니다.&lt;br /&gt;kubectx dev, kubectx prod처럼 간단히 클러스터 이동이 가능합니다.&lt;/p&gt;
&lt;p data-end=&quot;1217&quot; data-start=&quot;1207&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 방법:&lt;/b&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1758154559059&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;kubectl krew install ctx&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-end=&quot;1280&quot; data-start=&quot;1261&quot; data-ke-size=&quot;size26&quot;&gt;&lt;u&gt;kubens (ns)&lt;/u&gt;&lt;/h2&gt;
&lt;p data-end=&quot;1374&quot; data-start=&quot;1281&quot; data-ke-size=&quot;size16&quot;&gt;네임스페이스 전환을 간단히 할 수 있는 플러그인입니다.&lt;br /&gt;kubens kube-system, kubens default처럼 네임스페이스 변경이 가능합니다.&lt;/p&gt;
&lt;p data-end=&quot;1386&quot; data-start=&quot;1376&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 방법:&lt;/b&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1758154579948&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;kubectl krew install ns&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;h2 data-end=&quot;1449&quot; data-start=&quot;1429&quot; data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-end=&quot;1449&quot; data-start=&quot;1429&quot; data-ke-size=&quot;size26&quot;&gt;&lt;u&gt;kubectl neat&lt;/u&gt;&lt;/h2&gt;
&lt;p data-end=&quot;1542&quot; data-start=&quot;1450&quot; data-ke-size=&quot;size16&quot;&gt;kubectl get -o yaml 결과에서 불필요한 메타데이터(status, managedFields 등)를 제거해 출력 내용을 깔끔하게 보여줍니다.&lt;/p&gt;
&lt;p data-end=&quot;1554&quot; data-start=&quot;1544&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 방법:&lt;/b&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1758154593302&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;kubectl krew install neat&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-end=&quot;1611&quot; data-start=&quot;1599&quot; data-ke-size=&quot;size26&quot;&gt;&lt;u&gt;helm&lt;/u&gt;&lt;/h2&gt;
&lt;p data-end=&quot;1672&quot; data-start=&quot;1612&quot; data-ke-size=&quot;size16&quot;&gt;쿠버네티스 패키지 매니저로, 애플리케이션을 Chart 형태로 설치, 배포, 업데이트 관리할 수 있습니다.&lt;/p&gt;
&lt;p data-end=&quot;1684&quot; data-start=&quot;1674&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;설치 방법:&lt;/b&gt;&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;pre id=&quot;code_1758154614773&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3&lt;/code&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>쿠버네티스</category>
      <category>aws</category>
      <category>CKA</category>
      <category>DevOps</category>
      <category>Docker</category>
      <category>Kubernetes</category>
      <category>뎁스옵스</category>
      <category>도커</category>
      <category>리눅스</category>
      <category>쿠버네티스</category>
      <category>클라우드</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/14</guid>
      <comments>https://dbstkd95.tistory.com/entry/Kubernetes%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EA%B8%B0%EB%B3%B8-%ED%99%98%EA%B2%BD-%EA%B5%AC%EC%B6%95#entry14comment</comments>
      <pubDate>Thu, 18 Sep 2025 09:21:36 +0900</pubDate>
    </item>
    <item>
      <title>[Kubernetes/쿠버네티스] - 쿠버네티스 설치</title>
      <link>https://dbstkd95.tistory.com/entry/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EA%B8%B0%EC%B4%88-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%84%A4%EC%B9%98</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;318&quot; data-origin-height=&quot;159&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cA6mcP/btsQCEdSVfA/9ZSRqXAGJcy5yMKBJ0XQy1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cA6mcP/btsQCEdSVfA/9ZSRqXAGJcy5yMKBJ0XQy1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cA6mcP/btsQCEdSVfA/9ZSRqXAGJcy5yMKBJ0XQy1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcA6mcP%2FbtsQCEdSVfA%2F9ZSRqXAGJcy5yMKBJ0XQy1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;714&quot; height=&quot;357&quot; data-filename=&quot;다운로드.png&quot; data-origin-width=&quot;318&quot; data-origin-height=&quot;159&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 쿠버네티스 설치에 대해서 공유드립도록 하겠습니다. 먼저 설치의 앞서 노드 준비 부터 설명 드리도록 하겠습니다. 저의 경우 OS는&lt;b&gt; Ubuntu&lt;/b&gt;를 사용하였습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;준비사항:&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;vmware&lt;/li&gt;
&lt;li&gt;노드 3대
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;마스터 노드 (1대)&lt;/li&gt;
&lt;li&gt;워커노드 (2대)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;마스터 노드 램 4기가 이상 워커노드 램 2기가 이상&lt;/li&gt;
&lt;li&gt;하드디스크 50기가 이상 (공통)&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;VM으로 실행시 저의 경우 Bridge 모드를 사용해서 네트워크를 구성하였습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;마스터 노드 실행&amp;nbsp;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 시스템 업데이트 및 필수 패키지 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 시스템을 최신 상태로 업데이트하고, 필요한 기본 패키지들을 설치하자.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sudo apt-get update **&amp;amp;&amp;amp;** sudo apt-get upgrade -y
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 도커 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스는 컨테이너 런타임이 필요하다. 여기서는 도커를 사용할 것이다.&lt;/p&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL &amp;lt;https://download.docker.com/linux/ubuntu/gpg&amp;gt; -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \\
&quot;deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] &amp;lt;https://download.docker.com/linux/ubuntu&amp;gt; \\
$(. /etc/os-release **&amp;amp;&amp;amp;** echo &quot;$VERSION_CODENAME&quot;) stable&quot; | \\
sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker
sudo systemctl enable docker
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 쿠버네티스 컴포넌트 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 쿠버네티스의 주요 컴포넌트인 kubelet, kubeadm, kubectl을 설치해 보자.&lt;/p&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;echo &quot;deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] &amp;lt;https://pkgs.k8s.io/core:/stable:/v1.30/deb/&amp;gt; /&quot; | sudo tee /etc/apt/sources.list.d/kubernetes.list
curl -fsSL &amp;lt;https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key&amp;gt; | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 시스템 설정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스가 제대로 작동하려면 몇 가지 시스템 설정을 바꿔야 한다.&lt;/p&gt;
&lt;pre class=&quot;livecodeserver&quot;&gt;&lt;code&gt;*# 스왑 비활성화*
sudo swapoff -a
sudo sed -i '/swap/d' /etc/fstab

*# iptables 설정*
cat &amp;lt;&amp;lt;EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

sudo modprobe overlay
sudo modprobe br_netfilter

cat &amp;lt;&amp;lt;EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF

sudo sysctl --system
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. containerd 설정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스와 함께 사용할 containerd를 설정해 보자.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sudo mkdir -p /etc/containerd
sudo containerd config default | sudo tee /etc/containerd/config.toml
sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
sudo systemctl restart containerd
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;6. kubeadm 이미지 pull&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;kubeadm을 사용하여 쿠버네티스 클러스터를 초기화하기 전에 필요한 이미지를 미리 pull해 두자.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sudo kubeadm config images pull
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;7. 쿠버네티스 클러스터 초기화&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 쿠버네티스 클러스터를 초기화할 준비가 됐다.&lt;/p&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;sudo kubeadm init --pod-network-cidr**=**10.244.0.0/16
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;초기화가 완료되면 다음과 비슷한 메시지가 나올 것이다:&lt;/p&gt;
&lt;pre class=&quot;sql&quot;&gt;&lt;code&gt;Your Kubernetes control-plane has initialized successfully!

To start using your cluster, you need to run the following as a regular user:

  mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config

You should now deploy a pod network to the cluster.
Run &quot;kubectl apply -f [podnetwork].yaml&quot; with one of the options listed at:
  &amp;lt;https://kubernetes.io/docs/concepts/cluster-administration/addons/&amp;gt;

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join :6443 --token  --discovery-token-ca-cert-hash sha256:

&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 지침을 따라 kubectl 설정을 완료하자:&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;8. 네트워크 플러그인 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Pod 간 통신을 위해 네트워크 플러그인을 설치해야 한다. 여기서는 Calico를 사용할 것이다:&lt;/p&gt;
&lt;pre class=&quot;crystal&quot;&gt;&lt;code&gt;kubectl apply -f &amp;lt;https://raw.githubusercontent.com/projectcalico/calico/v3.26.1/manifests/calico.yaml&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;9. 단일 노드 설정 완료&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기본적으로 쿠버네티스는 컨트롤 플레인 노드에 워크로드를 스케줄링하지 않는다. 마스터 노드에서 워크로드를 실행하려면 다음 명령을 실행해야 한다:&lt;/p&gt;
&lt;pre class=&quot;crmsh&quot;&gt;&lt;code&gt;kubectl taint nodes --all node-role.kubernetes.io/control-plane-
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;10. 클러스터 상태 확인&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치가 끝났다! 이제 클러스터의 상태를 확인해 보자:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;kubectl get nodes&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정상적으로 설치됐다면 다음과 비슷한 출력이 나올 것이다:&lt;/p&gt;
&lt;pre class=&quot;lsl&quot;&gt;&lt;code&gt;NAME               STATUS   ROLES           AGE     VERSION
your-hostname      Ready    control-plane   5m      v1.30.x

&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Worker Node 설치&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 시스템 업데이트 및 필수 패키지 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 시스템을 최신 상태로 업데이트하고, 필요한 기본 패키지들을 설치하자.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sudo apt-get update **&amp;amp;&amp;amp;** sudo apt-get upgrade -y
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 도커 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스는 컨테이너 런타임이 필요하다. 여기서는 도커를 사용할 것이다.&lt;/p&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL &amp;lt;https://download.docker.com/linux/ubuntu/gpg&amp;gt; -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \\
&quot;deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] &amp;lt;https://download.docker.com/linux/ubuntu&amp;gt; \\
$(. /etc/os-release **&amp;amp;&amp;amp;** echo &quot;$VERSION_CODENAME&quot;) stable&quot; | \\
sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker
sudo systemctl enable docker
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 쿠버네티스 컴포넌트 설치&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 쿠버네티스의 주요 컴포넌트인 kubelet, kubeadm, kubectl을 설치해 보자.&lt;/p&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;echo &quot;deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] &amp;lt;https://pkgs.k8s.io/core:/stable:/v1.30/deb/&amp;gt; /&quot; | sudo tee /etc/apt/sources.list.d/kubernetes.list
curl -fsSL &amp;lt;https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key&amp;gt; | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg

sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 시스템 설정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스가 제대로 작동하려면 몇 가지 시스템 설정을 바꿔야 한다.&lt;/p&gt;
&lt;pre class=&quot;livecodeserver&quot;&gt;&lt;code&gt;*# 스왑 비활성화*
sudo swapoff -a
sudo sed -i '/swap/d' /etc/fstab

*# iptables 설정*
cat &amp;lt;&amp;lt;EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

sudo modprobe overlay
sudo modprobe br_netfilter

cat &amp;lt;&amp;lt;EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF

sudo sysctl --system
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. containerd 설정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쿠버네티스와 함께 사용할 containerd를 설정해 보자.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;sudo mkdir -p /etc/containerd
sudo containerd config default | sudo tee /etc/containerd/config.toml
sudo sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml
sudo systemctl restart containerd
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;6. Join&lt;/h3&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;kubeadm join &amp;lt;your-master-ip&amp;gt;:6443 --token &amp;lt;token&amp;gt; --discovery-token-ca-cert-hash sha256:&amp;lt;hash&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;7. 확인&lt;/h3&gt;
&lt;pre id=&quot;code_1758072327286&quot; class=&quot;lsl&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;kubectl get node
NAME      STATUS   ROLES           AGE   VERSION
master    Ready    control-plane   8d    v1.30.14
worker1   Ready    &amp;lt;none&amp;gt;          8d    v1.30.14
worker2   Ready    &amp;lt;none&amp;gt;          8d    v1.30.14&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>쿠버네티스</category>
      <category>CKA</category>
      <category>DevOps</category>
      <category>Docker</category>
      <category>IT 지식</category>
      <category>k8s</category>
      <category>Kubernetes</category>
      <category>뎁스옵스</category>
      <category>도커</category>
      <category>리눅스</category>
      <category>쿠버네티스</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/13</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EA%B8%B0%EC%B4%88-%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%84%A4%EC%B9%98#entry13comment</comments>
      <pubDate>Wed, 17 Sep 2025 10:31:44 +0900</pubDate>
    </item>
    <item>
      <title>[AWS 자격증] AWS SAA 취득 후기</title>
      <link>https://dbstkd95.tistory.com/entry/AWS-%EC%9E%90%EA%B2%A9%EC%A6%9D-AWS-SSA-%EC%B7%A8%EB%93%9D-%ED%9B%84%EA%B8%B0</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요 오랫만에 인사드립니다. 많은 분들께서 AWS 자격증 취득을 하시기에 저 또한 도전해보기로 하였고 비교적 최근에 취득에 성공하였습니다. 관련하여 저의 취득 후기를 알려드리도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;430&quot; data-origin-height=&quot;316&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dY6vi5/btsQCgde0Ia/r1M8bcqMbxtJe0YzLaHMKk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dY6vi5/btsQCgde0Ia/r1M8bcqMbxtJe0YzLaHMKk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dY6vi5/btsQCgde0Ia/r1M8bcqMbxtJe0YzLaHMKk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdY6vi5%2FbtsQCgde0Ia%2Fr1M8bcqMbxtJe0YzLaHMKk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;464&quot; height=&quot;341&quot; data-origin-width=&quot;430&quot; data-origin-height=&quot;316&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;공부 방법&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1. Udemy&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는 일단 뭐든 시험이 마찬가지지만 무조건 개념을 습득하고 문제 풀기를 진행 합니다 때문에 Udemy 강의를 통하여 수업을 들었습니다. 제가 들은 강의는 &lt;span style=&quot;color: #f3c000;&quot;&gt;&lt;b&gt;AWS Certified Solutions Architect -Associate&lt;/b&gt;&lt;/span&gt; 입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;237&quot; data-origin-height=&quot;193&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cJbosU/btsQBuv9UJi/ZjbIVpETJMByks3IXH1xP0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cJbosU/btsQBuv9UJi/ZjbIVpETJMByks3IXH1xP0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cJbosU/btsQBuv9UJi/ZjbIVpETJMByks3IXH1xP0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcJbosU%2FbtsQBuv9UJi%2FZjbIVpETJMByks3IXH1xP0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;395&quot; height=&quot;322&quot; data-origin-width=&quot;237&quot; data-origin-height=&quot;193&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03/&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 강의는 AWS에서 사용되는 대부분의 서비스에 대한 사용법과 개념에 대해서 아주 자세히 기술합니다. 만약 AWS 에 개념에 대해 자세히&amp;nbsp; 알아보고 싶으신 분께 추천드립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2. 문제 풀기&amp;nbsp;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일단 AWS를 처음 공부하신분들의 경우는 모든 서비스가 생소할 수 밖에 없습니다. 시험에서 테스트 하는것은 주로 이사람이 실제로 AWS 서비스들의 대해 얼마나 이해를 하고 있느냐를 알아봅니다. 때문에 개념을 어느정도 이해하셨다면 바로 문제를 풀어 보시기를 추전드립니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제는 다음과 같이 출제 됩니다:&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;264&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IoKeV/btsQB3LZBZt/N4pmKIHUGOXZcNpkYpMkU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IoKeV/btsQB3LZBZt/N4pmKIHUGOXZcNpkYpMkU0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IoKeV/btsQB3LZBZt/N4pmKIHUGOXZcNpkYpMkU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIoKeV%2FbtsQB3LZBZt%2FN4pmKIHUGOXZcNpkYpMkU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;808&quot; height=&quot;285&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;749&quot; data-origin-height=&quot;264&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 문제에서 답은 B입니다. S3는 원래 외부망을 통해서 접근하는 서비스 입니다. 하지만 엔드포인트를 통해서 외부망을 거치지 않고 S3을 사용할 수 있게 해줍니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위 처럼 어떠한 상황을 주고 해당 상황에서 어떠한 서비스를 쓰는게 적절한가를 다루는 문제가 대부분입니다. 때문에 제가 추천 즈리는 부분은 강의를 &lt;span style=&quot;color: #f3c000;&quot;&gt;&lt;b&gt;너무 오래 듣지 마세요&lt;/b&gt;&lt;/span&gt;. 문제 또한 개념들을 다루는 교재라고 생각 하시고 문제에 더욱 많이 집중 하시기 바랍니다. 무슨 서비스인지에 대한 개념을 유데미 강의에서 이해하시면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제 덥프 사이트로&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt; Exam Topic&lt;/b&gt;&lt;/span&gt; 을 추천드립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 Exam Topic에 경우 제한이 있기 때문에 문제를 많이 풀어보고 싶으신 분이 계시다면 댓글을 통해 공유 요청 해주시면 따로 공유 드리겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감사합니다&amp;nbsp;&lt;/p&gt;</description>
      <category>AWS</category>
      <category>aws</category>
      <category>AWS SAA</category>
      <category>IT 지식</category>
      <category>SAA</category>
      <category>네트워크</category>
      <category>네트워크 엔지니어</category>
      <category>리눅스</category>
      <category>시스템 엔지니어</category>
      <category>클라우드</category>
      <category>클라우드 엔지니어</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/12</guid>
      <comments>https://dbstkd95.tistory.com/entry/AWS-%EC%9E%90%EA%B2%A9%EC%A6%9D-AWS-SSA-%EC%B7%A8%EB%93%9D-%ED%9B%84%EA%B8%B0#entry12comment</comments>
      <pubDate>Wed, 17 Sep 2025 10:02:18 +0900</pubDate>
    </item>
    <item>
      <title>[Linux NTP 서버 구축 방법]리눅스 네트워크 시간 동기화의 중요성과 설정 가이드</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-ntp-%EC%84%9C%EB%B2%84-%EA%B5%AC%EC%B6%95-%EB%B0%A9%EB%B2%95</link>
      <description>&lt;div&gt;
&lt;div data-message-model-slug=&quot;gpt-4o&quot; data-message-id=&quot;4fc10295-cab4-4e1c-a673-1a526b16cb87&quot; data-message-author-role=&quot;assistant&quot;&gt;
&lt;h2 style=&quot;color: #000000; text-align: center;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;리눅스 시스템에서 NTP 서버 구축 방법 완벽 가이드&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;mug_obj_201804050846443473.jpg&quot; data-origin-width=&quot;550&quot; data-origin-height=&quot;212&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eWc3Wl/btsKJ4C4zcR/dnG4lbqLoZPHG304Tlm86k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eWc3Wl/btsKJ4C4zcR/dnG4lbqLoZPHG304Tlm86k/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eWc3Wl/btsKJ4C4zcR/dnG4lbqLoZPHG304Tlm86k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeWc3Wl%2FbtsKJ4C4zcR%2FdnG4lbqLoZPHG304Tlm86k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;NTP 서버&quot; loading=&quot;lazy&quot; width=&quot;550&quot; height=&quot;212&quot; data-filename=&quot;mug_obj_201804050846443473.jpg&quot; data-origin-width=&quot;550&quot; data-origin-height=&quot;212&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 리눅스 시스템에서 시간 동기화를 위해 중요한 &lt;b&gt;NTP(Network Time Protocol) 서버 구축 방법&lt;/b&gt;에 대해 알아보겠습니다. NTP 서버는 네트워크 상에서 서버와 클라이언트 간 시간을 정확히 맞춰주는 역할을 하며, 이를 통해 시스템 간 데이터 일관성을 유지하고 로그 관리 및 보안 모니터링을 더욱 효율적으로 할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 포스팅에서는 &lt;b&gt;리눅스에서 NTP 서버를 설치하고 설정하는 방법&lt;/b&gt;을 단계별로 설명드릴 예정입니다. 초보자부터 시스템 관리자 분들까지 쉽게 따라 하실 수 있도록 준비했으니 많은 도움이 되길 바랍니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #222222; text-align: start;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #006dd7; text-align: start;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323; text-align: start;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Server 측&lt;/h3&gt;
&lt;pre class=&quot;dts&quot;&gt;&lt;code&gt;sudo nano /etc/chrony/chrony.conf
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;기존 NTP 서버 주석 처리 또는 제거&lt;/b&gt; (외부 동기화 서버를 제거):&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1731630470420&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#server 0.centos.pool.ntp.org iburst 
#server 1.centos.pool.ntp.org iburst&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;클라이언트의 동기화 요청 허용&lt;/b&gt;:&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1731630397144&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 특정 서브넷에 대한 접근 허용 예시:
allow 192.168.1.0/24

# 모든 클라이언트에 대한 접근 허용 예시:
allow 0.0.0.0/0

# 파일 저장 후 닫기 (Ctrl+O, Enter, Ctrl+X).

# Chronyd 서비스 재시작:
sudo systemctl restart chronyd

# 서버 상태 확인:
sudo chronyc sources&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;클라이언트&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt; &lt;span data-token-index=&quot;0&quot;&gt;1. 클라이언트 설정 파일 수정:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;sudo nano /etc/chrony/chrony.conf

# Chrony 서버를 동기화 소스로 추가:
server 192.168.1.10 iburst  # 예: Chrony 서버 IP

# Chronyd 서비스 재시작
sudo systemctl restart chronyd

# 클라이언트 상태 확인
chronyc sources -v
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* 192.168.163.133               3   6   377    38   -603us[ +109us] +/-   14ms

# ^* 연결 성공시 해당 표시로 표시된다

# 연결 정보 확인
[root@localhost ~]# chronyc tracking
Reference ID    : C0A8A385 (192.168.163.133)
Stratum         : 4
Ref time (UTC)  : Mon Sep 30 05:16:47 2024
System time     : 0.000310553 seconds fast of NTP time
Last offset     : +0.000509653 seconds
RMS offset      : 0.001310323 seconds
Frequency       : 9.339 ppm slow
Residual freq   : +5.886 ppm
Skew            : 21.176 ppm
Root delay      : 0.011722180 seconds
Root dispersion : 0.009504962 seconds
Update interval : 64.8 seconds
Leap status     : Normal

# 연결 강제 시도 
# 방화벽 및 기타 시도를 하고 난 뒤에도 변경이 없다면 해당 방법 추천
sudo chronyc -a makestep&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span data-token-index=&quot;0&quot;&gt;2. 방화벽 설정:&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1731630744465&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;sudo firewall-cmd --add-service=ntp --permanent
sudo firewall-cmd --reload&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/서버 구축</category>
      <category>centos</category>
      <category>Linux</category>
      <category>NTP</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 시험</category>
      <category>리눅스</category>
      <category>리눅스 기초</category>
      <category>시간 동기화</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/11</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-ntp-%EC%84%9C%EB%B2%84-%EA%B5%AC%EC%B6%95-%EB%B0%A9%EB%B2%95#entry11comment</comments>
      <pubDate>Fri, 15 Nov 2024 09:34:28 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 루트(root) 초기화 방법 - 리눅스 시스템에서 루트 계정 초기화 및 관리 완벽 가이드</title>
      <link>https://dbstkd95.tistory.com/entry/Linux-%EB%A3%A8%ED%8A%B8-%EC%B4%88%EA%B8%B0%ED%99%94-%EB%B0%A9%EB%B2%95-%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%97%90%EC%84%9C-%EB%A3%A8%ED%8A%B8-%EA%B3%84%EC%A0%95-%EC%B4%88%EA%B8%B0%ED%99%94-%EB%B0%8F-%EA%B4%80%EB%A6%AC-%EC%99%84%EB%B2%BD-%EA%B0%80%EC%9D%B4%EB%93%9C</link>
      <description>&lt;h2 style=&quot;text-align: center;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;리눅스 시스템에서 루트(root)계정 초기화 및 관리 완벽 가이드&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 리눅스 시스템에서 중요한 루트 계정 초기화 방법에 대해 알아보겠습니다. 루트 계정은 시스템 관리에서 필수적인 역할을 하며, 보안과 관련해서도 매우 중요한 부분입니다. 만약 루트 계정이 잠겼거나 초기화가 필요한 경우, 이를 안전하게 복구하는 방법을 알아보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 포스팅에서는 루트 계정 초기화 방법을 상세히 다루며, 시스템을 복구하고 정상적으로 관리할 수 있도록 돕겠습니다. 초보자 분들부터 전문가 분들까지 모두 유용하게 참고하실 수 있는 내용으로 구성했으니 많은 도움이 되시길 바랍니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스 시스템에서 루트 계정을 초기화하는 방법은 여러 가지가 있습니다. 이 가이드에서는 루트 계정에 대한 초기화 및 복구 절차, 패스워드 리셋 방법, 그리고 루트 계정의 보안을 강화하는 방법에 대해 상세히 설명합니다. 시스템에 중요한 변경을 가할 때 유용한 정보를 제공할 것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;방법 1&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;766&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biMUXS/btsKFGQa5gs/6bgu2VPTqgzkBqI5t5S7D1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biMUXS/btsKFGQa5gs/6bgu2VPTqgzkBqI5t5S7D1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biMUXS/btsKFGQa5gs/6bgu2VPTqgzkBqI5t5S7D1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiMUXS%2FbtsKFGQa5gs%2F6bgu2VPTqgzkBqI5t5S7D1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;redhat 9 root 초기화&quot; loading=&quot;lazy&quot; width=&quot;579&quot; height=&quot;437&quot; data-origin-width=&quot;1016&quot; data-origin-height=&quot;766&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;271&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vHXZ8/btsKGXDpwSk/xKgnQSCqk7T0qU9p25ZZo0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vHXZ8/btsKGXDpwSk/xKgnQSCqk7T0qU9p25ZZo0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vHXZ8/btsKGXDpwSk/xKgnQSCqk7T0qU9p25ZZo0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvHXZ8%2FbtsKGXDpwSk%2FxKgnQSCqk7T0qU9p25ZZo0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;rhcsa&quot; loading=&quot;lazy&quot; width=&quot;617&quot; height=&quot;271&quot; data-origin-width=&quot;617&quot; data-origin-height=&quot;271&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1731396332389&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# grub menu -&amp;gt; rescue kernel 선택 -&amp;gt; e클릭
# linux로 시작하는 행끝에 rd.break 추가 
rd.break
# ctrl + x&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;462&quot; data-origin-height=&quot;305&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3h6Fl/btsKFGQbDZw/oQ6tyi5W4P1FBgv2DocKk1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3h6Fl/btsKFGQbDZw/oQ6tyi5W4P1FBgv2DocKk1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3h6Fl/btsKFGQbDZw/oQ6tyi5W4P1FBgv2DocKk1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3h6Fl%2FbtsKFGQbDZw%2FoQ6tyi5W4P1FBgv2DocKk1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;루트 초기화&quot; loading=&quot;lazy&quot; width=&quot;462&quot; height=&quot;305&quot; data-origin-width=&quot;462&quot; data-origin-height=&quot;305&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1731396544478&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#  rw 모드로 다시 mount
mount -o remount,rw /sysroot

# 파일 시스템의 루트 변경
chroot /sysroot

# 비밀번호 설정
echo &quot;비밀번호&quot; |passwd root --stdin 

# relabel
touch /.autorelabel
# exit chroot
exit
# exit initramfs
exit&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;방법 2&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;633&quot; data-origin-height=&quot;280&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Qg4H1/btsKFESoH5v/8KnbFnikDLLdc4W6e3JWGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Qg4H1/btsKFESoH5v/8KnbFnikDLLdc4W6e3JWGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Qg4H1/btsKFESoH5v/8KnbFnikDLLdc4W6e3JWGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQg4H1%2FbtsKFESoH5v%2F8KnbFnikDLLdc4W6e3JWGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;레드햇&quot; loading=&quot;lazy&quot; width=&quot;633&quot; height=&quot;280&quot; data-origin-width=&quot;633&quot; data-origin-height=&quot;280&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1731397139040&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# grub메뉴에서 e클릭
# linux로 시작하는 행끝에 init=/bin.bash 추가 
init=/bin.bash
# ctrl + x&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;475&quot; data-origin-height=&quot;130&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2BCh6/btsKGIzM5hk/NypaFMNHhewkKOXqIICD41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2BCh6/btsKGIzM5hk/NypaFMNHhewkKOXqIICD41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2BCh6/btsKGIzM5hk/NypaFMNHhewkKOXqIICD41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2BCh6%2FbtsKGIzM5hk%2FNypaFMNHhewkKOXqIICD41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;redhat&quot; loading=&quot;lazy&quot; width=&quot;475&quot; height=&quot;130&quot; data-origin-width=&quot;475&quot; data-origin-height=&quot;130&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre id=&quot;code_1731397202860&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#  rw 모드로 다시 mount
mount -o remount,rw /

# 비밀번호 설정
echo flectrag |passwd root --stdin

# relabel
touch /.autorelabel

# 시스템 구동 (사진에 오타가 있으니 반드시 sbin 실행하세요)
user/sbin/reboot -f&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/리눅스 루트 초기화</category>
      <category>centos</category>
      <category>redhat</category>
      <category>Redhat9</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa9</category>
      <category>레드햇</category>
      <category>루트초기화</category>
      <category>리눅스 기초</category>
      <category>우분투</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/10</guid>
      <comments>https://dbstkd95.tistory.com/entry/Linux-%EB%A3%A8%ED%8A%B8-%EC%B4%88%EA%B8%B0%ED%99%94-%EB%B0%A9%EB%B2%95-%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%97%90%EC%84%9C-%EB%A3%A8%ED%8A%B8-%EA%B3%84%EC%A0%95-%EC%B4%88%EA%B8%B0%ED%99%94-%EB%B0%8F-%EA%B4%80%EB%A6%AC-%EC%99%84%EB%B2%BD-%EA%B0%80%EC%9D%B4%EB%93%9C#entry10comment</comments>
      <pubDate>Tue, 12 Nov 2024 16:42:08 +0900</pubDate>
    </item>
    <item>
      <title>[Linux 네트워크 설정] 리눅스 네트워크 기본 개념과 설정 방법 완벽 가이드</title>
      <link>https://dbstkd95.tistory.com/entry/Linux-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%84%A4%EC%A0%95-%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%84%A4%EC%A0%95-%EB%B0%A9%EB%B2%95-%EC%99%84%EB%B2%BD-%EA%B0%80%EC%9D%B4%EB%93%9C</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 &lt;b&gt;리눅스 네트워크 설정&lt;/b&gt;에 대해 알아보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스에서 네트워크 설정은 시스템 관리의 중요한 부분 중 하나인데요, 특히 서버 운영이나 시스템 관리 업무를 하시는 분들에게는 필수적인 지식입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 포스팅에서는 리눅스 네트워크의 기본 개념부터 IP 설정, 라우팅, 네트워크 인터페이스 관리까지 한 번에 이해할 수 있도록 설명해 드리겠습니다. 네트워크 설정이 처음이신 분이나 기초를 다시 다지고 싶은 분들에게 도움이 되길 바랍니다!&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;netstat&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;netstat은 네트워크 상태를 확인하는 명령어로, 리눅스 및 유닉스 계열의 시스템에서 네트워크 연결, 라우팅 테이블, 인터페이스 상태, 네트워크 프로토콜 통계 등을 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;image (3).png&quot; data-origin-width=&quot;1089&quot; data-origin-height=&quot;621&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kTIr4/btsKvqmtf8K/m3SOjFDFM3bIWYdzdpIA8k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kTIr4/btsKvqmtf8K/m3SOjFDFM3bIWYdzdpIA8k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kTIr4/btsKvqmtf8K/m3SOjFDFM3bIWYdzdpIA8k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkTIr4%2FbtsKvqmtf8K%2Fm3SOjFDFM3bIWYdzdpIA8k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;네트워크&quot; loading=&quot;lazy&quot; width=&quot;631&quot; height=&quot;360&quot; data-filename=&quot;image (3).png&quot; data-origin-width=&quot;1089&quot; data-origin-height=&quot;621&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;#자주쓰는 명령어

# 모든 네트워크 연결과 수신 대기 중인 포트 표시
netstat -a  # 모든 연결 확인

# TCP 연결만 표시
netstat -t  # TCP 연결 확인

# UDP 연결만 표시
netstat -u  # UDP 연결 확인

# 라우팅 테이블 보기
netstat -r  # 라우팅 테이블 보기

# 프로세스 정보와 함께 네트워크 상태 보기
netstat -p  # 프로세스 정보와 함께 네트워크 상태 보기 (루트 권한 필요)

# 네트워크 통계 확인
netstat -s  # 네트워크 통계 확인

# 대안 명령어
ss -tuln    # ss 명령어로 TCP, UDP 소켓 정보 확인 (LISTEN 상태 포함)
ip route    # ip 명령어로 라우팅 테이블 확인&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;networkmanaager&lt;/h2&gt;
&lt;pre class=&quot;ebnf&quot;&gt;&lt;code&gt;systemctl status NetworkManager
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;nmcli&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;nmcli는 인터페이스에 대한 IP, 게이트웨이, 서브넷, DNS 등 설정하는 명령어이다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;네트워크 인터페이스 확인 명령어&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;nmcli device status: device 종류를 확인
nmcli connection show : connection 종류를 확인
nmcli connection show --active: 연결중인 connection 종류를 확인
nmcli con show [con-name] : connection의 자세한 정보를 확인할 수 있다.
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;IP 설정 명령&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;정적&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;nmcli connection modify eth0 ipv4.addresses 192.168.1.100/24
nmcli connection modify eth0 +ipv4.addresses 192.168.1.100/24
nmcli connection modify eth0 ipv4.gateway 192.168.1.1
nmcli connection modify eth0 ipv4.dns 8.8.8.8
nmcli connection modify eth0 ipv4.method manual
nmcli connection down eth0 
nmcli connection up eth0 

ip addr show eth0로 확인
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;동적&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;nmcli connection modify eth0 ipv4.method auto
nmcli connection down eth0
nmcli connection up eth0

&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;인터페이스에 ip 추가로 할당&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;nmcli con modify eth0 +ipv4 (주소)
nmcli connection reload 

#영구 설정을 휘해 재부팅
systemctl roboot
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;네트워크 설정 파일&lt;/b&gt;&lt;/h2&gt;
&lt;pre id=&quot;code_1730698481065&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;#인터페이스 정보 찾기
ifconfig
ens160: flags=4163&amp;lt;UP,BROADCAST,RUNNING,MULTICAST&amp;gt;  mtu 1500
        inet 192.168.163.135  netmask 255.255.255.0  broadcast 192.168.163.255
        inet6 fe80::8302:e6a1:efff:b489  prefixlen 64  scopeid 0x20&amp;lt;link&amp;gt;
        ether 00:0c:29:bf:12:6d  txqueuelen 1000  (Ethernet)
        RX packets 457  bytes 53312 (52.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 204  bytes 23381 (22.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73&amp;lt;UP,LOOPBACK,RUNNING&amp;gt;  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10&amp;lt;host&amp;gt;
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 2  bytes 140 (140.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2  bytes 140 (140.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


# 설정 파일경로 
vi /etc/sysconfig/network-scripts/ifcfg-변경할 인터페이스

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no

BOOTPROTO=none
IPADDR=192.168.163.135
NETMASK=255.255.255.0
GATEWAY=192.168.163.2
DNS1=8.8.8.8

# 변경 정보 업데이트 
nmcli connection down ens160
nmcli connection up ens160&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/리눅스 네트워크</category>
      <category>centos</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>ubuntu</category>
      <category>네트워크</category>
      <category>네트워크 기초</category>
      <category>리눅스</category>
      <category>리눅스 기초</category>
      <category>리눅스 마스터</category>
      <category>우분투</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/9</guid>
      <comments>https://dbstkd95.tistory.com/entry/Linux-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%84%A4%EC%A0%95-%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90%EA%B3%BC-%EC%84%A4%EC%A0%95-%EB%B0%A9%EB%B2%95-%EC%99%84%EB%B2%BD-%EA%B0%80%EC%9D%B4%EB%93%9C#entry9comment</comments>
      <pubDate>Mon, 4 Nov 2024 14:39:25 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 Stratis로 스토리지 풀 관리 완벽 가이드</title>
      <link>https://dbstkd95.tistory.com/entry/linux-stratis-%ED%8C%8C%EC%9D%BC%EC%8B%9C%EC%8A%A4%ED%85%9C-%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%A7%80-%ED%92%80-%EA%B4%80%EB%A6%AC-%EA%B0%80%EC%9D%B4%EB%93%9C</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스 파일시스템 관리에 관심이 있으신가요? 오늘은 &lt;b&gt;Linux 파일시스템&lt;/b&gt; 관리의 혁신적인 솔루션인 &lt;b&gt;Stratis&lt;/b&gt;를 소개해드리려고 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Stratis&lt;/b&gt;는 복잡한 디스크 및 스토리지 관리 과정을 획기적으로 간소화해 주는 도구로, 특히 &lt;b&gt;스토리지 풀(Pool) 관리&lt;/b&gt;가 뛰어납니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여러 개의 디스크를 하나로 묶어 관리하고, 효율적이고 유연하게 파일시스템을 관리하고자 하는 분들에게 Stratis는 필수 도구입니다. 그럼 Stratis의 개념과 주요 기능, 사용법을 차근차근 알아보겠습니다!&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;image (3).png&quot; data-origin-width=&quot;595&quot; data-origin-height=&quot;685&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bZ79Fp/btsKtbWdzVN/9Ihxnvx8a8NmsVJRKuz6z1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bZ79Fp/btsKtbWdzVN/9Ihxnvx8a8NmsVJRKuz6z1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bZ79Fp/btsKtbWdzVN/9Ihxnvx8a8NmsVJRKuz6z1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbZ79Fp%2FbtsKtbWdzVN%2F9Ihxnvx8a8NmsVJRKuz6z1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;stratis&quot; loading=&quot;lazy&quot; width=&quot;307&quot; height=&quot;353&quot; data-filename=&quot;image (3).png&quot; data-origin-width=&quot;595&quot; data-origin-height=&quot;685&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Stratis 아키텍처 이해하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이미지를 보시면 Stratis의 구조가 어떻게 구성되는지 한눈에 이해하실 수 있습니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;스토리지 풀(Pool) 생성&lt;/b&gt;&lt;br /&gt;Stratis는 여러 개의 블록 장치(예: /dev/vdb, /dev/vdc, /dev/vdd)를 하나의 스토리지 풀로 통합합니다. 이 풀은 Stratis의 기본 단위로, 언제든지 추가적인 블록 장치를 결합해 쉽게 확장할 수 있습니다. 이렇게 하면 디스크 공간이 부족할 때도, 별도의 파티션 관리 없이 풀에 디스크만 추가하여 사용 가능합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;파일시스템 생성&lt;/b&gt;&lt;br /&gt;이 풀 위에 여러 개의 파일시스템을 생성할 수 있습니다. 각 파일시스템은 풀의 저장공간을 논리적으로 나눠 사용하는 형태입니다. 예를 들어, File system1, File system2처럼 여러 개의 파일시스템을 만들어 각 애플리케이션이나 사용자별로 독립된 저장공간을 할당할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;데이터 최적화 기능&lt;/b&gt;&lt;br /&gt;Stratis는 데이터 중복 제거, 압축, 스냅샷 기능을 제공하여 저장공간의 활용도를 최적화합니다. 특히 스냅샷을 통해 특정 시점으로 파일시스템을 복구할 수 있는 기능이 있어 중요한 데이터를 보호하는 데 유리합니다. 이 외에도 데이터를 효율적으로 관리하기 위한 다양한 기능을 제공해 관리자 입장에서 저장소 관리를 쉽게 해 줍니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;stratis 설치&amp;amp;활성화&lt;/h3&gt;
&lt;pre class=&quot;properties&quot;&gt;&lt;code&gt;# 설치
yum install stratis-cli stratisd

# 활성화
systemctl enable stratisd
systemctl start stratisd
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Pool 생성&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;해당 작업을 위해선 가상 디스크 추가를 먼저 실행해야 한다&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;# 풀 생성
stratis pool create (장치명 예: pool1) /dev/sdv

# 확인
stratis pool list

# 새로운 디스크 추가하여 풀 용량 확wkd
stratis pool add-data pool1 /dev/sdc

# 확인
stratis pool list
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;filesystem 생성&lt;/h3&gt;
&lt;pre class=&quot;properties&quot;&gt;&lt;code&gt;# 생성
stratis filesystem create pool1 fs1
(기본적으로 xfs 타입으로 초기화 된다)
# 디렉토리 생성
mkdir /bigdata

# 디렉토리 확인/개ㅐ
stratis filesystem list

# 마운트 
mount /dev/stratis/pool1/fs1 /bigdata
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;snapshot&lt;/h3&gt;
&lt;pre class=&quot;nginx&quot;&gt;&lt;code&gt;# snap shot
stratis filesystem snapshot pool1 fs1 fs1-sanp
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;/etc/fsatb 등록&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;파일 시스템 등록은 UUID와 장치명을 이용한 두가지 방식이 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;dts&quot;&gt;&lt;code&gt;# uuid 검색 
blkid /dev/stratis/pool1/fs1

# uuid
/dev/stratis/pool1/fs1: UUID=&quot;1234abcd-12ab-34cd-56ef-123456789abc&quot; TYPE=&quot;xfs&quot;

# /etc/fsatb 등록
UUID=1234abcd-12ab-34cd-56ef-123456789abc  /bigdata  xfs  defaults  0  0

# 장치명으로 /etc/fsatb 등록
/dev/stratis/pool1/fs1  /bigdata  xfs  defaults,x-systemd.requires=stratisd.service  0  0

&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;yum install stratis-cli stratisd

stratis pool create pool1 /dev/sdb
stratis pool list 
stratis add-data pool1 /dev/sdc
stratis filesystem create pool1 fs1
mkdir mydata
stratis filesystem list 

stratis filesystem snapshot pool1 fs1 fs1-snap

&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/Stratis &amp;amp; VDO</category>
      <category>centos</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 문제</category>
      <category>rhcsa 시험</category>
      <category>리눅스</category>
      <category>리눅스 기초</category>
      <category>파일시스템</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/8</guid>
      <comments>https://dbstkd95.tistory.com/entry/linux-stratis-%ED%8C%8C%EC%9D%BC%EC%8B%9C%EC%8A%A4%ED%85%9C-%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%A7%80-%ED%92%80-%EA%B4%80%EB%A6%AC-%EA%B0%80%EC%9D%B4%EB%93%9C#entry8comment</comments>
      <pubDate>Fri, 1 Nov 2024 09:55:26 +0900</pubDate>
    </item>
    <item>
      <title>[LINUX] 리눅스 파일 아카이브 및 압축 가이드: tar, gzip, bzip2, xz 사용법 정리</title>
      <link>https://dbstkd95.tistory.com/entry/LINUX-%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EC%95%84%EC%B9%B4%EC%9D%B4%EB%B8%8C-tar-gzip-bzip-xz-%EC%95%95%EC%B6%95</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;리눅스 환경에서 파일을 관리하다 보면 tar, gzip, bzip2, xz와 같은 압축 및 아카이브 명령어를 자주 사용하게 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이러한 도구를 사용하면 파일을 하나로 묶어 아카이브하거나 압축해 저장 공간을 절약할 수 있습니다. 특히 백업이나 파일 전송 시에 유용하며, 각각의 압축 툴은 고유한 특성과 장단점을 가지고 있어 상황에 맞게 선택할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;이번 글에서는 &lt;b&gt;tar, gzip, bzip2, xz&lt;/b&gt;의 차이점과 함께 주요 사용법을 예제와 함께 소개합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;tar, gzip, bzip2, xz 차이점&lt;/b&gt;&lt;b&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;tar&lt;/b&gt;: 파일과 디렉토리를 하나의 아카이브 파일로 묶어주는 도구입니다. 기본적으로 압축은 하지 않지만, gzip, bzip2, xz와 함께 사용하면 아카이브와 압축을 동시에 수행할 수 있습니다. 예를 들어 tar -czf archive.tar.gz는 gzip을 사용하여 압축된 tar 파일을 생성합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;gzip&lt;/b&gt;: 빠르고 효율적인 압축을 제공하는 도구로, 주로 .gz 확장자로 압축된 파일을 만듭니다. 용량을 줄이기 좋으며, 압축과 해제 속도가 빠릅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;bzip2&lt;/b&gt;: 높은 압축률을 제공하는 도구로, .bz2 확장자를 사용합니다. gzip보다 압축 속도는 느리지만 더 높은 압축률을 기대할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;xz&lt;/b&gt;: 최신 압축 도구로, 높은 압축률을 자랑합니다. .xz 확장자로 결과 파일이 생성되며, 서버 백업 등에 많이 사용됩니다. 압축률이 높은 대신 압축 속도는 느린 편입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;파일 압축 및 해제&lt;/b&gt;&lt;/h2&gt;
&lt;pre class=&quot;elixir&quot;&gt;&lt;code&gt;# 현재 디렉토리의 모든 파일과 디렉토리를 tar로 묶기
$ tar cvf 파일명.tar * 

# 대상 디렉토리를 포함한 모든 파일과 디렉토리를 tar로 묶기
$ tar cvf 파일명.tar [PATH] 

# 파일을 지정하여 tar 아카이브로 묶기
$ tar cvf 파일명.tar [FILE_1] [FILE_2]
&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;jboss-cli&quot;&gt;&lt;code&gt;# tar 아카이브의 내용 확인하기
$ tar tvf 파일명.tar 

# tar 아카이브를 현재 디렉토리에 풀기
$ tar xvf 파일명.tar 

# tar 아카이브를 지정된 디렉토리에 풀기
$ tar xvf 파일명.tar -C [PATH]

# 특정 디렉토리 아래에 파일 압축
tar cvzf /home/yun/backup/backup.tar.gz /home/yun/test

# tar 아카이브 묶거나 풀 때 파일 별 진행 여부 확인하기
$ tar cvfw 파일명.tar *
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;gzip, bzip2, xz 으로 압축&lt;/b&gt;&lt;/h2&gt;
&lt;pre class=&quot;elixir&quot;&gt;&lt;code&gt;#gzip
$ tar cvzf 파일명.tar [파일명]
$ gzip (압축 파일명(yun.tar))
$ gzip -d (압축 파일명(yun.tar)): 압축 해제

#bzip2
$ tar cvjf 파일명.tar [파일명]

#xz
$ tar cvJf 파일명.tar [파일명]
&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/파일 아카이브</category>
      <category>bzip</category>
      <category>centos</category>
      <category>gzip</category>
      <category>tar</category>
      <category>xz</category>
      <category>리눅스</category>
      <category>리눅스 기초</category>
      <category>리눅스 명령어</category>
      <category>리눅스마스터</category>
      <category>우분투</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/7</guid>
      <comments>https://dbstkd95.tistory.com/entry/LINUX-%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EC%95%84%EC%B9%B4%EC%9D%B4%EB%B8%8C-tar-gzip-bzip-xz-%EC%95%95%EC%B6%95#entry7comment</comments>
      <pubDate>Thu, 31 Oct 2024 09:25:23 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 작업 스케줄링 완벽 가이드: Cron과 at 사용법</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-Cron-at-%EC%82%AC%EC%9A%A9%EB%B2%95</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스에서 정기적으로 작업을 수행하거나 특정 시간에 한 번만 실행해야 하는 작업을 관리하려면 Cron과 at 명령어를 사용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Cron은 주기적으로 반복되는 작업을 스케줄링하는 데 탁월하며, 시스템 관리나 백업, 모니터링 작업에 주로 활용됩니다. 반면 at 명령어는 특정 시간에 단 한 번 실행해야 하는 작업을 예약하는 데 적합합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글에서는 Cron과 at의 설정 방법과 주의할 점을 포함해, 리눅스에서 효율적으로 작업 스케줄을 관리하는 방법을 살펴봅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;cron &amp;amp; at&lt;/b&gt;&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;1. cron: &amp;nbsp;반복적으로 실행해야 하는 작업을 자동화하는 도구로, 일정 주기로 명령을 실행하도록 설정할 수 있습니다. 주로 시스템 유지보수 작업이나 백업처럼 정해진 시간마다 수행해야 하는 작업에 활용됩니다&lt;/li&gt;
&lt;li&gt;2. at: 일회성 작업 예약에 유용하며, 특정 시간에 한 번 실행해야 하는 작업을 예약할 때 사용합니다. 이를 통해 시스템의 자동화를 효율적으로 관리할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;at&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;at는 일회성 프로세스 예약 실행이다&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;$ at 21:30 2019-12-25 # : 2019년 12월 25일 21시 30분에 명령어 실행
$ at now+5 minutes # : 현재 시간 5분 뒤에 명령어 실행
사용할 명령어 입력
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;cron&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;crontab으로 실행&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;20  5  10   *   *     *     *
분  시  일  월  요일 사용자 명령어

45 22 * * *                 # 22시45분에 실행

28 03 * * *                 # 03시28분에 실행

0 17 * * 1                  # 매주 월요일 17시00분에 실행

0,10 17 * * 0,2,3           # 매주 일, 화, 수요일 17시00 분과 17시10분에 실행

0-10 17 1 * *               # 매달 1일 17시00분부터17시10분까지 1분 단위로 실행

0 0 1,15 * 1                # 매달 1일과 15일 그리고 월요일 24시00분에 실행

42 4 1 * *                  # 매달 1일 4시42분에 실행

0 21 * * 1-6                # 월요일 부터토요일까지 21시00분에 실행

0,10,20,30,40,50 * * * *    # 10분 간격으로 실행

*/10 * * * *                # 10분 간격으로 실행

* 1 * * *                   # 1시00분 부터 1시59분 까지 1분 간격으로 실행

0 */1 * * *                 # 매시간 0분에 실행(1시간 간격으로 실행)

0 * * * *                   # 매시간 0분에 실행(1시간 간격으로 실행)

5 2-5 * * *	                # 2시 5분, 3시 5분, 4시 5분, 5시 5분에 실행

2 8-20/3 * * *              # 8시 2분, 11시 2분, 14시 2분, 17시 2분, 20시 2분에 실행

30 5 1,15 * *               # 매달 1일과 15일 5시30분에 실행

# 월-토요일마다 오전 1시 정각에 /usr/bin/dcs.sh를 실행
0 1 * * 1-6 ihd /usr/bin/dcs.sh 

# 매년 1월부터 10월까지 두 달 주기로 1일날 오전 7시 정각에 /bin/vipcheck.sh 실행
0 7 1 1-10/2 * /bin/vipcheck.sh

#특정 유저가 실행하게 하기
crontab -u (유저명) -e (시험에 출제된 내용)

#결과 보니터링용
 tail -f /var/log/messages&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>리눅스(rhcsa)/cron &amp;amp; at</category>
      <category>at</category>
      <category>centos</category>
      <category>cron</category>
      <category>crontab</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 문제</category>
      <category>rhcsa 시험</category>
      <category>리눅스 기초</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/6</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-Cron-at-%EC%82%AC%EC%9A%A9%EB%B2%95#entry6comment</comments>
      <pubDate>Wed, 30 Oct 2024 09:42:45 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 LVM(Logical Volume Manager) 설정 및 관리 방법: 디스크 공간 효율적으로 사용하기</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-LVM-%EC%84%A4%EC%A0%95-%EA%B4%80%EB%A6%AC-%EB%B0%A9%EB%B2%95</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LVM(Logical Volume Manager)은 리눅스 시스템에서 디스크 관리를 효율적으로 할 수 있도록 도와주는 강력한 툴입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;LVM을 사용하면 기존 파티션을 유연하게 확장하거나 축소하고, 여러 물리적 디스크를 하나의 논리적 볼륨으로 통합할 수 있어 시스템 운영과 유지보수에 매우 유리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 글에서는 LVM의 기본 개념부터 설정 방법, 실제 관리에 필요한 명령어와 팁까지 단계별로 자세히 알아보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;LVM의 주요 개념은 다음과 같습니다:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;image (2).png&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;396&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c9Hdcy/btsKmjPbErM/EpBv0FQHDp0VrcKgc3kClK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c9Hdcy/btsKmjPbErM/EpBv0FQHDp0VrcKgc3kClK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c9Hdcy/btsKmjPbErM/EpBv0FQHDp0VrcKgc3kClK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc9Hdcy%2FbtsKmjPbErM%2FEpBv0FQHDp0VrcKgc3kClK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;LVM&quot; loading=&quot;lazy&quot; width=&quot;546&quot; height=&quot;303&quot; data-filename=&quot;image (2).png&quot; data-origin-width=&quot;713&quot; data-origin-height=&quot;396&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;Physical Volume (PV)&lt;/b&gt;: LVM에서 사용할 실제 디스크 또는 디스크 파티션입니다. 여러 개의 PV를 모아 논리적 그룹으로 만듭니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Volume Group (VG)&lt;/b&gt;: 여러 PV를 하나의 VG로 묶어 관리하며, 마치 하나의 큰 디스크처럼 사용할 수 있게 합니다. VG를 통해 디스크 용량을 유연하게 확장하거나 축소할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Logical Volume (LV)&lt;/b&gt;: VG 안에서 실제 데이터가 저장되는 논리적 파티션입니다. LV를 사용하면 특정 파일 시스템에 필요한 만큼만 용량을 할당하고, 필요시 쉽게 확장할 수 있습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;실습&lt;/b&gt;&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파티션 생성&lt;/h3&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;[root@localhost ~]# fdisk  /dev/sdb

Welcome to fdisk (util-linux 2.37.4).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xab4d779e.

**Command (m for help): n**
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
**Select (default p): p**
**Partition number (1-4, default 1): 
First sector (2048-41943039, default 2048):** 
**Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-41943039, default 41943039):** 

Created a new partition 1 of type 'Linux' and of size 20 GiB.

# 타입 설정
**Command (m for help): t**
Selected partition 1
**Hex code or alias (type L to list all): l**

00 Empty            24 NEC DOS          81 Minix / old Lin  bf Solaris        
01 FAT12            27 Hidden NTFS Win  82 Linux swap / So  c1 DRDOS/sec (FAT-
02 XENIX root       39 Plan 9           83 Linux            c4 DRDOS/sec (FAT-
03 XENIX usr        3c PartitionMagic   84 OS/2 hidden or   c6 DRDOS/sec (FAT-
04 FAT16 &amp;lt;32M       40 Venix 80286      85 Linux extended   c7 Syrinx         
05 Extended         41 PPC PReP Boot    86 NTFS volume set  da Non-FS data    
06 FAT16            42 SFS              87 NTFS volume set  db CP/M / CTOS / .
07 HPFS/NTFS/exFAT  4d QNX4.x           88 Linux plaintext  de Dell Utility   
08 AIX              4e QNX4.x 2nd part  8e Linux LVM        df BootIt         
09 AIX bootable     4f QNX4.x 3rd part  93 Amoeba           e1 DOS access     
0a OS/2 Boot Manag  50 OnTrack DM       94 Amoeba BBT       e3 DOS R/O        
0b W95 FAT32        51 OnTrack DM6 Aux  9f BSD/OS           e4 SpeedStor      
0c W95 FAT32 (LBA)  52 CP/M             a0 IBM Thinkpad hi  ea Linux extended 
0e W95 FAT16 (LBA)  53 OnTrack DM6 Aux  a5 FreeBSD          eb BeOS fs        
0f W95 Ext'd (LBA)  54 OnTrackDM6       a6 OpenBSD          ee GPT            
10 OPUS             55 EZ-Drive         a7 NeXTSTEP         ef EFI (FAT-12/16/
11 Hidden FAT12     56 Golden Bow       a8 Darwin UFS       f0 Linux/PA-RISC b
12 Compaq diagnost  5c Priam Edisk      a9 NetBSD           f1 SpeedStor      
14 Hidden FAT16 &amp;lt;3  61 SpeedStor        ab Darwin boot      f4 SpeedStor      
16 Hidden FAT16     63 GNU HURD or Sys  af HFS / HFS+       f2 DOS secondary  
17 Hidden HPFS/NTF  64 Novell Netware   b7 BSDI fs          fb VMware VMFS    
18 AST SmartSleep   65 Novell Netware   b8 BSDI swap        fc VMware VMKCORE 
1b Hidden W95 FAT3  70 DiskSecure Mult  bb Boot Wizard hid  fd Linux raid auto
1c Hidden W95 FAT3  75 PC/IX            bc Acronis FAT32 L  fe LANstep        
1e Hidden W95 FAT1  80 Old Minix        be Solaris boot     ff BBT            

Aliases:
   linux          - 83
   swap           - 82
   extended       - 05
   uefi           - EF
   raid           - FD
   lvm            - 8E
   linuxex        - 85
Hex code or alias (type L to list all): 8e
Changed type of partition 'Linux' to 'Linux LVM'.

**Command (m for help): w (저장)**
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;PV 생성 및 확인&lt;/h3&gt;
&lt;pre class=&quot;irpf90&quot;&gt;&lt;code&gt;**#PV 생성
[root@localhost ~]# pvcreate /dev/sdb1**
  Physical volume &quot;/dev/sdb1&quot; successfully created.

#PV 확인
[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               rhel
  PV Size               18.41 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              4713
  Free PE               0
  Allocated PE          4713
  PV UUID               VViQpQ-nCLK-s2YK-ghny-VyIx-TItE-cFdvQe
   
  &quot;/dev/sdb1&quot; is a new physical volume of &quot;&amp;lt;20.00 GiB&quot;
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name               
  PV Size               &amp;lt;20.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               dZrEtF-g9se-s2mw-QVm8-nE3y-dKXo-WxSduw
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;VG생성 및 확인&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;**#VG 생성
[root@localhost ~]# vgcreate test_vg /dev/sdb**1
  Volume group &quot;test_vg&quot; successfully created
  
**#PV 확인
[root@localhost ~]# vgdisplay test_vg /dev/sdb1**
  --- Volume group ---
  VG Name               test_vg
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               &amp;lt;20.00 GiB
  PE Size               4.00 MiB
  Total PE              5119
  Alloc PE / Size       0 / 0   
  Free  PE / Size       5119 / &amp;lt;20.00 GiB
  VG UUID               tJYGSX-3UtI-ZdTY-vsBx-ffO7-5qEw-TMYFd0

&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;LV생성 및 확인&lt;/h3&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;**#LV 생성**
**[root@localhost ~]# lvcreate -n test_lv --size 1G test_vg**
  Logical volume &quot;test_lv&quot; created.

**#LV 확인**
**[root@localhost ~]# lvdisplay**  
  --- Logical volume ---
  LV Path                /dev/test_vg/test_lv
  LV Name                test_lv
  VG Name                test_vg
  LV UUID                06Q2u7-IERo-YRI3-3Pec-8nPt-WwYb-NL2oQz
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2024-09-23 17:09:51 +0900
  LV Status              available
  # open                 0
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2
   
  --- Logical volume ---
  LV Path                /dev/rhel/swap
  LV Name                swap
  VG Name                rhel
  LV UUID                kfj8wH-lG0b-6Xaf-oVQQ-yXj7-6XG1-cUkzuS
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2024-08-27 11:39:32 +0900
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/rhel/root
  LV Name                root
  VG Name                rhel
  LV UUID                CK24u0-J1To-fP9m-S5gE-j7dt-OwZc-SfOUT2
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2024-08-27 11:39:32 +0900
  LV Status              available
  # open                 1
  LV Size                16.41 GiB
  Current LE             4201
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파일 시스템 초기화&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;**[root@localhost ~]# mkfs.ext4 /dev/test_vg/test_lv**
mke2fs 1.46.5 (30-Dec-2021)
Creating filesystem with 262144 4k blocks and 65536 inodes
Filesystem UUID: 4ec4ebb9-53f1-4113-a67c-5e281482a46b
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;마운트 진행 및 /etc/fstab에 등록&lt;/h3&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;[root@localhost ~]# mount /dev/test_vg/test_lv test
[root@localhost ~]# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                     4.0M     0  4.0M   0% /dev
tmpfs                        968M     0  968M   0% /dev/shm
tmpfs                        387M   12M  376M   3% /run
/dev/mapper/rhel-root         17G  5.3G   12G  33% /
/dev/sda2                    960M  263M  698M  28% /boot
/dev/sda1                    599M  7.1M  592M   2% /boot/efi
tmpfs                        194M  104K  194M   1% /run/user/1000
/dev/mapper/test_vg-test_lv  974M   24K  907M   1% /root/test

**#/etc/fstab에 등록
/dev/mapper/test_vg-test_lv  /test              ext4    defaults        0 0**
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;LVM 활용하여 디스크 확장&lt;/h3&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;**#새로운 디스크 파티션 생
[root@localhost ~]# pvcreate /dev/sdc1**
  Physical volume &quot;/dev/sdc1&quot; successfully created.

**#VG 확장**
**[root@localhost ~]# vgextend test_vg /dev/sdc1**
  Volume group &quot;test_vg&quot; successfully extended

**#LG 확장**
[root@localhost ~]# lvextend -L+1024M /dev/mapper/test_vg-test_lv

**#파일 시스템 초기화 (ext4 버전)**
**[root@localhost ~]# resize2fs /dev/mapper/test_vg-test_lv

#파일 시스템 초기화 (xfs 버전)**
[root@localhost ~]# **xfs_growfs /mount/point**

[root@localhost ~]# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                     4.0M     0  4.0M   0% /dev
tmpfs                        968M     0  968M   0% /dev/shm
tmpfs                        387M  7.8M  380M   2% /run
/dev/mapper/rhel-root         17G  5.3G   12G  33% /
/dev/sda2                    960M  263M  698M  28% /boot
/dev/sda1                    599M  7.1M  592M   2% /boot/efi
**/dev/mapper/test_vg-test_lv  2.0G   24K  1.9G   1% /test (1G 추가됨)**
tmpfs                        194M   96K  194M   1% /run/user/1000

&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/LVM</category>
      <category>centos</category>
      <category>LVM</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 문제</category>
      <category>rhcsa 시험</category>
      <category>리눅스 명령어</category>
      <category>리눅스 지식</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/5</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-LVM-%EC%84%A4%EC%A0%95-%EA%B4%80%EB%A6%AC-%EB%B0%A9%EB%B2%95#entry5comment</comments>
      <pubDate>Tue, 29 Oct 2024 09:36:22 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 파일 검색 완전 정복: find와 grep 사용법 및 옵션 정리</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-find-grep-%EC%98%B5%EC%85%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95-%EC%A0%95%EB%A6%AC</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스에서 파일을 찾고, 파일 내용에서 특정 문자열을 검색하는 작업은 시스템 관리와 개발에서 자주 필요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때 find와 grep 명령어를 사용하면 빠르고 효율적으로 원하는 파일이나 정보를 찾아낼 수 있습니다. find는 파일 이름, 크기, 수정 시간 등을 기준으로 파일을 검색하는 데 유용하며, grep은 파일 내의 특정 텍스트를 검색하고 추출하는 데 강력한 도구입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 글에서는 find와 grep의 주요 옵션과 활용 예시를 통해 리눅스 파일 검색과 필터링 작업을 쉽게 수행하는 방법을 정리합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;리눅스에서 사용자 및 그룹 관리는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;find &amp;amp; grep&lt;/b&gt;&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;find: 파일 및 디렉터리를 검색하는 명령어로, 파일 이름, 파일 타입, 수정 시간 등 다양한 조건으로 특정 파일을 찾을 수 있습니다.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;grep: 파일 내에서 특정 문자열이나 패턴을 검색하는 명령어로, 파일 내용에 포함된 단어나 문장을 찾을 때 사용합니다.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;grep&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;grep 옵션&lt;/b&gt;&lt;/blockquote&gt;
&lt;table style=&quot;border-collapse: collapse; width: 76.0465%; height: 240px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-i&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;대소문자를 구분하지 않고 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-v&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;패턴과 일치하지 않는 줄을 출력 (반전 검색)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-r 또는 -R&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;디렉토리 내 파일을 재귀적으로 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-n&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;패턴이 일치하는 줄의 번호를 함께 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-l&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;패턴이 포함된 파일 이름만 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-c&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;패턴과 일치하는 줄의 개수만 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-E&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;확장 정규식을 사용 (Extended Regular Expression)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-w&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;단어 전체와 일치하는 패턴만 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-o&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;패턴과 일치하는 부분만 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-A [N]&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;일치하는 줄 이후의 N줄을 함께 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-B [N]&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;일치하는 줄 이전의 N줄을 함께 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;-C [N]&lt;/td&gt;
&lt;td style=&quot;height: 20px;&quot;&gt;일치하는 줄 이전과 이후의 N줄을 함께 출력&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;grep 옵션 예시:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;perl&quot;&gt;&lt;code&gt;# i
grep -i &quot;hello&quot; example.txt

# v
grep -v &quot;hello&quot; exaple.txt

# r or R
grep -r &quot;username&quot; /home 

# n 
grep -n &quot;hello&quot; example.txt

# w
grep -w &quot;hello&quot; example.txt

#c
grep -c &quot;hello&quot; example.txt

#여러 파일 검색
grep &quot;hello&quot; file1.txt file2.txt

# 전체 단어가 아닌 부분 단어 검색
grep -o &quot;hello&quot; example.txt
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;정규식 표현&lt;/b&gt;&lt;/blockquote&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 420px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;^&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;행의 시작&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep &quot;^linux&quot;&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux로 시작하는 행&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;$&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;행의 끝&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep &quot;linux$&quot;&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux로 끝나는 행&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;\&amp;lt;&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;단어의 시작&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep '\&amp;lt;linux'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux로 시작하는 단어를 포함하는 행&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;\&amp;gt;&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;단어의 끝&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'linux\&amp;gt;'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux로 끝나는 단어를 포함하는 행&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;.&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;임의의 모든 문자 한 개&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'l.nux'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;l과 n 사이에 세 글자가 있을 수 있는 행&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;?&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;문자가 들어가거나 없거나 상관없음&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'linux\?'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;n이 문자가 들어가거나 없는 것을 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;*&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;문자가 여러 개 들어가거나 없거나&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'linux*'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux로 모두 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 40px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 40px;&quot;&gt;+&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 40px;&quot;&gt;하나 이상의 문자&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 40px;&quot;&gt;$ grep 'linux+'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 40px;&quot;&gt;여러 개의 파일이나 내용을 포함할 때 사용하고 단독으로는 * 사용하여 모든 패턴을 나타냄&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;|&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;OR 기호&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;&lt;span style=&quot;background-color: #000000; color: #eb5757;&quot; data-token-index=&quot;0&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;$ grep 'ab|cd|ef'&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;ab나 cd나 ef가 한 행 안에 들어있으면 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 40px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 40px;&quot;&gt;()&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 40px;&quot;&gt;특정 기호 또는 메타 문자를 그룹화&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 40px;&quot;&gt;$ grep '\(lin.\?\)'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 40px;&quot;&gt;문자를 대응하는 것이 아니라 lin, li와 같은 글자를 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 40px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 40px;&quot;&gt;[]&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 40px;&quot;&gt;미는 안에 내용을 넣어 그 문자를 한 문자로 의미&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 40px;&quot;&gt;$ grep 'linux[12 3]'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 40px;&quot;&gt;linux1, linux2, linux3을 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;[0-9], [a-z]&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;숫자나 알파벳의 범위를 설정 가능&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'linux[0-9]'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux1부터 linux9까지 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;[^]&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;미안에 있는 는 부정의 의미&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'linux[^1-3]'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;linux1 부터 linux3까지를 제외한 모든 것을 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 40px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 40px;&quot;&gt;\ &amp;lt; \&amp;gt;&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 40px;&quot;&gt;단어의 시작 또는 단어의 끝&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 40px;&quot;&gt;$ grep '\ &amp;lt;linux \&amp;gt;'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 40px;&quot;&gt;예를 들어 linux1과 같이 붙어있는 것과는 다르게 사용&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;\ {n\}&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;문자 A가 n번 반복&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'a \ { 2\ }'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;a 문자가 2번 연속 반복되는 것을 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;a\ {n, \}&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;문자 A가 적어도 n번 이상 반복&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;$ grep 'a \ { 2,\ }'&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;a 문자가 최소한 2번 이상 반복되는 것을 검색&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 20px;&quot;&gt;
&lt;td style=&quot;width: 10.5814%; height: 20px;&quot;&gt;a \ {n,m} \ }&lt;/td&gt;
&lt;td style=&quot;width: 30.3488%; height: 20px;&quot;&gt;문자 A가 n번 이상 m번 이하 반복&lt;/td&gt;
&lt;td style=&quot;width: 17.5582%; height: 20px;&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000;&quot;&gt; $ grep 'a \ { 2,4\}'&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 41.5116%; height: 20px;&quot;&gt;a 문자가 2번 이상 4번 이하로 반복되는 부분&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;br /&gt;grep 정규 예시:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;properties&quot;&gt;&lt;code&gt;# ^
grep &quot;^hello&quot; hello.txt
hello
hello everyone
hello guys

# $
grep &quot;hello$&quot; hello.txt
hello
I said hello

# 

#임의의 문자 검색
grep &quot;hel.o&quot; example.txt

#특정 문자 검색
grep [e] hello.txt
hello
hello everyone
hello guys

#특정 숫자 검색
grep [0-9] hello.txt
1 2 3 4 5 6 7 8 9 10

&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Find&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;Find 옵션&lt;/blockquote&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-name&lt;/td&gt;
&lt;td&gt;특정 이름을 가진 파일을 찾음&lt;/td&gt;
&lt;td&gt;find /path -name &quot;filename&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-iname&lt;/td&gt;
&lt;td&gt;대소문자 구분 없이 특정 이름을 가진 파일을 찾음&lt;/td&gt;
&lt;td&gt;find /path -iname &quot;filename&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-type&lt;/td&gt;
&lt;td&gt;파일의 종류를 지정하여 찾음 (f = 파일, d = 디렉터리 등)&lt;/td&gt;
&lt;td&gt;find /path -type d&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-user&lt;/td&gt;
&lt;td&gt;특정 사용자가 소유한 파일을 찾음&lt;/td&gt;
&lt;td&gt;find /path -user username&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-group&lt;/td&gt;
&lt;td&gt;특정 그룹이 소유한 파일을 찾음&lt;/td&gt;
&lt;td&gt;find /path -group groupname&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-size&lt;/td&gt;
&lt;td&gt;파일 크기를 기준으로 검색 (+ = 이상, - = 이하, 숫자+단위로 표시, ex: 10k, 5M)&lt;/td&gt;
&lt;td&gt;find /path -size +10M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-mtime&lt;/td&gt;
&lt;td&gt;파일의 수정 시간을 기준으로 검색 (+ = n일 전보다 이전, - = n일 전보다 이후)&lt;/td&gt;
&lt;td&gt;find /path -mtime -7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-atime&lt;/td&gt;
&lt;td&gt;파일의 마지막 접근 시간을 기준으로 검색&lt;/td&gt;
&lt;td&gt;find /path -atime +30&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-ctime&lt;/td&gt;
&lt;td&gt;파일의 상태 변화 시간을 기준으로 검색&lt;/td&gt;
&lt;td&gt;find /path -ctime -3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-perm&lt;/td&gt;
&lt;td&gt;파일의 권한을 기준으로 검색&lt;/td&gt;
&lt;td&gt;find /path -perm 644&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-exec&lt;/td&gt;
&lt;td&gt;검색된 파일에 대해 특정 명령을 실행&lt;/td&gt;
&lt;td&gt;find /path -name &quot;*.log&quot; -exec rm {} \\;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-print&lt;/td&gt;
&lt;td&gt;검색 결과를 출력 (기본 옵션이지만 명시적으로 사용할 수 있음)&lt;/td&gt;
&lt;td&gt;find /path -name &quot;*.txt&quot; -print&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-maxdepth&lt;/td&gt;
&lt;td&gt;검색할 디렉터리의 최대 깊이를 설정&lt;/td&gt;
&lt;td&gt;find /path -maxdepth 2 -name &quot;*.txt&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-mindepth&lt;/td&gt;
&lt;td&gt;검색할 디렉터리의 최소 깊이를 설정&lt;/td&gt;
&lt;td&gt;find /path -mindepth 2 -name &quot;*.txt&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-empty&lt;/td&gt;
&lt;td&gt;빈 파일이나 빈 디렉터리를 찾음&lt;/td&gt;
&lt;td&gt;find /path -empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-newer&lt;/td&gt;
&lt;td&gt;특정 파일보다 더 최근에 수정된 파일을 찾음&lt;/td&gt;
&lt;td&gt;find /path -newer reference_file&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-not&lt;/td&gt;
&lt;td&gt;조건을 부정하여 검색 (해당 조건을 제외하고 검색)&lt;/td&gt;
&lt;td&gt;find /path -not -name &quot;*.bak&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-or&lt;/td&gt;
&lt;td&gt;여러 조건 중 하나라도 만족하는 파일을 검색&lt;/td&gt;
&lt;td&gt;find /path -name &quot;*.txt&quot; -or -name &quot;*.log&quot;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-and&lt;/td&gt;
&lt;td&gt;여러 조건을 모두 만족하는 파일을 검색 (기본적으로 사용됨)&lt;/td&gt;
&lt;td&gt;find /path -name &quot;*.txt&quot; -and -size +1M&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Find 예시:&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;# 1. 특정 이름을 가진 파일 찾기
find /path/to/search -name &quot;filename.txt&quot;

# 2. 대소문자 구분 없이 특정 이름을 가진 파일 찾기
find /path/to/search -iname &quot;filename.txt&quot;

# 3. 디렉터리만 찾기
find /path/to/search -type d

# 4. 특정 사용자가 소유한 파일 찾기
find /path/to/search -user username

# 5. 특정 그룹이 소유한 파일 찾기
find /path/to/search -group groupname

# 6. 10MB보다 큰 파일 찾기
find /path/to/search -size +10M

# 6-1. 10MB 이상 100MB 이하의 파일 찾기
find /path/to/search -size +10M -size -100M

# 7. 7일 이내에 수정된 파일 찾기
find /path/to/search -mtime -7

# 7-2. 30일 이전에 마지막으로 접근된 파일 찾기
find /path/to/search -atime +30

# 7-3. 7일 이상 30일 이하에 수정된 파일 찾기
find /path/to/search -mtime +7 -mtime -30

# 8. 권한이 644인 파일 찾기
find /path/to/search -perm 644

# 9. 검색된 파일 삭제
find /path/to/search -name &quot;*.log&quot; -exec rm {} \\;

# 10. 최대 검색 깊이를 2로 제한하여 파일 찾기
find /path/to/search -maxdepth 2 -name &quot;*.txt&quot;

# 11. 빈 파일이나 빈 디렉터리 찾기
find /path/to/search -empty

# 12. 특정 파일(reference_file)보다 더 최근에 수정된 파일 찾기
find /path/to/search -newer reference_file

# 13. 확장자가 &quot;.bak&quot;인 파일 제외하고 검색
find /path/to/search -not -name &quot;*.bak&quot;

# 14. &quot;.txt&quot; 파일 또는 &quot;.log&quot; 파일 찾기 (OR 조건)
find /path/to/search -name &quot;*.txt&quot; -or -name &quot;*.log&quot;

# 15. &quot;.txt&quot; 파일이면서 1MB 이상인 파일 찾기 (AND 조건)
find /path/to/search -name &quot;*.txt&quot; -and -size +1M

&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/find &amp;amp; grep</category>
      <category>centos</category>
      <category>find</category>
      <category>grep</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 문제</category>
      <category>rhcsa 시험</category>
      <category>리눅스</category>
      <category>리눅스 명령어</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/4</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-find-grep-%EC%98%B5%EC%85%98-%EB%B0%8F-%EC%82%AC%EC%9A%A9%EB%B2%95-%EC%A0%95%EB%A6%AC#entry4comment</comments>
      <pubDate>Tue, 29 Oct 2024 09:19:16 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 파일 &amp;amp; 디렉토리 권한 완벽 가이드: chmod, chown, chgrp 사용법</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EA%B6%8C%ED%95%9C-%EC%84%A4%EC%A0%95-chmod-chown-chgrp-%EC%82%AC%EC%9A%A9%EB%B2%95</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스 시스템에서 파일과 디렉토리 권한 관리는 보안과 접근 제어에 있어 매우 중요합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;chmod, chown, chgrp 명령어를 사용해 파일과 디렉토리의 읽기, 쓰기, 실행 권한을 설정하고, 소유자 및 그룹을 변경하여 사용자 접근을 효율적으로 관리할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 글에서는 리눅스에서 권한을 설정하는 기본 개념부터 각 명령어의 사용법과 실무에서 활용 가능한 예제들을 정리해보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;chmod&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;사용 및 그룹별 권한 추가 삭제 (파일)&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;**사용자별 옵션**
u: user
g: group
o: else
a: all

**권한 수치**
r: 4
w: 2
x: 1

**추가**
1. chmod (사용자별 옵션)+(r,w,x,중 하나택) (파일 or 디렉토리 명)
2. chmod (755) (파일 or 디렉토리 명)
3. chmod +(r,w,x,중 하나택) (파일 or 디렉토리 명) (전체 대상 권한 적용)

**삭제** 
1. chmod (사용자별 옵션)-(r,w,x,중 하나택) (파일 or 디렉토리 명)
2. chmod (755) (파일 or 디렉토리 명)
3. chmod -(r,w,x,중 하나택) (파일 or 디렉토리 명) (전체 대상 권한 적용)&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;사용 및 그룹별 권한 추가 삭제 (디렉토리)&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;**사용자별 옵션**
u: user
g: group
o: else
a: all

**권한 수치**
r: 4
w: 2
x: 1

**추가**
1. chmod (사용자별 옵션)+(r,w,x,중 하나택) (파일 or 디렉토리 명)
2. chmod (755) (파일 or 디렉토리 명)
3. chmod +(r,w,x,중 하나택) (파일 or 디렉토리 명) (전체 대상 권한 적용)
4. chmod -R (하위 디렉토리 전체 적용)
5. chmod g+s (해당 디렉토링에 생성되는 파일 및 서브 디렉토리는 현재 디렉토리 그룹에게 권한이 상속된다)

**삭제** 
1. chmod (사용자별 옵션)-(r,w,x,중 하나택) (파일 or 디렉토리 명)
2. chmod (755) (파일 or 디렉토리 명)
3. chmod -(r,w,x,중 하나택) (파일 or 디렉토리 명) (전체 대상 권한 적용)
4. chmod -R (하위 디렉토리 전체 적용)&lt;/code&gt;&lt;/pre&gt;</description>
      <category>리눅스(rhcsa)/파일 관리 및 권한 설정</category>
      <category>centos</category>
      <category>chmod</category>
      <category>IT 지식</category>
      <category>RHCSA</category>
      <category>rhcsa 시험</category>
      <category>rhcsa덤프</category>
      <category>리눅스</category>
      <category>리눅스 마스터</category>
      <category>우분트</category>
      <category>파일권한</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/3</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC-%EA%B6%8C%ED%95%9C-%EC%84%A4%EC%A0%95-chmod-chown-chgrp-%EC%82%AC%EC%9A%A9%EB%B2%95#entry3comment</comments>
      <pubDate>Mon, 28 Oct 2024 13:20:07 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 ACL(Access Control List) 관리하기</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-ACL</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스에서 ACL(Access Control List)은 파일 및 디렉토리에 대한 세부적인 접근 권한을 설정할 수 있는 기능입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전통적인 사용자, 그룹, 기타 권한 외에도 특정 사용자나 그룹에게 추가적인 권한을 부여할 수 있어 복잡한 권한 구조를 간편하게 관리할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 글에서는 ACL의 기본 개념부터 ACL을 설정하고 관리하는 방법, 유용한 명령어 및 실습 예제를 통해 리눅스에서 ACL을 효과적으로 활용하는 방법을 알아보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;및&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;등 자주 나오는 문제입니다.&lt;/span&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;ACL 권한 확인&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;getfacl&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;해당 파일의 정보(접근권한 정보등)을 확인해본다. 퍼미션이 644으로 설정된 상태&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;properties&quot;&gt;&lt;code&gt;getfacl (파일명)

# file: example.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--
&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;사용자에 대한 ACL 추가&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;setfacl&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;특정 사용자에게 별도의 권항을 추가&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;주요 옵션 요약:&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;m : ACL 추가 또는 수정&lt;/li&gt;
&lt;li&gt;x : ACL 삭제&lt;/li&gt;
&lt;li&gt;b : 모든 ACL 삭제&lt;/li&gt;
&lt;li&gt;u:[사용자]:[권한] : 특정 사용자에 대한 권한 설정&lt;/li&gt;
&lt;li&gt;g:[그룹]:[권한] : 특정 그룹에 대한 권한 설정&lt;/li&gt;
&lt;li&gt;d:... : 디폴트 ACL 설정 (디렉터리 상속)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 'example.txt' 파일에 group1 그룹에게 읽기 및 실행 권한 부여
setfacl -m g:group1:rx example.txt

# 'example.txt'에서 user1의 ACL 권한 제거
setfacl -x u:user1 example.txt

# 'example.txt'에서 모든 ACL 삭제
setfacl -b example.txt

# 디렉터리 'mydir'에서 user1에게 디폴트 읽기 권한 부여
setfacl -m d:u:user1:r mydir&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;예시:&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사용자 UserA는 파일 Myfile에 대하여 읽고 쓸 수 있습니다. UserB는 파일 Myfile에 대하여 접근만 가능합니다.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# UserA
setfacl -m u:UserA:rw Myfile

# UserB
setfacl -m u:UserB:x Myfile

#결과 확인
getfacl (파일명)

# file: Myfile
# owner: root
# group: root
user::rw-
user:UserA:rw-                  #effective:r--
user:UserB:--x                  #effective:---
group::r--
mask::r--
other::r--

#아래와 같이 UserA와 UserB에 대한 권한 설정이 된 것이 확인된다
#user:UserA:rw-                  #effective:r--
#user:UserB:--x                  #effective:---&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>리눅스(rhcsa)/ACL</category>
      <category>ACL</category>
      <category>centos</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa 덤프</category>
      <category>rhcsa 시험</category>
      <category>rhcsa 연습문제</category>
      <category>리눅스</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/2</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-ACL#entry2comment</comments>
      <pubDate>Sun, 27 Oct 2024 17:41:01 +0900</pubDate>
    </item>
    <item>
      <title>[Linux] 리눅스 로컬 사용자 및 그룹 관리: useradd, usermod, groupadd 등 기본 명령어 사용법</title>
      <link>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%A1%9C%EC%BB%AC-%EC%82%AC%EC%9A%A9%EC%9E%90-%EB%B0%8F-%EA%B7%B8%EB%A3%B9-%EA%B4%80%EB%A6%AC-useradd-usermod-groupadd</link>
      <description>&lt;p data-ke-size=&quot;size14&quot;&gt;안녕하세요&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;리눅스에서 사용자와 그룹을 관리하는 것은 시스템 보안과 접근 제어의 중요한 부분입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;useradd, usermod, userdel, groupadd, groupdel 등의 명령어를 사용하면 로컬 사용자와 그룹을 쉽게 생성하고 수정할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;이 글에서는 각 명령어의 기능과 사용법을 자세히 설명하고, 실습 예제를 통해 사용자 및 그룹 관리의 기본을 이해하는 데 도움을 줄 것입니다. 또한, 사용자의 권한 설정 및 관리 팁도 함께 소개합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;리눅스에서 사용자 및 그룹 관리는 &lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;리눅스 마스터&lt;/b&gt;&lt;/span&gt; 및 &lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;RHCSA&lt;/b&gt;&lt;/span&gt; 등 자주 나오는 문제입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;때문에 필수적으로 알아야하는 기본 명령어입니다. 디렉토리 및 파일에 대한 권한 설정 시 사용자와 그룹에 대한 권한 또한 설정하기 때문에 반드시 기본적으로 알고 있어야 하는 필수 명령어입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;유저 추가&lt;/b&gt;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;useradd&lt;/h3&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;별다른 옵션을 지정 안하면 기본 설정 값으로 설정된다&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 기본 유저추가 
useradd testuser

# 유저 생성 전 옵션 추가
useradd -g testgroup -s /bin/bash -c &quot;This is Test&quot; -m -d /home/testuser testuser&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;useradd&lt;/b&gt;: 새로운 사용자 계정을 생성하는 명령어입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;g superhero&lt;/b&gt;: 새 사용자가 속할 &lt;b&gt;주 그룹&lt;/b&gt;을 지정합니다. 여기서는 superhero라는 그룹에 사용자를 추가합니다. 이 그룹이 존재하지 않으면 사용자 생성이 실패할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;s /bin/bash&lt;/b&gt;: 사용자의 로그인 셸을 지정합니다. 여기서는 /bin/bash로 설정되어, 사용자가 로그인할 때 Bash 셸을 사용하게 됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;c &quot;Ironman Character&quot;&lt;/b&gt;: 사용자의 설명(comment)을 추가합니다. 이 경우, &quot;Ironman Character&quot;라는 설명이 사용자 계정에 추가됩니다. 이 설명은 주로 사용자 목록을 볼 때 유용합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;m&lt;/b&gt;: 사용자의 홈 디렉토리를 생성합니다. 이 옵션이 없으면, 홈 디렉토리가 자동으로 생성되지 않으며, 사용자는 기본 홈 디렉토리로 이동할 수 없습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;d /home/ironman&lt;/b&gt;: 사용자의 홈 디렉토리 경로를 지정합니다. 여기서는 /home/ironman이라는 경로에 홈 디렉토리를 생성합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ironman&lt;/b&gt;: 생성할 사용자의 이름입니다. 이 경우 ironman이라는 이름의 사용자가 생성됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;사용자 생성 후 비빌번호 생성&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;erlang&quot;&gt;&lt;code&gt;passwd (사용자명)
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;생성된 유저 정보 확인&lt;/b&gt;&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;# 사용자 Uid 및 group id 확인
id test(사용자 이름)
uid=1002(test) gid=1001(test) groups=1001(test)

# 사용자 코멘트 및 기본 쉘 홈 디렉토리 확인
getent passwd test&lt;/code&gt;&lt;/pre&gt;
&lt;h3 style=&quot;text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;그룹추가&lt;/b&gt;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;groupadd&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그룹 생성 명령어&lt;/p&gt;
&lt;pre id=&quot;code_1730015797947&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;groupadd (그룹명)&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;usermod&lt;/h3&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;#그룹 추가
usermod -G (그룹명) (유저명)

#기존 자신의 그룹을 유지한체 타 그룹에 추가
usermod -aG (그룹명) (유저명)&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;deluser&lt;/h3&gt;
&lt;pre class=&quot;nginx&quot;&gt;&lt;code&gt;#해당 사용자에 하위 디렉토리 및 파일 삭제
sudo userdel -r (사용자 이름) 
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 권한 설정 및 디렉토리 권한에 대한 설정에 대한 내용은 아래에 포스팅을 확인하시길 바랍니다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://dbstkd95.tistory.com/3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2024.10.28 - [분류 전체보기] - 파일 &amp;amp; 디렉토리 권한&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1730089445500&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;파일 &amp;amp; 디렉토리 권한&quot; data-og-description=&quot;chmod사용 및 그룹별 권한 추가 삭제 (파일)**사용자별 옵션**u: userg: groupo: elsea: all**권한 수치**r: 4w: 2x: 1**추가**1. ****chmod (사용자별 옵션)+(r,w,x,중 하나택) (파일 or 디렉토리 명)2**.** chmod (755) (파일&quot; data-og-host=&quot;dbstkd95.tistory.com&quot; data-og-source-url=&quot;https://dbstkd95.tistory.com/3&quot; data-og-url=&quot;https://dbstkd95.tistory.com/3&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/7WkFx/hyXppACbdH/RTgkMT3Kb9xjI3NUmaTKA0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c2ZMcz/hyXlV8Z0Lb/2cx4irEQH4xLI8CyVonUn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://dbstkd95.tistory.com/3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://dbstkd95.tistory.com/3&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/7WkFx/hyXppACbdH/RTgkMT3Kb9xjI3NUmaTKA0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/c2ZMcz/hyXlV8Z0Lb/2cx4irEQH4xLI8CyVonUn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;파일 &amp;amp; 디렉토리 권한&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;chmod사용 및 그룹별 권한 추가 삭제 (파일)**사용자별 옵션**u: userg: groupo: elsea: all**권한 수치**r: 4w: 2x: 1**추가**1. ****chmod (사용자별 옵션)+(r,w,x,중 하나택) (파일 or 디렉토리 명)2**.** chmod (755) (파일&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;dbstkd95.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>리눅스(rhcsa)/로컬 사용자 및 그룹 관리</category>
      <category>centos</category>
      <category>redhat</category>
      <category>RHCSA</category>
      <category>rhcsa덤프</category>
      <category>rhcsa문제</category>
      <category>rhcsa시험</category>
      <category>리눅스</category>
      <category>리눅스마스터</category>
      <category>우분트</category>
      <author>IT 공부방</author>
      <guid isPermaLink="true">https://dbstkd95.tistory.com/1</guid>
      <comments>https://dbstkd95.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EB%A1%9C%EC%BB%AC-%EC%82%AC%EC%9A%A9%EC%9E%90-%EB%B0%8F-%EA%B7%B8%EB%A3%B9-%EA%B4%80%EB%A6%AC-useradd-usermod-groupadd#entry1comment</comments>
      <pubDate>Sun, 27 Oct 2024 17:15:49 +0900</pubDate>
    </item>
  </channel>
</rss>