apt-get 설치를 하다보면 그와 관련한 dpkg 오류를 쉽게 겪을 수 있다.


우선은 메시지가 뜰때 관련 오류 로그를 살펴 보아야 한다.


이때에 삭제해 줘야 하는 파일이 있다면 삭제해 줘서 간단히 해결 할 수 있기 때문이다.


가장 많이 겪는 것은 '하위 스크립트 리턴' 인데 이것은 개발자가 패키지 안에 있는 debian/postinst 나 debian/postrm 등을 잘못 설계 했을 경우가 대부분 이다.


이는 패키지 설치시는 삭제시 실행되는 개발자가 설계한 스크립트 오류인데 재설치시 이러한 오류가 발생하지 않게 설계하는 것이 마땅하다. 하지만 날고 기는 개발자들도 실수를 하기 마련이고 같은 우분투라도 사용 환경에 따라서 차이가 발생 할 수 있기 때문에 문제 발생 요지가 있다.


즉 dpkg 관련 오류는 꼭 사용자의 잘못은 아니라는 얘기다.


apt-get install --reinstall 로써도 패키지가 완벽하게 적용 되야 마땅한 것이 사실이다.


대부분의 오류는


간단히


sudo dpkg --configure -a


로써 해결이 가능하다.


하지만 더 높은 레벨의 오류는 이로써도 해결이 되질 않는다.


그렇다면 더 높은 레벨의 수정이 필요하다.


sudo dpkg --configure -a --force-all

 

이렇게도 안된다면 더 높은 레벨의 오류다. 삭제해야 마땅한 패키지 인 셈이다.


sudo apt-get autoremove --purge package


만약 상당히 높은 레벨의 오류면은 이로써도 삭제가 되질 않는다.


그렇다면 최후의 방법인 dpkg 자체 로써의 완전 삭제를 실행 해줘야 한다.

 user@user~$

sudo dpkg --remove --force-remove-reinstreq package


Loading Captcha...
If it doesn't load, please disable Adblock!

체크시 자동으로 본 사이트에 대한 자원 활용(채굴) 지원이 이루어 지고 '복사 버튼' 이 활성화 됩니다.



왠만큼의 오류도 이정도면 삭제가 된다.


그리고 한번 더


sudo apt-get --purge package


실행하여 깔끔히 삭제해 준다.

도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


그리고 글에 부족한 점이 있거나 틀린 점, 더 궁금한 부분이 있는 것 같다면 꼭 댓글로 알려 주시 감사 하겠습니다.

         


Loading Captcha...
If it doesn't load, please disable Adblock!

별 다른 절차 없이 바로 위의 한 번의 체크 만으로  기기의 성능을 기반으로 하여 본 블로그에 아주 잠깐 채굴 지원 하실 수 있습니다.


비트코인 - BTC 지원 :


리플 - XRP 지원 :











1. 먼저 ufw 설치 합니다.



user@user-test:~$ sudo apt install ufw



or (혹은 gufw를 설치 합니다.)



user@user-test:~$ sudo apt install gufw




( gufw은 ufw의 gtk버전으로서 그래픽 툴로서 관리 할 수 있는 소프트웨어 입니다. 이 패키지도 마찬가지 ufw를 의존성 패키지로 자동으로 같이 설치 됩니다.)


2. 다음 가장 먼저 해야 할 일은 ufw를 서비스 활성하 시키는 작업입니다.



user@user-test:~$ sudo ufw enable



3. 우선 차단 규칙을 설정 하는 것을 배워 보겠습니다. 먼저 로컬 아이피 대역을 차단해 봅니다.



user@user-test:~$ sudo ufw deny from 192.168.1.1/25


( ip 차단은 앞서 'from'을 붙여 줍니다.)


4. 그럼 tcp와 udp를 차단해 보겠습니다. 



user@user-test:~$ sudo ufw deny 1:6500/udp


( udp 프로토콜의 포트 1에서 65000 까지의 포트 대역을 전부 차단 합니다.)



user@user-test:~$ sudo ufw deny 1:6500/udp


( tcp 프로토콜의 포트 1에서 65000 까지의 포트 대역을 전부 차단 합니다.)





런치 패드 ppa에 업로드를 하면서 심각한 버그 하나를 발견하게 되었다.


그것은 다름 아닌 PPA에 업로드하고 홈페이지 자체에서 인공지능 컴파일이 이루어 지고 있는 과정 중에 패키지를 삭제 하게 되면

다음 업로드가 이루어 지지 않는 버그 이다.


0.01 사이의 버전을 변경 하여도 이름만 같아도 런치패드가 'orig.tar.xz'파일의 변동의 인식 하지 못하고 이전의 파일만 기억해 무조건 같다고 처리하여 내뱉어 버리는 것이다.


