Linux 검색 결과

55개 발견
  1. 미리보기
    2018.12.21 - mr.november11

    [Linux] localt yumrepo 구성 시 wget 으로 rpm 정보 수집하는 방법

  2. 미리보기
    2018.12.10 - mr.november11

    [Linux] CentOS 7 GUI 설치 및 시스템 설정 변경

  3. 미리보기
    2018.12.04 - mr.november11

    [Linux] Linux Bonding 관련 명령어(명령어로 Active Link 절체, bonding MAC address 변경, bonding 절체 시 Active MAC 으로 변경)

  4. 미리보기
    2018.11.19 - mr.november11

    [Linux] Linux 명령어 정리 systemd-analyze, lsblk 등

  5. 미리보기
    2018.11.19 - mr.november11

    [Linux] SSH 연결 실패 시 debug 방법

  6. 미리보기
    2018.11.03 - mr.november11

    [Linux]VM에 Disk 추가 시 재부팅 없이 추가된 Disk 를 인식 시키는 방법

  7. 미리보기
    2018.10.18 - mr.november11

    [Linux] Disk 관련 RAID 및 JBOD 정리

  8. 미리보기
    2018.10.16 - mr.november11

    [Linux] createrepo 을 활용한 yum repository 서버 구축

[Linux] localt yumrepo 구성 시 wget 으로 rpm 정보 수집하는 방법

rsysnc를 활용한 방법도 있지만 일회성 작업을 하기에는 wget이 적당한 것 같다.

wget 명령어로 지정된 Repository 내 rpm 파일들을 저장 가능하다.

wget -e robots=off -m -nH -np -P <local directory> <기존 repository >

  • ceph 기준 reposity 파일 복사 명령어

wget -e robots=off -m -nH -np -P "/yumrepo/ceph/rpm-luminous/el7/x86_64" "https://download.ceph.com/rpm-luminous/el7/x86_64/" >> /yumrepo/ceph/repo.log 2>&1


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] CentOS 7 GUI 설치 및 시스템 설정 변경

2018. 12. 10. 15:19 - mr.november11

[Linux] CentOS 7 GUI 설치 및 시스템 설정 변경

1. 설치

  • "GNOME Desktop" package 설치

  • "Graphical Administration Tools" package 설치

    yum groupinstall "GNOME Desktop" "Graphical Administration Tools"

2. 시스템 설정 변경

  • system target runlevel5(GUI모드)로 변경

    ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target

3. 재부팅

  • 재부팅

    systemctl reboot


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] Linux Bonding 관련 명령어(명령어로 Active Link 절체, bonding MAC address 변경, bonding 절체 시 Active MAC 으로 변경)

1. 명령어로 Active Link 절체

  • ifenslave : Attach and detach slave network devices to a bonding device.

  • 명령어 : ifenslave {-c|--change-active} <bonding> <interface>

  • 예제

    # bond0의 Active Link를 eth0으로 설정 
    [root@server ~]# ifenslave -c bond0 eth0

    # bond0의 Active Link를 eth3으로 설정
    [root@server ~]# ifenslave -c bond0 eth3

2. bonding MAC address 변경

  • 일반적으로 active-backup bonding 구성 시 bond의 MAC address 는 첫번째 Slave Link 의 MAC address 로 설정된다.

  • 명령어 : ip link set <bonding> address <MAC Address>

  • 예제

    [root@server ~]# ip link set bond0 address 8c:dc:71:b5:ae:20

3. bonding 절체 시 Active MAC Address으로 변경(fail_over_mac 설정)

  • fail_over_mac 설정

    • none or 0 : active-backup 으로 bonding 구성 시 default 옵션.

      bonding 의 MAC Address 는 첫번째 Slave Link의 MAC Address로 설정되며,

      모든 Slave Link 의 MAC Address 를 동일하게 설정한다.

      active Link 가 backup으로 절체 되더라도 외부에서 보이는 MAC Address는 동일하다.

    • active or 1 : bonding 의 MAC Address 는 현재 Active 인 Slave Link 의 MAC Address 로 설정되며,

      Slave Link 들의 MAC Address 는 자신의 것으로 설정된다.

      Active Link 절체 시 GARP(Gratuitous ARP)를 발생시켜 네트워크 내 변경된 MAC Address 를 광고한다.

      (단점)GARP 가 제대로 전파되지 않을 경우 연동 문제가 발생할 수 있으며, GARP에 의한 updelay가 발생한다.

    • follow or 2 : bonding의 MAC Address는 첫번째 Slave Link의 MAC Address로 설정되며,

      none 설정과의 차이점은 backup Link 의 MAC Address는 Active 역할로 바뀔 경우에만 bonding용 MAC Address로 설정된다.

      none 설정과 같이 모든 Slave Link의 MAC Address를 초기에 동일하게 설정하지는 않는다.

  • 설정법 : BONDING_OPTS 내 fail_over_mac 설정 추가

  • 예제

    [root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0
    DEVICE=bond0
    ONBOOT=yes
    USERCTL=no
    NM_CONTROLLED=no
    BOOTPROTO=none
    BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"
    IPADDR="2.2.2.2"
    PREFIX="24"
    GATEWAY="2.2.2.1"


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] Linux 명령어 정리 systemd-analyze, lsblk 등

