레이블이 centos인 게시물을 표시합니다. 모든 게시물 표시
레이블이 centos인 게시물을 표시합니다. 모든 게시물 표시

2023년 6월 25일 일요일

예전버전 패키지(커널) 보관갯수 설정

어느날 /boot파티션의 데이터 사용율이 95%인것을 깨달았다.😨😨😨

$>> df -h /boot
Filesystem      Size  Used Avail Use% Mounted on
/devr/nvme0n1p2  507M  495M   12M  97% /boot

보아라..ㅋㅋ 12M정도만 남은 위엄을.-_-;; 물론 efi를 사용하면서도 /boot파티션의 용량을 최소한으로 잡았으니 이런일이 생길꺼라는 예상은 했기 때문에... (좋아, 자연스러웠어)

/boot파티션에는 부팅을 위한 커널만 적재되어 있기 때문에, 예전버전의 커널은 삭제해주어야 할 필요성이 생겼다.

$>ls -lh /boot/vmlinuz-*
-rwxr-xr-x. 1 root root 12M  4월  4 22:53 /boot/vmlinuz-0-rescue-b9821e263b234b19ad6aa74b4699e99f
-rwxr-xr-x. 1 root root 12M  3월 16 03:58 /boot/vmlinuz-5.14.0-162.22.2.el9_1.x86_64
-rwxr-xr-x  1 root root 12M  3월 24 09:32 /boot/vmlinuz-5.14.0-162.23.1.el9_1.x86_64
-rwxr-xr-x  1 root root 12M  4월 13 00:06 /boot/vmlinuz-5.14.0-284.11.1.el9_2.x86_64

현재는 rescue를 제외하고 3가지 버전의 커널을 담고 있다.

자, 이제 2가지만 남겨놓고 (업데이트된 커널때문에 부팅이 안될수도 있으니 보험은 들어놔야지.) 삭제해보도록 하자.

$> cat /etc/yum.conf 
[main]
gpgcheck=1
installonly_limit=3
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False

/etc/yum.conf를 보면 installonly_limit이라는 값이 있는데, 이건 기본값으로 3이다.(즉, 하위3버전까지는 보관하겠다는 거다)

자, 이제 저 값을 2로 바꾼다음. yum update를 해보자.

$> cat /etc/yum.conf 
[main]
gpgcheck=1
installonly_limit=2
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False
$> yum update -y
...
..
삭제 중:
 kernel                                                      x86_64                      5.14.0-162.22.2.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                  0  
 kernel                                                      x86_64                      5.14.0-162.23.1.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                  0  
 kernel-core                                                 x86_64                      5.14.0-162.22.2.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                 84 M
 kernel-core                                                 x86_64                      5.14.0-162.23.1.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                 84 M
 kernel-devel                                                x86_64                      5.14.0-162.22.2.el9_1                                 @rhel-9-for-x86_64-appstream-rpms                              60 M
 kernel-devel                                                x86_64                      5.14.0-162.23.1.el9_1                                 @rhel-9-for-x86_64-appstream-rpms                              60 M
 kernel-modules                                              x86_64                      5.14.0-162.22.2.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                 31 M
 kernel-modules                                              x86_64                      5.14.0-162.23.1.el9_1                                 @rhel-9-for-x86_64-baseos-rpms                                 31 M
...

현재 사용중인 커널이 5.14.0-284.11.1 인데, 커널업데이트가 되면서 5.14.0-284.18 버전과 5.14.0-284.11.1만 보관하고 이하 버전은 삭제하도록 한것이다.

요로케.

$> ls -l /boot/vmlinuz-*
-rwxr-xr-x. 1 root root 11649784  4월  4 22:53 /boot/vmlinuz-0-rescue-b9821e263b234b19ad6aa74b4699e99f
-rwxr-xr-x  1 root root 12176920  4월 13 00:06 /boot/vmlinuz-5.14.0-284.11.1.el9_2.x86_64
-rwxr-xr-x  1 root root 12192792  5월 31 23:44 /boot/vmlinuz-5.14.0-284.18.1.el9_2.x86_64

2022년 10월 21일 금요일

싱글모드 진입절차

 1, 부팅할때 커널이미지에서 e키 입력

linux16 줄 맨 끝에 init=/bin/sh 입력
Ctrl+x키 입력


출처

centos 설치옵션

 1. 텍스트환경에서 설치

inst.text

2. 디스크 드라이브 추가설치
inst.dd

