본문 바로가기

소냐

커스텀 액션 메뉴 어플릿 - 원클릭 동작 수행! 얼마전에 제가 vsftpd로 파일을 주고 받는 것에 대한 포스팅을 했습니다. 거기서 vsftpd를 필요할 때에만 사용하시라고도 말씀을 드렸지요. 그러나 그건 너무 번거로운 과정이 아닐수가 없습니다. 이번에는 그것에 대한 포스팅을 해볼까 합니다.이런식의 메뉴를 출력해주는 어플릿이 있습니다. 이 메뉴는 완전히 "커스터마이징"이 가능합니다. 아래 스크린샷을 보실게요. 중사 계급 아이콘을 한 어플릿을 우클릭하면 아래 메뉴가 뜹니다.빨간색으로 하일라이팅된 저걸 눌러주시면 됩니다.이 파일의 내용을 편집해서 원하는 기능을 수행하는 것도 가능하지요. vsftpd를 끄고 켜는 스위치 만들기를 한번 해봅시다.vsftpd 끄기=gksudo "service vsftpd stop" vsftpd 켜기=gksudo "service.. 더보기
어랏! 내 파일 어디갔지? - USB 펜드라이브로 파일이 제대로 복사가 되지 않는 현상 리눅스 민트를 데스크톱으로 쓰다보면 한번씩 다들 격는 문제지요. USB에 파일을 카피했는데, 다른 PC에 꼽았더니 복사한 파일이 안보이는 등... 이런것들 때문에 좀 귀찮은 일들이 일어납니다. 분명히 ppt를 만들어서 USB에 넣었는데, 발표때 ppt를 카피하려고 보니까 파일이 없어요. 이게 어떻게 된 일일까요? 그건 바로 리눅스 커널 내부의 캐쉬(cache)들을 메모리에 들고 있기 때문입니다. 이 캐쉬들이 실제로 드라이브에 쓰여지기 전에 USB 펜드라이브(USB 메모리)를 분리하면 USB에 카피했던 파일이 손실되어 버립니다. 물론 이건 USB 펜드라이브 뿐만 아니라 SDD가 아닌 HDD를 사용하고 있는 경우에도 발생할 수 있는 문제지요. 이건 리눅스만의 문제가 아니라 윈도우즈에서도 일어나며 이 현상이 .. 더보기
리눅스에 안드로이드 개발 환경 구축하기 이번에는 리눅스에 안드로이드 개발 환경을 구축하는 방법을 알아봅시다. 그렇게 어렵지는 않군요. 제가 써본 결과, 윈도우즈 환경에서보다 더 안정적으로 작동하는 것 같네요. 윈도우즈 환경에서의 Android Studio는 Intel HAAX를 가상머신 가속 지원으로 활용하는데, 리눅스 환경에서는 리눅스 자체의 KVM을 가속 지원으로 활용하기 때문에 좀 더 빠른 에뮬레이터, 좀 더 빠른 개발 환경을 보장할 수 있지요. 일단 안드로이드 개발킷을 다운받으러 가봅시다. 여기를 누르시면 바로 이동합니다. 약 480MB 정도 되는 크기고, 저희 집에서는 약 2분 정도면 다 받아지는군요. 저 파란 버튼을 누르면 안드로이드 스튜디오 설치 매뉴얼이 뜹니다. 여기를 누르시면 바로 볼 수 있습니다.Install Android .. 더보기
GTK 3와 Webkit2.0로 리눅스 웹앱 만들기! 오늘은 GTK3 와 Webkit 2.0로 리눅스용 웹앱을 만들어봤습니다. 예, 그냥 C++로 껍데기를 만들고 속은 그냥 진짜 웹페이지인겁니다. 일단 준비물은 두가지인데, gtk 3 개발 패키지와 webkit2 개발 패키지에요. 직접 빌드하지 말고 그냥 아래 명령을 실행하면 바로 받을 수 있죠.jaehoon@jaehoon ~ $ sudo apt-get install libgtk-3-dev libwebkit2gtk-4.0-dev 이렇게 말이죠, 이 개발 패키지들은 의존성이 꽤 많은 편인데 이걸 다 직접 빌드하려면 엄청난 스트레스가... 위에서 저렇게 설치한 패키지의 링크 정보는 pkg-config 명령으로 CFLAG랑 인클루딩 페러미터를 자동으로 생성할 수 있지요. 아래처럼요.이렇게 긴걸 어떻게 다치고 있겠.. 더보기
리눅스로 L4 로드벨런서 만들기 (iptables) L4 로드벨런서는 공인 IP가 하나 뿐이고, 추가 증설 이후 여러 IP를 가질 수 없는 경우에 필요한 장비입니다. 예를들면 어떤 앱이나 임베디드 서비스 엔드포인트 등에 IP가 하드코딩된 경우에 정말 유효한 방법이죠. 하드코딩되지 않았더라도, DNS에 등록된 호스트 테이블을 전부 참조하지 않고 한개만 잡아서 고정 서비스 되도록 개발되었다면 L4 로드벨런싱은 정말 강력한 유효타를 날릴 수 있습니다. (웹 서비스만 운영하는 경우는 DNS만을 이용해서 로드밸런싱을 할 수 있기 때문에 L4 로드벨런서가 그다지 필요성이 없습니다) 리눅스에서 iptables의 NAT 기능 만을 이용해서 로드벨런서를 만들 수가 있습니다. 리눅스로 로드벨런서를 만들게 되면, 전용 장비(Dedicated Device) 보다 훨씬 싼 비용.. 더보기
ufw + gufw 방화벽으로 조금 더 안전하게 리눅스는 기본적으로 netfilter 모듈을 커널 모듈로서 가지고 있고, 그걸 iptables 유틸리티로 제어할 수 있습니다. 그 iptables를 보다 사용하기 쉽게 만들어주는 도구 중 ufw를 한번 살펴보도록 하겠습니다. ufw는 리눅스 민트에 기본 탑재되어 있으며 gufw를 이용해서 보다 편하게 조작할 수 있습니다. (iptables 만으로도 정말 강력한 기능이지만, 아무리 강력한 기능이 있다고 해도, 빠르게 대처할 수 없다면 운용 능력이 떨어지게 되겠지요. 그럴 바에는 차라리 쉽고 편한 유틸리티를 사용하는게 오히려 더 강력할 수 있습니다) 인터페이스 자체가 매우 단순합니다. 이렇게 기본적인 메인 UI에 있는 내부로 들어옴을 "거부"로 설정해 두는 것 만으로도 보다 더 안전한 네트워킹을 할 수가 있.. 더보기
휴대폰으로 찍은 사진을 편하게 옮기는 방법? vsftpd 돌리기 for Linux 주의: 개인적으로 왠만하면 데스크톱에 서버 돌리는거 추천안합니다. 그런데 편의 목적상 없으면 귀찮기 마련이지요... 그래서 포스팅 합니다... 일단, 제가 고른 FTP 클라이언트는 이놈입니다. 제일 무난해보입니다. 이걸로 필요할때 그램으로 바로 넘길거에요. 로컬 네트워크에서 다이렉트로 파일 넘기는 것 만큼 빠른 방법이 없죠. 심지어 스트리밍도 됩니다. 서버 데몬으로는 vsftpd를 사용할건데요, 위에서 언급했듯 데스크톱에서 서버 돌리는 것은 그다지 권장하고 싶지가 않아요. 보안 문제도 있고, 그에 따른 수많은 문제가 있기 때문이죠. 심지어 sftp도 아니고 ftp인데... 설치는 간단하게 아래 명령어 한줄이면 끝납니다.jaehoon@jaehoon ~ $ sudo apt-get install vsftpd .. 더보기
LightDM <-> MDM 전환하기 for Linux Mint 이전에 저는 18.1에서 18.2로 강제 업그레이드를 수행시켰던 적이 있습니다. 오옹 근데, 18.2로 올라오면서 MDM이 아닌 LightDM으로 바뀌었다고 합니다. 그래서 이번 글을 준비했습니다. 뭐 LightDM은 우분투의 그것, 깔끔한 그것입니다. 이거죠. (사진은 웹에서 굴러다니는 거 가져왔습니다 - 우분투 하면 가장먼저 생각나는 그것(?) 이죠) 1. 일단 LightDM을 깔아봅시다. 간단하게 APT를 써서 쉽게 깔 수 있습니다. (위에 스샷에 적힌 패키지들에 필요없는 것들이 끼여 있습니다. 제가 착각하고 잘못 쓴것들입니다... 아래 명령을 사용해주세요 - 나중에 의존성 뒤벼서 지울거 지워야죠 ㅠ)jaehoon@jaehoon ~ $ sudo apt-get install slick-greeter .. 더보기
파일 탐색기를 돌려줘! 디스크 사용량 분석기 뛰우지 말란 말이야! for 리눅스 민트 제가 리눅스 민트 17.2에서 18.1로 직빵으로 리포지터리 트릭 업데이트를 갈겼었을 때, 아무 생각 없이 패키지 디폴트로 밀었다가 기본 연결 프로그램 설정이 엉뚱하게 바뀐적이 있었습니다. 크롬으로 파일을 다운받았는데 폴더 열기를 누르니까 디스크 사용량 분석기가 뜨더라구요. 이거요. 짜증이 치밀어 오르더군요. 혹시나 해서 오래된 넷북에 완전히 새로 민트를 깔아봤더니 걔도 저걸로 연결되어 있는 겁니다. 어이가 없었지요. 심지어 이렇게 연결된 놈의 마임타입이 inode/directory라서 어떻게 기본 프로그램을 바꿀까는 고민을 좀 하다가 디폴트 설정을 바꿔주면 된다는 생각을 했었지만, 일반적으로 사람들이 따라하기에는 좀 복잡한 감이 없지않아 있어요. 평범한 파일의 기본 연결 프로그램은 윈도우즈를 쓸 때처럼.. 더보기
Linux Mint 18.1에서 18.2로의 강제 업그레이드 저는 Linux Mint 18.1을 데스크톱으로 쓰고 있었습니다. LG그램쪽은 2014년형 모델이고, 오른쪽 넷북은 2008년형 XNOTE 넷북이에요. 오늘은 리눅스 민트를 업그레이드 하려고 하는데, 민트 업그레이드 메니져가 말썽이네요? 뭐, 물론, 동작을 하지 않는 것은 아닌데, 리포지터리를 자기 멋대로 북미 민트 메인 호스트(packages.linuxmint.com)로 잡고, 기반 OS 리포지터리도 캐노니컬 북미 미러를 잡네요. :( 북미 미러를 잡으니깐 이게 다운로드 속도가 안나오더라구요. 혹시나 해서 카이스트 미러 들어가 봤는데 18.2 이미 미러링을 제공해주고 있는데도 그런걸로 봐서, 업그레이드 매니져 디폴트가 그런것 같더라구요. 이걸 어찌할까 고민하다가 강제로 업그레이드를 갈겼습니다. ㅋ 이걸.. 더보기