2018. 11. 19. 14:12 - mr.november11

 

[Linux] Linux 명령어 정리 systemd-analyze, lsblk 등

systemd-analyze 으로 시스템 부팅 소요 시간 확인

systemd-analyze 과 systemd-analyze blame 은 kernel 및 user 프로그램에 소요되는 시스템 부팅 시간을 출력

  • systemd-analyze
  • systemd-analyze blame 은 구체적인 항목

 

which 명령어 vs whereis 명령어

  • which는 최우선 순위 PATH 하나만 출력
  • whereis 는 전체 path 가 출력 됨

    • 왼쪽에 있을수록 우선 순위가 높음

 

환경변수 호출 순서

  • 호출 우선 순위 순서

    • /etc/profile
    • /etc/profile.d/*.sh
    • ~/bash_prifile
    • ~/.bashrc
    • /etc/bashrc

 

계정 생성 권한 정책 설정

  • 신규 유저에 대해서 /etc/login.defs 파일 내 설정값 변경으로 정책 설정

lsblk 으로 disk block strorage 구조 파악

  • lsblk 를 통해 트리화된 mount 구조를 한 눈에 파악할 수 있음

 

Terminal 환경에서 vimdiff 로 텍스트 비교

  • vimdiff 명령어를 활용하면 외부로 파일을 옮기지 않고 Terminal 내에서 텍스트 비교가 가능하다.


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] SSH 연결 실패 시 debug 방법

2018. 11. 19. 14:11 - mr.november11

[Linux] SSH 연결 실패 시 debug 방법

ssh 연결 과정 debug 분석

  • ssh -v / ssh -vv / ssh -vvv 명령어로 확인
  • 공개키파일 경로 확인 및 인증 과정을 확인할 수 있음

PasswordAuthentication 설정을 no 로 설정 시 ssh 접속 실패 debug

  • sshd_config 설정 [root@server1 ~]# cat /etc/ssh/sshd_config | grep PasswordAuthentication PasswordAuthentication no
  • Authentications 방식이 publickey,gssapi-keyex,gssapi-with-mic으로 제한되어 있어 Permission denied 발생
  • sshd_config 설정에서 PasswordAuthentication을 yes로 변경 시 [root@server1 ~]# cat /etc/ssh/sshd_config | grep PasswordAuthentication PasswordAuthentication no

  • Authentications 방식이 publickey,gssapi-keyex,gssapi-with-mic,password 으로 password 가 추가 됨

    • Authentications 순서는 publickey -> password 순이다.

 


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux]VM에 Disk 추가 시 재부팅 없이 추가된 Disk 를 인식 시키는 방법

1. 현상

VMWare와 같은 가상화 솔루션을 사용하면 유동적으로 디스크를 추가해야하는 경우가 있다.

이 경우 VMWare에서 VM에 disk 장치를 추가했음에도 불구하고 VM 내 Linux OS에서는 인식하지 못하는 경우가 있다.

-> VM 내 실제 디스크는 sda, sdb 2개가 할당 되어 있으나 OS상에서는 기존의 sda만 인식 중

2. 해결 방법

가장 간단한 방법은 VM 재부팅이다. VM을 재부팅하여 초기 부팅 시 장치 인식 과정에서 추가된 sdb 디스크를 인식 시키면 된다.

하지만, 상용 환경에서는 서비스 영향을 고려해야한다. 재부팅 없이 온라인 환경에서의 인식 시킬 수 있는 방법이 필요하다.

인식 방법은 /sys/class/scsi_host/{host#}/scan 파일에 echo "- - -"(- 사이 띄어쓰기 주의) 을 실행하면 된다.

  • echo "- - -" > /sys/class/scsi_host/{host#}/scan

    • echo "- - -" > /sys/class/scsi_host/host0/scan
    • echo "- - -" > /sys/class/scsi_host/host1/scan
    • echo "- - -" > /sys/class/scsi_host/host2/scan

-> echo "- - -" > /sys/class/scsi_host/host2/scan 명령어 수행 후 /dev/sdb 디스크를 인식


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] Disk 관련 RAID 및 JBOD 정리

2018. 10. 18. 20:02 - mr.november11

[Linux] Disk 관련 RAID 및 JBOD 정리

  • RAID : Disk Fault 대응용

  • Array : Disk capacity 확장용

1. JBOD

  • JBOD : 특별한 RM 없이 하나로 구성

  • Hadoop의 경우 S/W 적으로 replica를 통해 redundancy를 보장하기 때문에 JBOD 사용

  • RAID 구성보다 속도가 빠르다.

    • File 서버 같은 서비스는 RAID 0 나 JBOD 구성 가능

  • JBOD에서 RAID Controller 사용 권장

    • JBOD 구성 시 RAID Controller 사용을 위해 개별 RAID0 으로 나누어 사용

    • RAID Controller 를 미사용 시 감시 및 조치가 어려움

2. RAID

  • S/W Based RAID : OS에서 지원하는 RAID 구성

    • 비용 절감 가능 ( Raid Controller 미사용 )

    • H/W Based 보다 활용이 자유로움

    • Hot Plug나 Re-building 시 H/W Based보다 불편함 (오히려 자동화 시 불편)

    • Parity Check나 Block에 대한 구성을 S/W 적으로 하기 때문에 CPU Resource를 점유함

  • H/W Based RAID(상용) : RAID Controller를 통해 구현

    • Ex) Facebook, Google은 RAID Controller 자체를 사용하지 않음

    • 장애 발생 시 S/W적으로 Node 자체를 격리함

RAID 유형

  1. RAID 0 : JBOD과 다르게 분산하여 Single 병렬로 여러 개 Disk에 저장 함

    • RAID Controller의 집선 Path가 한정되어 있어 Hadoop에서는 JBOD를 더 선호함

    • JBOD는 Hadoop에서 S/W 적으로 구현함

    • 디스크 고장 시 데이터 유실로 일반적으로 IDC에서는 사용하지 않음

  1. RAID 1 : 디스크 mirroring

    • Read Performance가 올라감

    • Write는 효용이 없지만 Read 시 2개의 Disk에서 한꺼번에 읽어올 수 있음

    • Fault Tolerance가 높아짐

    • 비용 증가 발생(2배)

    • 일반적으로 OS 영역은 SSD 2장으로 RAID 1을 구성하여 사용

  1. RAID 10 : Raid 0의 용량 장점 + RAID 1의 가용성의 장점을 조합

    • RAID 1 구성에서 Write Performance를 높일 수 있음

    • DB에서 데이터 저장용으로 많이 사용함

  2. RAID 5 : parity 채용으로 N+1 구성 가능

    • RAID 1보다 Disk 활용도가 높으며, Fault Tolerance를 지원 가능

    • 10개 Disk를 사용 시 10% 만 손실

    • 가용성 측면에서 Parity 구성을 위해서 최소 3개 이상 Disk가 필요 함

    • Disk가 2개 이상 고장 발생

  1. RAID 6 : parity 채용으로 N+2 구성

    • Disk 2개가 고장나도 복구 가능

  1. RAID Spare Disk

    • Spare Disk로 평시에는 Spare 상태로 있다가 Disk Fail 시 활용

    • 중요한 서버의 경우 Spare 구성을 별도

    • 상용 환경에서 많이 사용하는지는 ...



다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다

[Linux] createrepo 을 활용한 yum repository 서버 구축

  1. yum install -y createrepo 수행

    • 설치 되어 있다면 아래와 같은 메시지 출력

    [root@test ~]# yum install -y createrepo
    Failed to set locale, defaulting to C
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    * base: centos.mirror.cdnetworks.com
    * extras: centos.mirror.cdnetworks.com
    * updates: ftp.iij.ad.jp
    Package createrepo-0.9.9-28.el7.noarch already installed and latest version
    Nothing to do
    [root@test ~]#
  2. repository 로 사용할 directory 생성 후 createrepo <directory>

    • 정상 실행되었다면 /yumrepo/repodata/repomd.xml 파일이 생성 됨

    • /yumrepo/내 directory를 Client 에서 repolist 로 추가하여 사용 가능

    root@test ~]# mkdir /yumrepo
    root@test ~]# createrepo /yumrepo
    Saving Primary metadata
    Saving file lists metadata
    Saving other metadata
    Generating sqlite DBs
    Sqlite DBs complete
    [root@test ~]#
  3. 외부에서 repolist 접속을 위한 Apache httpd 설치

    • yum install -y httpd

    • /etc/httpd/conf.d/httpd.conf 파일을 내 "/var/www/html" 구문 삭제

      DocumentRoot "/var/www/html"

      #
      # Relax access to content within /var/www.
      #
      <Directory "/var/www">
        AllowOverride None
        # Allow open access:
        Require all granted
      </Directory>
    • /etc/httpd/conf.d/httpd.conf 파일을 내 아래 문구 추가

      DocumentRoot "/yumrepo"
      <Directory "/yumrepo">
        AllowOverride None
        Require all granted
      </Directory>
    • httpd daemon 재기동

      systemctl restart httpd
    • curl http://localhost/repodata/repomd.xml 로 웹서버 상태 확인

      [root@test conf]# curl http://localhost/repodata/repomd.xml
      <?xml version="1.0" encoding="UTF-8"?>
      <repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
      <revision>1539673159</revision>
      <data type="filelists">
      <checksum type="sha256">401dc19bda88c82c403423fb835844d64345f7e95f5b9835888189c03834cc93</checksum>
      <open-checksum type="sha256">bf9808b81cb2dbc54b4b8e35adc584ddcaa73bd81f7088d73bf7dbbada961310</open-checksum>
      <location href="repodata/401dc19bda88c82c403423fb835844d64345f7e95f5b9835888189c03834cc93-filelists.xml.gz"/>
      <timestamp>1539673159</timestamp>
      ... 생략 ...

  4. 이후 /yumrepo/ 내 rpm 등을 업로드 후 yum repo client 에서 추가하면 된다.


다른 카테고리의 글 목록

Linux 카테고리의 포스트를 톺아봅니다