3. 킥스타트 부트 옵션
inst.ks=경로(nfs:192.168.10.10:/centos7 (경로)

4. 화면 해상도 변경
inst.resolution=1024×768 (해상도)

5. SSH활성화
inst.sshd

6. 네트워크 설정
? DHCP환경일때 : ip=dhcp
? 고정IP일때 : ip=192.168.10.20:192.168.10.1:255.255.255.0 (IP/게이트웨이/넷마스크)

7. 네임서버 설정
nameserver=126.186.63.1,nameserver=126.186.63.2

8. VNC설정
inst.vnc

9. 싱글모드(root패스워드 분실시)
init=/bin/sh

원하는 옵션 입력 후 F10키, 혹은 ctrl+x키를 입력하면 부팅이 진행됨.



참조

http://igoni.kr/books/linux/page/centos-TJL

2022년 10월 3일 월요일

Centos7버전에서 HDD 수동 드라이버 구성

HDD 수동 드라이버 구성 (자동으로 드라이브 검색 실패시)

설치 옵션 입력




Tab키 입력 후 하단에 inst.dd 입력

드라이버 추가




입력 완료 후 'c' 입력
Centos 7.x 설치하기 (DVD 미디어로 설치) 3번과정 참조

  • 수동으로 HDD 드라이브 추가하여 설치 한 이후, 커널 업데이트 진행시,업데이트하는 커널에는 해당 드라이브 정보가 빠져있게 되어 디스크정보를 못찾거나, 레이드 정보가 틀어지는 이슈사항이 있기 때문에, 수동 HDD 드라이브 추가시 yum update부분은 신중하게 판단해야 함.
  • 해결방안은 업데이트하는 커널에도 해당 디스크 드라이브를 추가할 수 있게

커널 컴파일을 하는 방법과 Yum update 시 커널은 제외할 수 있게 옵션 설정이 필요함

2022년 9월 3일 토요일

Centos에서 node설치

  1. node,js 설치하기
    $> wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz
    $> tar -zxvf node-v0.10.24.tar.gz
    $> cd node-v0.10.24/
    $> ./configure
    $> make;make install
  2. node.js를 이용해 forever 모듈설치하기
    $> npm config set strict-ssl false
    $> cd /home/test
    $> npm install forever -g
 


출처 - http://igoni.kr/books/linux/page/centos-node

pip로 패키지 설치시 requests메시지 출력하면서 에러나는 경우

pip에서 docker-compose 설치할떄

아래 메시지 띄우면서 설치가 안될 경우.. python-requests패키지가 yum으로 설치되어 있어서 충돌 발생.

$> pip install docker-compose
...
...
ERROR: Cannot uninstall 'requests'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

그때는 설치되어 있는 패키지는 추가 설치 없이 구성하도록 설치

$> pip install docker-compose --ignore-installed
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip install --user` instead.
Collecting docker-compose
  Using cached docker_compose-1.26.2-py2.py3-none-any.whl (139 kB)
Collecting awscli
  Downloading awscli-1.19.112-py2.py3-none-any.whl (3.6 MB)
     |████████████████████████████████| 3.6 MB 2.2 MB/s
Collecting botocore
  Downloading botocore-1.20.112-py2.py3-none-any.whl (7.7 MB)
     |████████████████████████████████| 7.7 MB 61.8 MB/s
Collecting distro<2,>=1.5.0
  Using cached distro-1.6.0-py2.py3-none-any.whl (19 kB)
Collecting backports.ssl-match-hostname<4,>=3.5; python_version < "3.5"
  Using cached backports.ssl_match_hostname-3.7.0.1.tar.gz (5.7 kB)
Collecting docopt<1,>=0.6.1
  Using cached docopt-0.6.2.tar.gz (25 kB)
Collecting dockerpty<1,>=0.4.1
  Using cached dockerpty-0.4.1.tar.gz (13 kB)
Collecting texttable<2,>=0.9.0
  Using cached texttable-1.6.4-py2.py3-none-any.whl (10 kB)
Collecting cached-property<2,>=1.2.0
  Using cached cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Collecting PyYAML<6,>=3.10
  Using cached PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl (574 kB)
Collecting subprocess32<4,>=3.5.4; python_version < "3.2"
  Using cached subprocess32-3.5.4-cp27-cp27mu-manylinux2014_x86_64.whl (69 kB)
Collecting backports.shutil-get-terminal-size==1.0.0; python_version < "3.3"
  Using cached backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl (6.5 kB)
Collecting enum34<2,>=1.0.4; python_version < "3.4"
  Using cached enum34-1.1.10-py2-none-any.whl (11 kB)
Collecting requests<3,>=2.20.0
  Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting websocket-client<1,>=0.32.0
  Using cached websocket_client-0.59.0-py2.py3-none-any.whl (67 kB)
Collecting jsonschema<4,>=2.5.1
  Using cached jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
Collecting python-dotenv<1,>=0.13.0
  Using cached python_dotenv-0.18.0-py2.py3-none-any.whl (18 kB)
Collecting six<2,>=1.3.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting ipaddress<2,>=1.0.16; python_version < "3.3"
  Using cached ipaddress-1.0.23-py2.py3-none-any.whl (18 kB)
Collecting docker[ssh]<5,>=4.2.2
  Using cached docker-4.4.4-py2.py3-none-any.whl (147 kB)
Collecting rsa<=4.5.0,>=3.1.2; python_version == "2.7"
  Downloading rsa-4.5-py2.py3-none-any.whl (36 kB)
Collecting colorama<0.4.4,>=0.2.5
  Downloading colorama-0.4.3-py2.py3-none-any.whl (15 kB)
Collecting docutils<0.16,>=0.10
  Downloading docutils-0.15.2-py2-none-any.whl (548 kB)
     |████████████████████████████████| 548 kB 59.7 MB/s
Collecting s3transfer<0.5.0,>=0.4.0
  Downloading s3transfer-0.4.2-py2.py3-none-any.whl (79 kB)
     |████████████████████████████████| 79 kB 13.1 MB/s
Collecting jmespath<1.0.0,>=0.7.1
  Downloading jmespath-0.10.0-py2.py3-none-any.whl (24 kB)
Collecting python-dateutil<3.0.0,>=2.1
  Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
     |████████████████████████████████| 247 kB 68.0 MB/s
Collecting urllib3<1.27,>=1.25.4
  Using cached urllib3-1.26.7-py2.py3-none-any.whl (138 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
Collecting idna<3,>=2.5; python_version < "3"
  Using cached idna-2.10-py2.py3-none-any.whl (58 kB)
Collecting chardet<5,>=3.0.2; python_version < "3"
  Using cached chardet-4.0.0-py2.py3-none-any.whl (178 kB)
Collecting functools32; python_version < "3"
  Using cached functools32-3.2.3-2.tar.gz (31 kB)
Collecting pyrsistent>=0.14.0
  Using cached pyrsistent-0.16.1.tar.gz (108 kB)
Collecting setuptools
  Using cached setuptools-44.1.1-py2.py3-none-any.whl (583 kB)
Collecting importlib-metadata; python_version < "3.8"
  Using cached importlib_metadata-2.1.2-py2.py3-none-any.whl (10 kB)
Collecting attrs>=17.4.0
  Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Collecting typing; python_version < "3.5"
  Using cached typing-3.10.0.0-py2-none-any.whl (26 kB)
Collecting paramiko>=2.4.2; extra == "ssh"
  Using cached paramiko-2.9.1-py2.py3-none-any.whl (210 kB)
Collecting pyasn1>=0.1.3
  Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
     |████████████████████████████████| 77 kB 11.8 MB/s
Collecting futures<4.0.0,>=2.2.0; python_version == "2.7"
  Downloading futures-3.3.0-py2-none-any.whl (16 kB)
Collecting contextlib2; python_version < "3"
  Using cached contextlib2-0.6.0.post1-py2.py3-none-any.whl (9.8 kB)
Collecting pathlib2; python_version < "3"
  Using cached pathlib2-2.3.6-py2.py3-none-any.whl (17 kB)
Collecting zipp>=0.5
  Using cached zipp-1.2.0-py2.py3-none-any.whl (4.8 kB)
Collecting configparser>=3.5; python_version < "3"
  Using cached configparser-4.0.2-py2.py3-none-any.whl (22 kB)
Collecting cryptography>=2.5
  Using cached cryptography-3.3.2-cp27-cp27mu-manylinux2010_x86_64.whl (2.6 MB)
Collecting pynacl>=1.0.1
  Using cached PyNaCl-1.4.0-cp27-cp27mu-manylinux1_x86_64.whl (964 kB)
Collecting bcrypt>=3.1.3
  Using cached bcrypt-3.1.7-cp27-cp27mu-manylinux1_x86_64.whl (59 kB)
Collecting scandir; python_version < "3.5"
  Using cached scandir-1.10.0.tar.gz (33 kB)
Collecting cffi>=1.12
  Using cached cffi-1.15.0-cp27-cp27mu-manylinux1_x86_64.whl (393 kB)
Collecting pycparser
  Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB)
Using legacy 'setup.py install' for backports.ssl-match-hostname, since package 'wheel' is not installed.
Using legacy 'setup.py install' for docopt, since package 'wheel' is not installed.
Using legacy 'setup.py install' for dockerpty, since package 'wheel' is not installed.
Using legacy 'setup.py install' for functools32, since package 'wheel' is not installed.
Using legacy 'setup.py install' for pyrsistent, since package 'wheel' is not installed.
Using legacy 'setup.py install' for scandir, since package 'wheel' is not installed.
Installing collected packages: distro, backports.ssl-match-hostname, docopt, six, dockerpty, texttable, cached-property, PyYAML, subprocess32, backports.shutil-get-terminal-size, enum34, certifi, urllib3, idna, chardet, requests, websocket-client, functools32, pyrsistent, setuptools, contextlib2, scandir, pathlib2, zipp, configparser, importlib-metadata, attrs, jsonschema, typing, python-dotenv, ipaddress, pycparser, cffi, cryptography, pynacl, bcrypt, paramiko, docker, docker-compose, pyasn1, rsa, colorama, docutils, jmespath, python-dateutil, botocore, futures, s3transfer, awscli
    Running setup.py install for backports.ssl-match-hostname ... done
    Running setup.py install for docopt ... done
    Running setup.py install for dockerpty ... done
    Running setup.py install for functools32 ... done
    Running setup.py install for pyrsistent ... done
    Running setup.py install for scandir ... done
Successfully installed PyYAML-5.4.1 attrs-21.4.0 awscli-1.19.112 backports.shutil-get-termin



출처 - http://igoni.kr/books/linux/page/pip-requests

2022년 8월 27일 토요일

bind9.8버전에서 cpu사용량 증가

 

확인 절차

Centos 6에서 Bind 9.8구동시 top으로 프로세스 상태확인해보면

named프로세스의 cpu 점유율 100% 사용하는 경우가 존재

발생 원인

dnssec 키 저장소를 찾지 못해 발생 조치사항

조치사항

dynamic 디렉토리 생성 후 named 권한 부여, bind 서비스 재기동 필요



출처 - http://igoni.kr/books/linux/page/bind98-cpu

재부팅 없이 임시로 호스트네임 변경

  1. /etc/hostname에 호스트네임 적용  (재부팅 후 적용)
    $ vi /etc/hostname
    13.test.kr
  2. cli로 호스트네임 변경 (재부팅 없이 적용 가능, 재부팅시 초기화)
    $ cat "13.test.kr" >  /proc/sys/kernel/hostname
  3. 호스트네임 명령어로 변경
    $ hostname l4.test.co.kr


2022년 8월 15일 월요일

centos6에서 iscsi 연결하기

 

서버구성


  1. 패키지 설치
  2. 데몬 실행 및 서비스 활성화 후 실행
  1. target이름 설정
  2. target설정상태 확인
  3. 설정한 target에 볼륨지정
  4. 볼륨 등록 확인
  5. target 접근 제한 적용
  6. target에 계정등록
  7. 등록한 계정리스트 확인하기
  8. 등록한 볼륨에 계정 연동하기
  9. 볼륨과 계정연동 확인
  10. 등록한 target을 설정파일로 저장하기(기존파일은 백업 수행)
  11. 생성된 파일 정보 확인
  12. target 재시작

클라이언트 설정

  1. 패키지 설치
  2. 서비스 활성화 후 실행
  3. target에서 지정한 인증정보 적용하기
  4. iscsid 서비스 재시작
  5. target 정보 확인
  6. target 서버 연결
  7. 디스크 연결정보 확인


    # 기존에 없던 /dev/sdb 장비 출력확인 되었으면, /dev/sdb장치 파티션 구성하여 사용하면 됨.
  8. 부팅후 활성화를 위해 적용

클라이언트와 서버 구성 작업

  1. iscsi 사용 중단
  2. 영구적 연결 해제
  3. target에 연결세션 확인
출처 - http://igoni.kr/books/linux/page/centos6-iscsi

adfit

AI들끼리 대화하기

ChatGPT, perplexity, Gemini... 많은 AI 서비스가 있고 서비스별로 다양한 엔진이 있죠. 문득 AI끼리 대화를 시켜보면 어떤 대화의 흐름을 이어갈까 궁금해졌습니다. 그래서 해보았습니다. 규 칙 나(사람)은 양쪽 AI에서...