아직 0.1 사이의 버전을 변경하지 않았기 때문에 확실히 모르지만


그 전에는 같은 레파시토리에 업로드 하는 것은 불가능 하다는 것을 알게 되었다.


즉 런치패드에서 패키지를 삭제 할때는 인공지능 컴파일 & 빌드가 다 끝난 다음 해야 된다.


차라리 냅두고 다음 버전을 로그체인지 하여 업로드 시키는 것이 더욱 낫다고 볼 수 있다.



'orig.tar.xz' 파일 생성은


{ dh_make -c gpl --createorig } 명령과 직접적인 관계점이 있는데 이 orig 파일 생성 에서도 버그가 존재 한다는 것을 알게 되었다.


바로 실제 패키지의 라이브러리 디렉토리들이 변경이 되었어도 이전 정보로만 'orig.tar.xz' 파일을 만드는 버그 이다.


이 버그는 일일이 확인 하지 않는 이상 개발자는 까맣게 모를 수도 있다.


이 버그를 해결하려면 구축한 debian/ 폴더의 파일들을 백업해 놓고 debian/ 폴더를 완전히 삭제한후 { dh_make -c gpl --createorig } 명령을 통해 재갱신 한 다음에 백업한 파일들을 debian/ 폴더에 다시 갈아 치워야 한다.


하지만 이 버그는 무조건 항시 발생하는 것은 아니기에


아직 본인도 발생하는 이유와 원인에 대해서는 알지 못했다.



glsc 0.1  가이드


glsc < GLade Source Cooker > 는 개발자를 위한 bash 유틸 프로그램 으로써 글레이드로 생성한 빌드 프로젝트 파일을 C언어 및 파이썬 언어의 소스코드 파일로 쿠킹 해주는 기능을 가지고 있으며 c언어인 경우 gcc compile과 실행까지 해주는 기능을 가지고 있습니다.


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 먼저 설치한 glsc의 사용자 도움말을 확인 합니다.


root@test:~$     glsc --help


< glsc : GLade Source Cooker >

This program is make the source C and Python for glade file.

Version : 0.1

usage help :

    -c : making C langauge source file.
        ex: glsc -c project.glade
 
    -r : compile maked C file and run the maked program by use thee gcc & libgtk3.0+ package.
        ex: glsc -r project
   
    -p : making python source file.
        ex: glsc -p project.glade

Online help : http://cosmosproject2015.tistory.com

Good luck~!




C 언어로 쿠킹


// 글레이드에서 빌드 프로젝트 예제를 생성해 봅니다.





-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 생성된 글레이드 파일을 C언어 소스를 쿠킹해 봅니다.


root@test:~$    glsc -c test.glade


Maked source file (test.glade.c) successed.

How to run :

    glsc -r test   

Good luck for your development~!


// 빌드된 소스코드를 확인하고 편집합니다.









-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>


// 완성된 소스코드를 자동으로 컴파일 후 실행하는 명령을 수행 합니다.


root@test:~$    glsc -r test








-> 소스가 컴파일됨과 동시에 실행이 되며 실행 가능한 test 파일이 생성 된다.


Python 으로 쿠킹


-- 터미널 텍스트 박스 (Terminal text box) --

<Drag와 복사가 가능합니다.>

// 주석


root@test:~$    glsc -p test.glade


Maked source file (test.py) successed.

How to run :

    python test.py

Good luck for your development~!


-> 아까와는 다르게 'python test.py'으로 실행 하라고 나온다.


// 빌드된 소스코드 파일을 확인하고 편집합니다.


// 완성된 파이썬 코드를 실행해 봅니다.



root@test:~$    python test.py





가이드 영상



glsc 0.1 설치 하러 가기


도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.


[Name]   


Open dialog gtk


[ Section ]   


Devel


[ Version ]


0.2-4


[ 지원 아키텍쳐 ]   


X86_64


[ 지원 운영체제 ]   


Linux ubuntu _ yakkety_ xenial _ wily _ trusty _ vivid _precies


[ 빌드 & 컴파일러 ]


Bash, Lazarus de free pascal -gtk2.0


[ 의존 패키지 ]




[ 설명 ]   


본 패키지는 개발자의 편의를 위하여 터미널 에서 손 쉽게 띄울수 있는 다이얼로그 gtk 를 제공합니다. (BASH 스크립트 응용)





[ 특징 및 변경 사항 : Changes log ]   


  * Source UPGRADE.

( 소스 업그레이드)


  * Gtk ('/usr/share/odg/callform') changes name to 'odg'.

