Monthly Archives: November 2012

리눅스 터미널 에러발생 – c++로 만든 실행파일 에러

[root@server tempdir]# ./dfs_decode

-bash: ./dfs_grb1_decode: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

yum install ld-linux.so.2

 

gcc dfs_grb1_decode.c -lm -o dfs_grb1_decode

라이브러리 이용해서 컴파일하라능거…. 우분투에서는 그냥 gcc하면 자동으로 인식이 되는것같은데 센트에서는 명시를 해 줘야한다.

 

FileZilla 사용시 Kiosk 어쩌고 하면서 SSH등록 안될때 해결방법

filezilla : kiosk mode error…

탐새끼를 c:\사용자\내아이디\AppData경로로 이동시키고

filezilla.xml을 검색한다.

이거 지운다

다시 실행한다.

 

복잡한 설정도 가능한 듯 싶지만… 간편하게 해결되서 그냥 삭제하는게 나을 것 같다.

파일질라를 튜닝해서 쓸것도 아니고

 

Linux 네트워크 – 고정아이피 설정, 무선랜 접속하기

고정아이패 설정하기

/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

위의 텍스트는 기본상태

이것을 아래의 상태로 변경해주면 된다.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
#여기부터 바뀐부분
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
dns-nameservers xxx.xxx.xxx.xxx

네임서버 설정이 위에 달려있다.

이걸 별도로 설정하고 싶으면….

$ sudo vi resolv.conf

nameserver {네임서버IP}

$ sudo /etc/init.d/networking restart

 

이후 ifconfig를 입력하면 주소가 바뀌어있다.

 

무선랜 잡기

http://blog.naver.com/PostView.nhn?blogId=tingko10&logNo=50084629467

1. ifconfig명령으로 디바이스를 검색한다.
2. 무선랜 디바이스는 아마 wlan0로 검색될것이다.
ifconfig wlan0 up 명령으로 디바이스를 켠다.
3. iwlist wlan0 scanning 으로 주변 ap를 검색한다.
4. iwconfig wlan0 essid “ap의 essid” mode managed 를 입력한다.
encryption이 on되어있는 경우는 버그가 있는지 안됨. 잘 모르겠음.
5. dhclient 명령으로 ip를 얻어온다.

여기까지 해도 안된다면 네트워크 관리자의 문제일 확률이 높다.
apt-get install wicd를 설치하는 방법이 있고
네트워크 관리자를 아예 날려버리는 방법이 있다.
[출처] 우분투에서 터미널로 Wifi 설정하기|작성자 짱일이

 

CentOS

http://www.jopenbusiness.com/tc/oss/entry/CentOS-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%84%A4%EC%A0%95

네트워크 설정

# ifconfig -a
입력하여 네트워크 카드가 등록되어 있는지 확인
/etc/sysconfig/network-scripts/ifcfg-eth0

보통 첫번째 네트워크 카드는 eth0이다. 네트워크 카드를 설정

고정아이피 설정시

#--- eth0 네트워크 카드에 고정 IP 설정시
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:24:1D:71:21:5C
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=203.261.27.22
GATEWAY=203.261.27.1
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes

dhcp 설정시

#--- eth0 네트워크 카드에 DHCP 설정시
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=00:24:1D:71:21:5C
ONBOOT=yes
  • /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain   #--- 호스트명과 도메인명 지정
# HOSTNAME=localhost
# DOMAINNAME=localdomain
  • /etc/hosts #— 호스트명 지정
127.0.0.1               localhost.localdomain localhost
  • /etc/resolv.conf #— DNS를 위한 네임서버를 지정 한다.
search
nameserver 164.124.101.2  #--- 데이콤에서 사용하는 nameserver IP
nameserver 168.126.63.1   #--- 코넷에서 사용하는 nameserver IP
  • /etc/host.conf
#--- 호스트명 찾는 우선 순위 지정, hosts. /etc/hosts, bind. DNS 서버
order hosts,bind   #--- /etc/hosts 파일에서 찾고 없을 경우 DNS 서버에서 찾는다.
  • Network 설정 GUI 명령어
system-config-network
  • Network 설정이 마무리 되면 network 서비스를 재기동 한다.
service  network  restart

 

Virtualhost 브릿지 연결

http://www.lug.or.kr/m/bbs/view.php?bo_table=centos_book&wr_id=8&page=10

설정 -> 네트워크 -> 어댑터 -> 다음에 연결됨(선택메메뉴 – 연결되지않음, NAT, 브리지어댑터, 내부네트워크, 호스트전용 어댑터, 일반 드라이버)

윈도우7의 경우 윈도우 제어판 -> 네트워크 및 인터넷 -> 네트워크 연결
VirtualBox Host-Only Network 와 브릿지를 걸 네트워크를 함께 선택한 후 오른쪽 클릭!! 그러면 브릿지 연결이라는 메뉴가 보인다. 클릭하면 끝.

 

 

 

 

MysqlData 백업 및 복원 방법

