WinSxS가 너무 공간을 많이 차지 할때?

WinSxS는 호환성 보전을 위하여 버전업 된 DLL 들을 모아 놓는 저장소군요.
그래서 디스크 공간이 부족할 때는 삭제하더라두 크게 문제가 없을 것 같습니다.

하지만 Backup은 받아 두셔야 겠죠??
뭐 섬뜩하게 니 시스템이 부팅 되지 않을꺼라는 애기도 있지만 대체적인 포스팅 내용들을 통해 확인해 보면 삭제해도 시스템을 정상적으로 동작시키는 것에는 큰 문제가 없습니다.

(하지만 Microsoft에서는 해당 디렉토리의 컨텐츠를 삭제하지 말자가 권고 사항입니다.)

아래는 WinSxS에 대한 포스팅 들입니다.

WinSxS를 삭제하기 위해서는 해당 오브젝트에 대한 소유권을 가져온 후 자신의 계정에 풀 컨트롤 권한을 부여 해야 해당 내용들이 삭제가 됩니다.

What is the WINSXS directory in Windows 2008 and Windows Vista and why is it so large?
http://blogs.technet.com/askcore/archive/2008/09/17/what-is-the-winsxs-directory-in-windows-2008-and-windows-vista-and-why-is-it-so-large.aspx


Deleting from the WinSxS directory
http://blogs.msdn.com/jonwis/archive/2007/01/02/deleting-from-the-winsxs-directory.aspx


Demystifying the WinSxS directory in Windows XP, Vista and Server 2003/2008
http://blog.tiensivu.com/aaron/archives/1306-Demystifying-the-WinSxS-directory-in-Windows-XP,-Vista-and-Server-20032008.html

Windows7 에서 hiberfil.sys 삭제 방법 [하이버네이션]

hiberfil.sys 삭제 방법
명령프롬프트에서 powercfg.exe /h off 입력

최대 절전모드를 필요로 하지않는다면 하이버네이션 파일 삭제시 메모리 용량 만큼 HDD 공간 확보
SSD 처럼 디스크 용량이 부족한 경우 페이지 페이지 파일과 더불어 삭제하면 좋습니다.

하이버네이션을 키려면 powercfg.exe -h on 입력

GD / ZLIB / PNG / JPEG / FREETYPE 라이브러리 설치

—————————————-

리눅스 시스템에서의 GD 라이브러리 설치법

—————————————-

검색으로 찾아낸 설치법들을 확인한결과… 상당히 번거로운 라이브러리로 보인다.

이것저것 부가적으로 설치해야되는 라이브러리가 4개나 된다.

1. 필요한 라이브러리 좌표

– zlib 다운로드 : http://www.zlib.net

– png 다운로드 : http://www.libpng.org/pub/png/libpng.html

– JPEG 다운로드 : http://www.ijg.org

– freetype 다운로드 : http://download.savannah.gnu.org/releases/freetype/

– GD 다운로드 : http://www.boutell.com/gd/http/gd-2.0.33.tar.gz

※ 첫 설치하면서 함께  포스팅중이다. 최신버전의 라이브러리를 받아서 진행중임!!

※ root 디렉토리에 다운 받음

2. zlib 설치

./configure -shared -prefix=/usr/local/zlib

make

make install

3. png 설치

./configure -prefix=/usr/local/libpng

make

make install

4. jpeg 설치

———————————————-

참고:

설치시 디렉토리 에러가 나는 경우가 있다고 한다.

버전 6b에서 일어나는 에러인 것으로 보인다.

8b를 받아 설치중이며 디렉토리 에러는 나타나지 않았다.

혹여라도 make install 중에 디렉토리 에러메시지가 보인다면 아래처럼 디렉토리를 생성한다.

mkdir -p /usr/man/man1/

———————————————-

./configure -prefix=/usr/local/jpeg -enable-shared -enable-statie

make

make install

5. freetype 설치

./configure -prefix=/usr/local/freetype

make setup

make install

6. GD 설치

./configure -prefix=/usr/local/gd

=================================================================

출력문 일부 참고:

Support for PNG library: yes

Support for JPEG library: yes

Support for Freetype 2.x library: yes // 무료 폰트 렌더링 라이브러리

Support for Fontconfig library: no

Support for Xpm library: no //unix의 이미지 포맷 라이브러리

Support for pthreads: yes

=================================================================

make

———————————————-

참고:

make시 에러가 나는 경우가 있다고 한다.

