기본 콘텐츠로 건너뛰기

심층 분석: 리눅스 losetup 명령어 완전 가이드 – 고급 사용법과 테스트

심층 분석: 리눅스 losetup 명령어 완전 가이드 안녕하세요, mj입니다. 이번 포스팅에서는 리눅스에서 매우 유용한 losetup 명령어를 깊이 있게 다뤄보겠습니다. 1. losetup 명령어란? losetup 명령어는 리눅스에서 파일을 루프백(loopback) 디바이스에 연결하거나 해제할 때 사용하는 도구입니다. 루프백 디바이스는 실제 물리 디스크가 아닌 파일을 마치 디스크처럼 다룰 수 있게 해주어, 파일 시스템 테스트나 이미지 파일 조작에 자주 쓰입니다. 2. 기본 사용법 가장 기본적인 형태는 다음과 같습니다. losetup [옵션] 루프백디바이스 이미지파일 예를 들어, loop0 에 disk.img 라는 이미지 파일을 연결하려면: sudo losetup /dev/loop0 disk.img 3. 고급 사용법과 옵션 -f : 사용 가능한 첫 번째 루프백 디바이스를 자동으로 찾음 -P : 파티션을 자동으로 인식하여 루프백 디바이스에 파티션을 매핑 -d : 루프백 디바이스 연결 해제 --show : 연결 후 연결된 루프백 디바이스 이름 출력 예시 1: 자동으로 빈 루프백 디바이스에 이미지 연결 sudo losetup -f --show disk.img 출력 예시: /dev/loop2 예시 2: 파티션까지 매핑하기 sudo losetup -fP disk-with-partitions.img 이후 /dev/loopX 뿐만 아니라 /dev/loopXp1 , /dev/loopXp2 등 파티션 디바이스가 생성됩니다. 예시 3: 연결 해제하기 sudo losetup -d /dev/loop2 예시 4: 현재 연결된 루프백 디바이스 조회 losetup -a 출력 예시: /dev/loop0: [0807]:12345 (/home/mj/disk.img) /dev/loop1: [0807]:67890 (/home/mj/disk2.img) 예시 5: 이미지 파일 크기 확인 후 루프백에 연결 truncate -...

20. samba (윈도우와 파일공유)

안녕하세요, MJ 입니다.

파일 공유를 위한 솔루션에는 여러가지가 존재합니다.
그 중 리눅스와 윈도우 간 파일공유를 위해 사용되는 samba 를 통해,
윈도우와 리눅스간 편리하게 파일을 공유해보는 실습을 해 보도록 하겠습니다.

### 파일공유 실습목록 ###
- samba
- NFS
- FTP
- sFTP
- iscsi: block, multipath

Samba 에 대해 알아보겠습니다.

samba 는 리눅스에서 구성하는 프로그램으로,
파일을 공유하기위해 서버, 클라이언트의 역할이 필요하게 되는데,
리눅스에서 서버가 되고, 윈도우는 클라이언트가 됩니다.

리눅스 장비에서 samba 서버를 구성하기위해


1. 패키지 설치가 필요합니다.

  (설치명령어)[run-linux@root ~]# yum install samba samba-winbind 

2. samba 계정 설정

[run-linux@root ~]# smbpasswd -a root # 패스워드 2번 입력 필요

: -a 옵션으로 samba 계정을 추가합니다.
  -x 옵션으로 samba 계정을 제거 할 수 있습니다.

3. samba 설정.

[run-linux@root ~]# vi /etc/samba/smb.conf
## 파일을 수정합니다.

▼ 접기/펼치기 # See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.


[global]
        workgroup = WORKGROUP
        server string = run-linux # 서버이름 지어넣어주세요.
        security = user

        passdb backend = tdbsam

        load printers = yes
        printing = cups
        printcap name = cups
        cups options = raw

        log file = /var/log/samba/%m.log
        max log size = 50

        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        dns proxy = no

        idmap uid = 16777216-33554431
        idmap gid = 16777216-33554431
        template shell = /bin/false
        password server = None
        guest ok = yes
        winbind use default domain = yes

        idmap config * : backend = tdb
        netbios name = pxe
        map to guest = bad user
        dns proxy = no
        public = yes
        kernel oplocks = no
        nt acl support = no
        security = user
        guest account = nobody

        host allow = localhost 192.168.56. 10.20.30. 1.2.3. # 접근가능한 네트워크를 기록.
        min protocol = SMB2
        max protocol = SMB3
        client min protocol = SMB2
        client max protocol = SMB3
        # SMB버전 설정
[root]
        comment = root Partition
        path = /                                 # 루트 경로를 공유
        browseable = Yes
        writeable = Yes
        #read only = No
        public = Yes
        inherit acls = Yes
        create mask = 0644
        directory mode = 0755
        guest ok = No