( gtk 파일인 '/usr/share/odg/callform' 을 'odg'로 변경


  * Recovery Gtk file install type.

( 인스톨 방식을 되돌림)


  * Dialog form changes to none border style.

(다이얼로그 폼을 'none' 스타일로 바꿈


  * Delete the dialog's name option.

(다이얼로그 네임 옵션을 삭제)


  * Possibe picture in the '-n' mode.

(-n 모드에서도 그림을 불러 오는 것이 가능 해짐)


  * Delection depends 'libqt4pas5'.

(의존성 패키지였던 'libqt4pas5' 를 제외 시킴)



[ 설치 방법 ]   




$ sudo apt-add-repository ppa:cosmosp2016/apps


$ sudo apt update


$ sudo apt install open-dialog-gtk




[실행]   


$ odg



[사용 방법]   


$ odg --help






도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.





Name : memc (Memory controll to optimize)


지원 아키텍쳐 : amd64, i386


빌드 소스 : 파스칼,  bash, free


지원 os : linux - ubuntu : xenial, wily, vivid, trusty, 리눅스 민트 설치 가능.


Repository : launchpad.net


설명:


사용자 컴퓨터의 메모리를 쉽게 최적하 시킬수 있는 터미널 , gtk 전부에서 사용할수 있는 심플 메모리 관리 소프트웨어



Sun, 05 Jun 2016  부로 개발을 완료 하였습니다.


아래 링크를 통해 확인하실수 있습니다.


http://cosmosproject2015.tistory.com/64


Name : callt


Section : utils


제작자 : C O S M O S project. 


Architecture :  amd64, i386..


OS :  ubuntu - xenial, wily, vivid, trusty


라이선스 : GPL2+


본 프로그램은  아주 단순하고 심플하게 터미널에서 간단한 명령을 통해 해당 양식의 소스 파일을 여러분이 사용하고 있는 에디터나 나노로 한번에 불러 주는 유틸리티 소프트웨어 입니다.




bash, sh, html, xml, desktop, c언어,  라즈베리 파이썬 양식등을 불러 옵니다.


인스톨 :


sudo apt-add-repository ppa:cosmosp2016/util

sudo apt update

sudo apt install callt


Exec : callt


사용방법 :  



UFW란? Linux의 핵심인 커널은 Server에 대한 Client의 Network 접속을 제어하는 netfilter라는 Module을 가지고 있는데 바로 netfilter를 사용하여 Filtering를 수행하는데, 이것을 이용하여 Server 접속에 대한 Network 정책을 세우는 Program이 바로 FirewalL(방화벽) 이다. 특히 이러한 필터중 리눅스에서 가장 많이 사용하는 것이 Iptable 이다. 그러나 이 기본 모듈 소프트웨어만 가지고는 절차상 번거로운 면이 있기 때문에 iptable의 작업을 간편화 해주는 소프트웨어가 바로 UFW(Uncomplicated FireWall)이다. 
그리고 이런 UFW를 그래픽툴로서 제공하는 것이 GUFW라고 볼수 있다. 

하지만 UFW를 설치 하였다고 해서 바로 방화벽이 작동되는 것은 아니다. 시스템 시작시에도 방화벽이 백그라운드에서 자동으로 활성화 되게끔 하기 위해서는 터미널에 다음과 같이 입력을 해준다. 

$ sudo ufw enable 
이렇게 하면 시스템 시작시에도 스타트가 적용이 된다. 오히려 gufw 에서는 킷에서 활성화를 시켜도 리붓시 활성화가 적용이 안되는 경우가 많다. 
그렇기 때문에 완전한 활성화를 위해서는 터미널에서 작업을 하는것이 바람직하다.

하지만 만약에 리눅스를 통해 서버를 이용하고 있다면 서버 접속을 방화벽에 규칙을 추가해야 한다. 그렇지 않으면 서버접속 또한 방화벽에 의하여 이루어 지지 않는다. 그리고 만약 서버가 OpenSSH라면 다음과 같이 입력한다. 

$ sudo ufw allow ssh
그리고 allow(허용) 뒤에는 서비스명 대신 service 포트를 직접 입력 하여도 된다. 
끝으로 방화벽의 상태를 확인해 보려면 크게 두가지로 할수 있다.

$ sudo ufw allow from *.*.*.* (ip)
특정 ip 접속을 허가 하게 한다.

$ sudo ufw status
상태 확인

sudo ufw status verbose
상세 확인

$ sudo ufw deny from *.*.*.*(ip)
특정 아이피를 차단한다.

$ sudo ufw deny x:x/tcp
tcp 프로토콜에서 x포트 부터 x 포트까지의 접속을 차단한다.

$ sudo ufw deny x:x/udp
udp 프로토콜을 통해 들어오는 x포트 부터 x 포트까지의 접속을 차단한다. 



< 특급 개발 계획 >



Name :


.SIN ( Software Installer from ther Network )


지원 아키텍처 :


All


지원 OS :


모든 리눅스 운영체제 사용 가능


설명 :


1. 모든 리눅스 운영체제에서 인스톨이 가능한 .sin 확장자 파일.

2. .sin 파일은 부모패키지가 없어도 설치가 가능하겠끔 설계가 되어 있는 소스코드 구조.

3. 인터넷 웹서핑 중 브라우저에서 바로 실행 가능. 하지만 보안을 위하여 gksu로 사용자 암호 입력후 실행

4. .deb 패키지와 연동이 가능

5. GTK 인스톨러 실행 가능 (.sing)


개발 예상 기간 :


3개월 ~ 1년


개발자 :


C O S M O S Project.


많은 관심 부탁 드립니다.








Name :


callt


Section :


utils


Version :


0.1


Homepage :


https://cosmosproject201507.blogspot.kr



PPA :


(launchpad.net) cosmosp2016/util


아키텍쳐 :


64bit, 32bit


지원 OS :


Linux - ubuntu : xenial, wily, vivid, trusty, 리눅스 민트 설치가능.


설명 :


본 프로그램은 Bash, sh, c언어, html, xml, 라즈베리파이 파이썬 양식등 의 type를 자신이 가지고 있는 원하는 에디터로 바로 호출 해주는 유틸리티 소프트웨어 입니다.


제작자 :


C O S M O S Project. <cosmosproject15@gmail.com>


인스톨 :


sudo apt-add-repository ppa:cosmosp2016/util

sudo apt update

sudo apt install callt


실행 : callt


사용방법 :


callt --help : 사용 설명서


Basic ex, use:= callt [-(type)] [Create filename] [Your editor] 


예 : callt -b ~/test.sh gedit

    (bash호출) (파일이름) (에디터이름)



types..

    -b : Bash script.
    -c : C language.
    -h : Html.
    -x : Xml.
    -s : Sh script.
    -d : Desktop running file.
    -r : Raspberrypi python scripts file.




title:                 'Gnu Lotto - Korea'

name  :            glotto-k


version  :          0.4


section  :          utils

date  :              2016-05-022

say :     


본 소프트웨어는 대한민국의 6/45 로또 번호를 컴퓨터의 의사난수를 이용하여 사용자가 원하는 변수, 현재 시간들을 조합해 출력해 내는 프로그램 입니다.



지원 아키텍쳐 : 64bit 32bit

지원 운영체제 : linux ubuntu - xenial, wily, vivid, trusty, 리눅스 민트도 설치가능.

PPA :                cosmosp2016/glotto-k  

launchpad :     launchpad.net/~cosmosp2016

Author :          C O S M O S Project





변경 사 항 :


 1. --help 추가

2. 계산 소스 업그레이드

3. 이전당첨 번호 입력과 동시 실행 및 인플레이션 수 반영

4. 한글 폰트 패키지 depends 추가



인스톨
:   




sudo add-apt-repository ppa:cosmosp2016/glotto-k               

sudo apt update               

sudo apt install glotto-k


실행 :                  glotto-k





리눅스용 구글드라이브 마운트 와 동기화를 동시에 하는 GTK 소프트웨어 'GDMS'를 개발할 계획 입니다.


NAME : GDMS ( Google Drive Mount & Sync)


예상 개발 기간 : 최소 2주 ~1.5개월


지원 OS : Linux - ubunt : xenial, wily, vivid, trusty


지원 아키텍쳐 : amd64


빌드 소스 &  엔진 : 파스칼 & Bash & Google-drive-ocaml-fuse(엔진)


특징 :


1. Google-drive-ocaml-fuse(엔진)을 기반으로 하나 기존의 엔진은 딜레이 발생이라는 단점이 있으니 원할한 사용을 위하여 이중 마운트 폴더를 생성하여 사용자가 딜레이를 느끼질 않고 원할하게 사용할수 있게 하며 동기화 발생시 다이얼로그 gtk로 하여금 파일간 전송 흐름을 알 수 있게 하여 파일을 놓치는 일이 없도록 최대한의 반영.


2. apt-get 설치시 인스톨 GTK 생성으로 사용자가 주의 및 권고 사항 ( 파일의 분실 가능성 )에 대하여 인지 해야만 소프트웨어의 메인 GTK 설치가 진행되는 방식을 도입


많은 관심 부탁 드립니다.








+ Recent posts