현재 설치중인 버전은 2.0.33 이다.

2.0.35 버전 설치중에 일어나는 현상인듯하다. 현재 설치버전엔 나타나지 않았다.

에러내용은 아래와 같다.

cd . && /bin/sh /usr/local/src/gd-2.0.35/config/missing –run aclocal-1.9 -I config

aclocal:configure.ac:64: warning: macro `AM_ICONV’ not found in library

cd . && /bin/sh /usr/local/src/gd-2.0.35/config/missing –run automake-1.9 –foreign

cd . && /bin/sh /usr/local/src/gd-2.0.35/config/missing –run autoconf

configure.ac:64: error: possibly undefined macro: AM_ICONV

If this token and others are legitimate, please use m4_pattern_allow.

See the Autoconf documentation.

make: *** [configure] 오류 1

———————————————-

make install
7. 끝으로
php에서 사용하는 분들이 많은 것 같다.
검색으로 나오는 웬만한 설치법들은 끝부분에 php설정도 함께 게시하고 있다.
그래서 나도 적어볼란다. ㅋㅋ
php 컴파일시
./configure 옵션에 아래사항 추가
–with-gd=/usr/local/gd \
–with-jpeg-dir=/usr/local/jpeg \
–with-freetype-dir=/usr/local/freetype \
–with-png-dir=/usr/local/libpng \
–with-zlib-dir=/usr/local/zlib
** 이 블러그 보시고 설치하신 분은 아래처럼
./configure –prefix=/usr/local/php –with-exec-dir=/usr/bin –with-apxs2=/usr/local/apache/bin/apxs –with-apache-install=/usr/local/apache –with-mysql=/usr/local/mysql –with-config-file-path=/etc –disable-debug –enable-track-vars –enable-sockets –with-png-dir=/usr/local/libpng –with-freetype-dir=/usr/local/freetype –with-mod_charset –with-charset=euc_kr –with-xml –with-language=korean –enable-mailparse –enable-calender –enable-sysvsem=yes –enable-sysvshm=yes –enable-ftp –enable-magic-quotes –enable-gd-native-ttf –enable-versioning –enable-url-includes –enable-trans-id –enable-inline-optimization –with-iconv –enable-mbstring –enable-mbregex –with-gd=/usr/local/gd –with-ttf –with-gettext –enable-sigchild –enable-module=so –enable-versioning –enable-url-includes –enable-trans-id –enable-inline-optimization –enable-bcmath –with-jpeg –with-png –with-zlib –with-jpeg-dir=/usr/local/jpeg –with-png-dir=/usr/local/libpng –with-zlib-dir=/usr/local/zlib
 

C#에서 한글,영문 섞여 있을때 문자의 수 or Byte수 구하기




– 코드:

    class Class1
    {
        /// <summary>
        /// 해당 응용 프로그램의 주 진입점입니다.
        /// </summary>
        [STAThread]
        static void Main(string[] args)
        {
            //
            // TODO: 여기에 응용 프로그램을 시작하는 코드를 추가합니다.
            //
            string tmp = “한글English”;

            byte []bArray_ =Encoding.Default.GetBytes(tmp);
            Console.Out.WriteLine(Encoding.Default.EncodingName);
            Console.Out.WriteLine(Encoding.Default.GetString(bArray_));
            Console.Out.WriteLine(bArray_.Length);

            byte []u7Array_ = Encoding.Convert(Encoding.Default, Encoding.UTF7, bArray_);
            Console.Out.WriteLine(Encoding.UTF7.EncodingName);
            Console.Out.WriteLine(Encoding.UTF7.GetString(u7Array_));
            Console.Out.WriteLine(u7Array_.Length);

            byte []u8Array_ = Encoding.Convert(Encoding.Default, Encoding.UTF8, bArray_);
            Console.Out.WriteLine(Encoding.UTF8.EncodingName);
            Console.Out.WriteLine(Encoding.UTF8.GetString(u8Array_));
            Console.Out.WriteLine(u8Array_.Length);

            byte []uArray_ = Encoding.Convert(Encoding.Default, Encoding.Unicode, bArray_);
            Console.Out.WriteLine(Encoding.Unicode.EncodingName);
            Console.Out.WriteLine(Encoding.Unicode.GetString(uArray_));
            Console.Out.WriteLine(uArray_.Length);

            byte []aArray_ = Encoding.Convert(Encoding.Default, Encoding.ASCII, bArray_);
            Console.Out.WriteLine(Encoding.ASCII.EncodingName);
            Console.Out.WriteLine(Encoding.ASCII.GetString(aArray_));
            Console.Out.WriteLine(aArray_.Length);
        }
    }

———————————————————————————–

– 결과:
한국어
한글English
11
유니코드(UTF-7)
한글English
15
유니코드(UTF-8)
한글English
13
유니코드
한글English
18
US-ASCII
??English
9

[C#]WebClient클래스로 FTP기반 파일전송 방법

Written by Youngil Kim, C#.NET Developer


 


.NET Framework 2.0의 WebClient클래스는 FTP프로토콜도 대응하기에 GOM은 FTP를 기반으로 하는 파일 업/다운로드를 구현해보았습니다.


 


– FTP기반 다운로드 방법


일단 FTP의 파일 다운로드는 DownloadFile 메소드를 이용하여 첫번째 파라미터는 다운로드할 파일의 URL(형식: ftp://FTP서버명/파일경로)을 지정합니다.


에로 ftp://ftp.microsoft.com/developr/readme.txt를 직접 웹브라이저에서 입력해보세요 실제로 접속됩니다. 이는 ftp.microsoft.com이란 FTP서버에 developer란 폴더에 있는 readme.txt파일을 지정한다는 의미입니다.


참고로 FTP서버에 접근하려면 일반적으로 사용자ID와 비밀번호를 통해 인증을 받아야 하는 경우가 있습니다. 이런 경우 WebClient클래스의 Credentials속성을 선언해둘 필요가 있습니다.


 


[WCFtpDownload.cs]


using System;
using System.Collections.Generic;
using System.Net;


namespace WCFtpDownload
{
    class Program
    {
        static void Main(string[] args)
        {
           WebClient wc = new WebClient();
           wc.Credentials = new NetworkCredential(“admin”, “passwd”);
           wc.DownloadFile(“
ftp://server/temp/a.zip”,”temp.zip“);
        }
    }
}


위 예제는 사용자명 admin, 비밀번호 passwd라는 계정으로 FTP서버 server에 로그인하고 temp폴더에 있는 a.zip파일을 다운로드하여 temp.zip이란 파일명으로 변경하여 현대 폴더에 저장하는 형태입니다.


 


– FTP기반 업로드 방법


업로드방법도 다운로드 방법만큼 간단합니다. UploadFile 메소드를 사용하면 끝나기 때문이죠 =_=;


 


[WCFtpUpload.cs]


using System;
using System.Collections.Generic;
using System.Net;


namespace WCFtpUpload
{
    class Program
    {
        static void Main(string[] args)
        {
            WebClient wc = new WebClient();
            wc.Credentials = new NetworkCredential(“admin”,”passwd”);
            wc.UploadFile(“
ftp://server/temp/xxx.zip“, “temp.zip”);


        }
    }
}


 


이 예제는 급조해서 만든거라서 연속 실행하면 두번째이후는 계속 예외가 발생합니다. 이미 파일이 있기 때문이죠 그렇기 때문에 실무에 적용시, 기존 파일이 있는 경우 파일명을 변경하여 업로드를 하는 로직이 필요하겠죠?


또한, Credentials 속성을 설정하지 않고 FTP서버에 접근하는 경우 기본값으로 사용자ID는 anonymous, 비밀번호는 anonymous@가 사용됩니다.


 


이상 끝!

MySQL 5.x 설치후 기존 utf8 자료 이전시 한글 깨짐 증상 해결 my.cnf 수정

출처 : http://blog.naver.com/lkylike/80120027958






Aapache 2.x, PHP 5.x, MySQL 5.x 설치후 서버 이전을 끝내고 사이트 접속해보니 한글이 모두 ㅁㅁㅁ 특수기호들로 깨져 버리더군요.
원인을 알아 보니 mysql 기본 설치시 기본 문자셋이 utf8이 아니라서 생긴 문제 이더군요.
웹소스는 utf8 이며 기존 DB 자료 역시 utf8인데 mysql 기본 문자셋은 다른 문자로 되어 있어서 생긴 문제 였습니다.
다행이도 해결 방법이 mysql 다시 설치 하는 것이 아니라 /etc/my.cnf MySQL 설정 파일만 수정해 주면되었습니다.



자신의 기본 문자셋이 어떻게 되어 있는지 확인 해 보실려면 mysql 접속후 다음과 같이 확인 해 보세요!


 


mysql> SHOW VARIABLES LIKE ‘character_set%’;
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |


 


이와 같이 latin1 등의 문자셋으로 설정 되어 있음을 확인하실 수 있습니다.


설정파일 수정은 /etc/my.cnf 파일을 수정 하시면 되며, 각 [항목] 바로 아래에 문자셋 설정을 추가 해주시면 됩니다.


 


# vi /etc/my.cnf


 


[client]
default-character-set=utf8


 


[mysqld]
init_connect=’set names utf8′
character-set-server=utf8
default-collation=utf8_unicode_ci
skip-character-set-client-handshake
character-set-filesystem=utf8
default-character-set=utf8


 


[mysqldump]
default-character-set=utf8


 


[mysql]
default-character-set=utf8


 


위와 같이 추가하고 저장후 mysql 데몬을 다시 실행 해 보시면 아래와 같이 문자 기본셋이 변경 되었음을 확인 하실 수 있습니다.


 


+————————–+—————————————-+
| Variable_name            | Value                                  |
+————————–+—————————————-+
| character_set_client     | utf8                                   |
| character_set_connection | utf8                                   |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | utf8                                   |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | /usr/local/mysql/share/mysql/charsets/ |
+————————–+—————————————-+


 


사이트 접속해보니 이제 정상으로 한글이 보이는 군요.
등록 및 수정 등 쿼리 전송시 한글 처리는 잘되는지 아직 안해봤음 ^^

MYSQL Error 1042 [ Can’t get hostname for your address ]

MYSQL 설치 후 외부에서 접속시 다음과 같은 오류가 발생한다면..

MYSQL Error 1042 [ Can’t get hostname for your address ]

두가지 옵션이 있다.

1. MySQL이 설치된 서버에 Reverse DNS 를 손봐야 한다.

2. MySQL 을 설치할때 ” –skil-name-resolve”옵션을 붙이고 실행하거나, 아니면 my.ini (my.cnf) 파일에 다음의 옵션을 추가한다.

[mysqld] 
skip-name-resolve

MYSQL 5.5.9 CMAKE 를 이용한 설치방법

 



1. Mysql5.5.9 소스 파일 다운로드를 합니다.

– 웹페이지에서 다운로드 링크를 복사하여


 #wget http://www.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.9.tar.gz/from/http://mirror.khlug.org/mysql/


* 필자 서버에서 MySQL 을 다운받는 방법

명령어 :
wget
http://www.lovecoco.net/dataout/userdata/mysql-5.5.9.tar.gz  [다운로드]


2. Mysql 을 서비스할 계정을 생성합니다.(보안을 위해서)


#groupadd mysql
#useradd -g mysql mysql


3. configure 를 진행합니다.


 – 여기서 5.1 때와 5.5.9 가 다른걸 알았는데요…
 ./configure 가 없다는거…5.5.9 부터는 cmake 라는 것을 통해 설치를 진행하게 됩니다.
cmake 를 다운로드 받습니다. ( http://www.cmake.org/ )
압축만 풀면 사용 가능합니다.



그럼 본격적으로 cmake 를 통해 설치 옵션을 부여해서 해볼까요?


#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DMYSQL_DATADIR=/usr/local/mysql/data  -DENABLED_LOCAL_INFILE=1 DWITH_INNOBASE_STORAGE_ENGINE=1 .



– 전 오래전부터 EUCKR을 사용하여 왔고 해당 DB의 호환성을 위해
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=euckr -DDEFAULT_COLLATION=euckr_korean_ci -DWITH_EXTRA_CHARSETS=all -DMYSQL_DATADIR=/usr/local/mysql/data  -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.socket


를 사용했습니다이후 make all , make install 을 해줘야 합니다.



( cmake 설치 옵션 메뉴얼 :
http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#cmake-general-options )



이렇게 해서 설치를 하다보면 필요한 라이브러리가 필요하다며 중간에 실패가 떨어지기도 합니다.
그러면 해당 라이브러리를 설치 해주시면 됩니다. 설치방법은~~



#yum -y install zlib curl
#yum -y install gcc g++ cpp gcc-c++
#yum -y install openssl openssl-devel
#yum -y install libtermcap-devel ncurses-devel libc-client-devel bzip2-devel
#yum -y install bison


6. mysql 설치 디렉토리에 대한 mysql 권한 부여
#chown -R mysql:mysql /usr/local/mysql

7. 기본 DB 생성

설치 디렉토리로 이동하여서 실행하여야 합니다.(저는 /usr/local/mysql )
#./scripts/mysql_install_db –user=mysql –datadir=/usr/local/mysql/data



8. mysql 설정 파일 복사

#cp support-files/my-medium.cnf  /etc/my.cnf
또는
#cp support-files/my-medium.cnf my.cnf


저는 /usr/local/mysql 설치 디렉토리에 위치 시켰는데 mysql 를 여러개 설치할 경우에
각 mysql에 대한 설정값을 사용하기 위해 mysql설치디렉토리에 위치 시켰습니다.




다음으로 MySQL 서버와 프로그램을 연결해줄 소켓을 링크파일로 생성하야 한다.
ln -s /var/lib/mysql/mysql.sock /usr/local/mysql/mysql.socket
(여기 블러그 보시고 Apache 와 PHP 설정하실분 해당)


9. 서버 부팅시 mysql 실행을 위한 서비스 등록

#cp support-files/mysql.server /etc/init.d/mysqld
(기존에 mysqld 파일이 있을경우 해당서버에 설치된 mysql 이 있다는 뜻으므로, 이전 설치된 mysql을 사용하지 않을경우 overwite해도 무관)

10. mysql 실행시 생성되는 pid 파일이 /var/run/mysqld 에 생성됩니다.
이것때문에 mysql 이 뜨지 않아 로그파일을 보고 알았습니다.
#mkdir -P /var/run/mysqld  
#chown -R mysql:mysql /var/run/mysqld
(기존 mysql 이 설치되었을 경우 해당 디렉토리가 존재할 가능성이 높음. 존재하면 Step 10은 Skip)

11. 외부에서 mysql 에 대한 접근을 위해 서비스 포트를 오픈해야합니다.( 3306 포트 )
/etc/sysconfig/iptables 파일에
 -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
 추가 후
#/etc/rc.d/init.d/iptables restart 로 갱신된 정보를 다시 서비스함.

12. Mysql 실행

#cd /usr/local/mysql/bin
#mysqld_safe –datadir=/usr/local/mysql/data &


이전버젼으로의 호환성을 위해 old-password 를 붙여줌
#/usr/local/mysql/bin/mysqld_safe –user=mysql –language=korean –old-passwords &

13. Mysql Root 비밀번호 생성

#mysqladmin -uroot password 신규비밀번호

14. Mysql 접속

#mysql -uroot -p
Mysql>



15. 재부팅시 자동 실행


마지막으로 부팅시 자동실행을 하도록 만드는 방법은 “/etc/rc.local”파일 재일 마지막 부분에 “/usr/local/mysql/bin/mysqld_safe –user=mysql –language=korean –old-passwords & “

을 추가하도록 한다.

그럼 모든 설치가 끝납니다~ ^^



Linux yum 사용법

YumYellowdog Updater, Modified의 약자로 rpm기반의 시스템(Redhat 계열)을 위한 자동 업데이터이자 패키지 설치/삭제도구입니. Yum은 자동적으로 의존성을 처리해주며 rpm 패키지들을 안전하게 설치, 삭제 및 업데이트하기 위해 반드시 해야할 일들을 스스로 해결합니다.

또한 Yum은 이미 설치 되어 있거나 혹은 저장소에 설치가능한 패키지에 관한 정보를 효율적이고 쉽게 검색해 옵니다. Yum은 rpm이나 다른 도구들처럼 일일이 수동으로 업데이트할 필요가 없으므로 수 많은 시스템들을 더욱 관리하기 쉽게 해줍니다. 한 조직 전체를 통괄하는 규모를 단지 한 두 명만으로 중앙집중적인 패키지 관리를 할 수 있도록, 패키지 그룹, 다수의 저장소, 대체 저장소 및 그 이상을 Yum이 관리해줍니다.


yum으로 update할 경우 커널을 제외한 나머지 패키지들은 모두 삭제됩니다. 커널의 경우는 업데이트를 하더라도 계속 쌓이게 됩니다. yum을 사용하여 install 하거나 update 할 경우 저장소라는 곳에서 해당 rpm 파일을 다운 받은 후 설치하게하게 됩니다. 패키지 파일을 다운받아 임시로 저장하는 위치는 /var/cache/yum 하위 디렉토리 입니다. 윈도우즈 환경으로 비유하면 설치파일인 셈이죠. 시스템에 설치가 끝나면 자동으로 삭제를 합니다.




패키지 리스트 확인 :  #yum list
설치된 패키지 확인 :  # yum list installed
업데이트 목록 확인 :  # yum list updates


패키지 정보 확인     :  # yum info 패키지


패키지 의존성 확인 :  # yum deplist 패키지

패키지 오류시 오류 항목 무시후 업데이트 진행 : # yum update –skip-broken



새로운 패키지 설치, 의존성이 있는 경우 해당 사항들을 자동으로 같이 설치.
# yum install 패키지



설치되어 있는 패키지 업데이트


# yum update 패키지


설치되어 있는 모든 패키지 업데이트


# yum update



로컬에서 설치(현 시스템에 받아 놓은 경우)
# yum localinstall 패키지



패키지 삭제


# yum remove 패키지 or yum erase 패키지


캐시되어 있는 헤더와 패키지 모두 제거.


여기서 yum은 해당 패키지만 삭제하는 것이 아니라 해당 패키지에 의존적인 모든 패키지들을 삭제한다.



특정한 문자열이 있는 내용을 출력


# yum search 문자열



yum이 제대로 작동을 하지 않을 때.


# yum clean all


(캐시되어 있는 헤더와 패키지 모두 제거.


all은 clean expire-cache, clean packages, clean headers, clean metadata, clean dbcache, clean dbcache, clean rpmdb, clean plugins 모두를 의미한다.


따라서 사용자는 yum clean headers; yum clean metadata 두개의 명령으로 CLEAN OPTIONS의 all을 대신 할 수도 있다.)


# yum check


# yum check-update


(현 시스템에 설치된 패키지 중에서 업데이트 목록만 보여준다.)



참고


yum을 사용해서 패키지를 설치 하거나 업데이트를 하다 보면 속도가 느린 경우가 있다.


특정 업데이트 같은 경우는 순간적으로 접속이 폭주하는 경우가 많고, yum 패키지를 설치 후 특정 저장소에서 작업을 하도록 수정이 되어 있찌 않다면 더욱 그럴 것이다.


해당 문제를 해결하기 위해서는 yum의 설정 파일을 수정하는 방법도 있으나 yum의 plugin 패키지 fastestmirror을 설치해 주면 된다.


또한 fastestmirror 패키지는 사용자 시스템에 따라서 패키지 이름이 다를 수 있다.


# yum list | grep fastestmirror


이렇게 해서 출력된 fastesmirro의 패키지 이름을 아래와 같은 명령을 하면된다.


# yum -y install yum-plugin-fastestmirror(페도라 같은 경우는 다음과 같은 페키지명으로 되어 있다.)



X윈도우를 사용하고 있다면 시스템 – 관리 – Add/Remove Software를 열어서 fastestmirror를 찾기해서 나오는 것을 선택하면 된다.



참고사이트 : http://www.phy.duke.edu/~rgb/General/yum_HOWTO/yum_HOWTO/yum_HOWTO.html

참고사이트 : http://blog.naver.com/forlov3u/20119415129

[Linux] Samba 폴더 접근 권한 문제

(펌)http://shieder.tistory.com/6

SELINUX에서 삼바 서버 설정 시 /etc/samba/smb.conf 파일 설정만 하게 되면 윈도우즈 클라이언트에서 공유 폴더 접근 시 액세스 제한 메시지가 뜨게 된다. 이를 해결 하기 위해서는 추가적인 설정을 해줘야 한다.

삼바서버에 디렉토리를 공유하기 위해선 그 디렉토리에  samba_share_t 라는 마크를 설정해줘야
한다. 마크를 설정하는 방법은 아래와 같다.
#chcon -t samba_share_t /path

또한 디렉토리에 어떤 마크가 설정되어 있는지 확인하기 위한 명령어는 ls -ldZ /path 이다.
홈 디렉토리의 마크 설정 여부를 알아보면 다음과 같다. samba_share_t를 주목하기 바란다.
[root@fedora shieder]# ls -ldZ /home
drwxr-xr-x  root root system_u:object_r:samba_share_t:s0 /home

이제 공유를 한 디렉토리의 권한 설정을 해줘야한다.
#/usr/s/bin/setsebool -P samba_export_all_rw on

이 명령어는 samba-share-t가 설정된 모든 디렉토리에 읽기 권한과 쓰기 권하을 부여한다.

이제 다시 공유 폴더에 접근하면 정상적으로 작동하는 것을 볼 수 있을 것이다.