[homes]           # 로그인 한 계정의 홈디렉토리를 공유
        comment = Home Directories
        valid users = %S, %D%w%S
        browseable = Yes
        writeable = Yes
        #read only = No
        public = Yes
        inherit acls = Yes
        create mask = 0644
        directory mode = 0755
        guest ok = No

[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = root
        create mask = 0664
        directory mask = 0775

제가 사용하는 설정 파일 입니다.
기본 설정파일에서 확인되는 설정 외에 추가 설정이 되어있습니다.

한창 랜섬웨어가 유행 할 때, 가장 많은 감염경로로 SMB v1 이 이용되었습니다.
그래서 SMB v2, SMB v3 를 사용해 연결 될 수 있도록 설정을 변경하였습니다.


3. 서비스 재구동 .

[run-linux@root ~]# systemctl restart smb nmb winbind
: 3개의 서비스(smb, nmb, winbind) 를 재구동 합니다.

이후

윈도우 파일탐색기의 주소창에 백슬러시(\) 를 2번 입력하고, samba 서버 아이피를 입력합니다.
: 이렇게 입력합니다 -> \\아이피\

samba 를 구성하여 윈도우와 공유하는 방법을 알아보았습니다.


문의사항은 댓글을 달아 주시면 성심껏 답변 드리겠습니다.

감사합니다.

댓글

가장 많이 본 글

5. 버추얼박스:설정 (+네트워크의 종류 설명)

안녕하세요 , MJ 입니다 .   우리가 실습을 하는데에 필요한 버추얼박스의 설정에 대해 설명을 합니다 .     버추얼 박스의 설정에는 종류별로 메뉴가 구분되어있습니다 . 1-1. 환경설정 1-2. 네트워크 설정 1-3. 미디어 설정       다른 설정도 존재하지만 , 필요한 일이 없을것이 예상되고 , 위 3 가지 설정에 대해서만 알고 계신다면 버추얼 박스로 실습을 하는데에 아무런 지장이 없고 또 취업을 하신 뒤에 실무에 가셔서도 문제가 될 것이 없습니다 .   환경설정 부터 확인하겠습니다 . 1-1. 환경설정 : 우리가 알아야 편한 내용은 2 가지가 있는데 VM 의 기본 저장경로 설정 " 파일 (F)" 의 환경설정 (P) … [ 단축키 : Ctrl+G] 을 누르면 환경설정 창이 보이고 , 제일먼저 확인되는 기본 머신 폴더 (M) 입니다 . VM 을 저장 할 경로를 지정하는 것인데 VM 은 가상 머신으로 디스크의 용량과는 상관없이 , 가상 컴퓨터의 정보가 저장되는 것으로 , 텍스트 파일형태로 저장되어있고 , 그 내용에는 CPU 를 몇개 사용하도록 되어있는지 , 메모리는 얼마만큼을 할당하도록 되어있는지 , 네트워크 인터페이스는 몇 개가 어떻게 설정되어있는지 ... 등 가상의 컴퓨터를 정의하는 내용의 파일이 저장되는 경로가 되고 ,   디스크 파일은 별도 미디어 설정에서 관리가 되지만 VM 을 생성하는 과정에서 만든 디스크는 VM 저장경로에 함께 생성 되어있어 사용자가 파일탐색기로 경로를 찾아가보면 파일의 사이즈로 아 이것이 디스크 파일인가보구나 하고 알 수 있습니다 .( 용량이 크고 ...

MJ. 로또의 회차별 당첨번호 API 확인 (예제포함)

안녕하세요, MJ 입니다.   로또 당첨번호를 확인하기위해 동행복권 사이트를 찾아 가거나, 포털사이트에서 검색을 할 수 있지만, 다음 주소를 브라우저에 붙여넣거나, curl 명령을 이용하여 터미널에서 손쉽게 확인할 수 있는 방법이 있어 소개를 드리려고 합니다.     < URL> https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo= < 회차번호 >     - API 주소 활용 방법 브라우저에 URL 입력하여 확인 .           >> 인터넷 주소창에 URL 을 입력       ( 윈도우 ) cmd / ( 리눅스 ) bash 터미널에서 curl 을 사용하여 확인 .( 예 : 123 회차 ) >> curl " https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo= 123 " <cmd>   <bash>         python/java/c 등 코드를 만들어서 확인 . >> 코드를 짜서 확인하는 것이 , 데이터를 가공하기도 좋고 , 앞으로 출현할 숫자를 분석하기도 좋지만 , 자신이 원하는 대로 데이터를 가공하기 위해 시간과 노력의 투자가 필요함 .       [ (API 결과 예시 ) 123 회차 조회결과 ] >> json 형식으로 공백 , 줄바꿈이 없이 순서도 제멋대로 확인되지만 (브라우저나 터미널에서 확인하면), 다음과 같은 데이터가 확인됨 .   <확인한 정보 줄맞춰봄> #######...