1. 파일백업
우분투의 경우 기본 디렉토리
/var/lib/mysql/*
하위경로의 파일을 모두 백업해놓으면 된다.
새로 설치후 이 파일들을 복원하면 DB복원완료
(접속이 안된다면 그건 권한이겠지)

2. mysqldump
데이터베이스 모두 덤프(백업)
mysqldump -u root -p ‘password’ –all-databases > 파일명.sql
특정 데이터베이스 덤프(백업)
mysqldump -u root -p ‘password’ test > 파일명.sql
테이블 덤프(백업)
mysqldump -u root -p ‘password’ test tbl_data > 파일명.sql
테이블 스키마 덤프(백업)
mysqldump -u root -p ‘password’ –no-data test tbl_data > 파일명.sql
mysqldump -u 계정명 -p 비밀번호 –no-data 디비명 테이블명 > 파일명.sql
테이블 스키마 제외 파일만 덤프
mysqldump -u root -p –no-create 디비명 [테이블명] > 파일명.sql

테이블명은 빼면 디비를 통째로 하겠지…. 아마도
비밀번호는 스크립트에 안쓰면 따로 쓰라고 뜬다.

3. 복구방법
덤프파일이용 복구
mysql- u root -p test > test.sql 이거안댐
mysql -u “root” -p “test” < ./test.sql

Linux SSH public-private key 인증으로 비밀번호 없이 사용하기

http://www.sdm-studio.it/setup-public-key-authentication-from-mac-to-ubuntu-server/

요기 참고했음

 

관리할 서버가 늘어나고 스크립트 사용시에 원격 서버에 비밀번호 없이 접속이 되야 편하기 때문에 설정하게 되었다.

 

1.  ssh키 생성하기

여기서 확인(http://memo.polypia.net/archives/2018)

 

 

2. 키를 타겟 서버로 카피하기

#클라이언트가 한개인경우
scp ~/.ssh/id_rsa.pub USERNAME@서버주소:.ssh/authorized_keys

#한 서버에 퍼블릭키를 여러개 등록할 경우 추가 방법
#그냥 잘라붙이기 하는거나 마찬가진데 명령어로 넣는 방법이다
cat ~/.ssh/id_rsa.pub | ssh USER@HOST "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

##디렉토리가 없어서 카피가 실패할 경우.. 타겟서버에 디렉토리 만들기
mkdir ~/.ssh
touch ~/.ssh/authorized_keys
exit

3. 접속하기 테스트

비밀번호를 안쓰고 SSH 접속이 되면 성공

ssh USERNAME@서버주소

 

4. 안되는 경우

이런 경우 서버의 .ssh 디렉토리 소유권과 권한을 재설정해본다.
chmod 700 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
ssh 서비스를 재시작
sudo service ssh restart

이렇게 해도 안되면 모르겠다.
gg
구글검색

 

CentOS의 경우 6.x 버전의 selinux버그로 인해 발생하는 문제

http://stackoverflow.com/questions/9741574/redhat-6-oracle-linux-6-is-not-allowing-key-authentication-via-ssh

cd ~
chmod g-w,u-rwx .
chmod 700 .ssh
cd .ssh
chmod 600 *
chmod 644 authorized_keys
chmod 644 known_hosts
chmod 644 config
restorecon -R -v ../.ssh

가장 쉬운 해결법인 복붙법. 권한문제는 아니다.

간혹가다가 rsa와 dsa방식중 한가지만 지원하는 서버도 잇다고 하니… 위의 방법이 안먹힌다면 해볼만하다.

 

5.  비밀번호 로그인 금지(키 로그인만 허용)

 

##우분투 배포판이 아니라면 경로가 다를 수 있음
$ sudo nano /etc/ssh/sshd_config

##이걸 찾아서 변경
#PasswordAuthentication yes
->>
PasswordAuthentication no

## 역시 명령이 다를 수 있음 tab자동완성을 이용하면 좀 달라서 알아서 찾아주기도 하고
## 아예 다른경우는 알아서
$ sudo service ssh restart

 

채용 면접시험

코딩 테스트

조그만 회사에서 학원출신들 뽑으면서 너무 시험을 거창하게 보면 나가 떨어질게 뻔하다.

아예 컴퓨터업계에 종사하면 서로서로 피곤해질 최저수준을 걸러내는 정도로 설정 해 봤다.

1. 별그리기

2. 구구단뽑기

(3. (JAVA)웹 프로젝트 셋팅, 필터 설정, 파일 업로드)

4. 파일입출력

5. A<-B<-C 상속관계 설정

3번 제외하고 30분 정도면 되지 않을까…

 

이정도… 차후 추가예정

mysql date query 날짜 더하기빼기

SELECT DATE_SUB(NOW(), INTERVAL 30 day);

SELECT TIMESTAMP(DATE_SUB(NOW(), INTERVAL 30 day));

SELECT UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 30 day));

 

MySQL뿐만 아니라 쿼리문에서 날짜를 더하고 빼야하는 일이 많다 이럴때 쓰는 쿼리.

 

http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html :

SELECT DAY(your_date_field) AS dtDay, MONTH(your_date_field) AS dtMonth, YEAR(your_date_field) AS dtYear FROM your_table

일,월,년 구하는 쿼리