What do i need to do to make pfsense recognize my external USB3.0 HDD ?



  • Hello everyone!

    I am quite new to pfsense. However, i managed to build a machine for it and have it running.
    With the machine running i wanted to add one of my external HDD sitting in a USB3.0 docking station, to it.

    It seems the drive could not be recognized on either the USB1.0/2.0 or USB3.0 ports.

    The machine is running an AMD A88x chipset (FM2+ Platform).

    I would be thankful if someone can tell me if USB is not supported at all or if yes, what's the "dev" name so i can try to mount the drive.

    here is the dmesg log file:

    Copyright © 1992-2012 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
    The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 8.3-RELEASE-p16 #0: Thu May  1 16:19:14 EDT 2014
        root@pf2_1_1_amd64.pfsense.org:/usr/obj.amd64/usr/pfSensesrc/src/sys/pfSense_SMP.8 amd64
    Timecounter "i8254" frequency 1193182 Hz quality 0
    CPU: AMD A10-7700K Radeon R7, 10 Compute Cores 4C+6G (3393.67-MHz K8-class CPU)
      Origin = "AuthenticAMD"  Id = 0x630f01  Family = 15  Model = 30  Stepping = 1
      Features=0x178bfbff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,htt>Features2=0x3698320b <sse3,pclmulqdq,mon,ssse3,fma,cx16,sse4.1,sse4.2,popcnt,aesni,xsave,avx,f16c>AMD Features=0x2e500800 <syscall,nx,mmx+,ffxsr,page1gb,rdtscp,lm>AMD Features2=0xfebbfff<lahf,cmp,svm,extapic,cr8,abm,sse4a,mas,prefetch,osvw,ibs,xop,skinit,wdt,lwp,fma4,<b17>,NodeId,TBM,Topology,<b23>,<b24>,<b25>,<b26>,<b27>>
      TSC: P-state invariant
    real memory  = 8589934592 (8192 MB)
    avail memory = 7113138176 (6783 MB)
    ACPI APIC Table: <alaska a="" m="" i="">FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
    FreeBSD/SMP: 1 package(s) x 4 core(s)
    cpu0 (BSP): APIC ID: 16
    cpu1 (AP): APIC ID: 17
    cpu2 (AP): APIC ID: 18
    cpu3 (AP): APIC ID: 19
    ACPI Warning: FADT (revision 5) is longer than ACPI 2.0 version, truncating length 268 to 244 (20101013/tbfadt-392)
    ACPI Warning: Optional field Pm2ControlBlock has zero address or length: 0x0000000000000000/0x1 (20101013/tbfadt-655)
    ioapic0 <version 2.1="">irqs 0-23 on motherboard
    ioapic1 <version 2.1="">irqs 24-55 on motherboard
    wlan: mac acl policy registered
    kbd1 at kbdmux0
    cryptosoft0: <software crypto="">on motherboard
    padlock0: No ACE support.
    acpi0: <alaska a="" m="" i="">on motherboard
    acpi0: [ITHREAD]
    acpi0: Power Button (fixed)
    Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
    acpi_timer0: <32-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
    cpu0: <acpi cpu="">on acpi0
    cpu1: <acpi cpu="">on acpi0
    cpu2: <acpi cpu="">on acpi0
    cpu3: <acpi cpu="">on acpi0
    acpi_hpet0: <high precision="" event="" timer="">iomem 0xfed00000-0xfed003ff on acpi0
    Timecounter "HPET" frequency 14318180 Hz quality 900
    pcib0: <acpi host-pci="" bridge="">port 0xcf8-0xcff on acpi0
    pci0: <acpi pci="" bus="">on pcib0
    pci0: <base peripheral=""> at device 0.2 (no driver attached)
    vgapci0: <vga-compatible display="">port 0xf000-0xf0ff mem 0xc0000000-0xcfffffff,0xd0000000-0xd07fffff,0xfeb00000-0xfeb3ffff irq 26 at device 1.0 on pci0
    pci0: <multimedia, hda="">at device 1.1 (no driver attached)
    pcib1: <acpi pci-pci="" bridge="">irq 16 at device 2.1 on pci0
    pci1: <acpi pci="" bus="">on pcib1
    igb0: <intel(r) 1000="" pro="" network="" connection="" version="" -="" 2.4.0="">mem 0xfe700000-0xfe7fffff,0xfe800000-0xfe803fff irq 24 at device 0.0 on pci1
    igb0: Using MSIX interrupts with 5 vectors
    igb0: [ITHREAD]
    igb0: Bound queue 0 to cpu 0
    igb0: [ITHREAD]
    igb0: Bound queue 1 to cpu 1
    igb0: [ITHREAD]
    igb0: Bound queue 2 to cpu 2
    igb0: [ITHREAD]
    igb0: Bound queue 3 to cpu 3
    igb0: [ITHREAD]
    pcib2: <acpi pci-pci="" bridge="">irq 18 at device 3.1 on pci0
    pci2: <acpi pci="" bus="">on pcib2
    re0: <realtek 8111="" 8168="" b="" c="" cp="" d="" dp="" e="" f="" pcie="" gigabit="" ethernet="">port 0xe000-0xe0ff mem 0xfea00000-0xfea00fff,0xd0800000-0xd0803fff irq 32 at device 0.0 on pci2
    re0: Using 1 MSI-X message
    re0: Chip rev. 0x4c000000
    re0: MAC rev. 0x00000000
    re0: Unknown H/W revision: 0x4c000000
    device_attach: re0 attach returned 6
    pcib3: <acpi pci-pci="" bridge="">irq 18 at device 3.2 on pci0
    pci3: <acpi pci="" bus="">on pcib3
    pci3: <serial bus,="" usb="">at device 0.0 (no driver attached)
    pcib4: <acpi pci-pci="" bridge="">irq 18 at device 3.3 on pci0
    pci4: <acpi pci="" bus="">on pcib4
    igb1: <intel(r) 1000="" pro="" network="" connection="" version="" -="" 2.4.0="">mem 0xfe400000-0xfe4fffff,0xfe500000-0xfe503fff irq 40 at device 0.0 on pci4
    igb1: Using MSIX interrupts with 5 vectors
    igb1: [ITHREAD]
    igb1: Bound queue 0 to cpu 0
    igb1: [ITHREAD]
    igb1: Bound queue 1 to cpu 1
    igb1: [ITHREAD]
    igb1: Bound queue 2 to cpu 2
    igb1: [ITHREAD]
    igb1: Bound queue 3 to cpu 3
    igb1: [ITHREAD]
    pci0: <serial bus,="" usb="">at device 16.0 (no driver attached)
    pci0: <serial bus,="" usb="">at device 16.1 (no driver attached)
    atapci0: <amd ahci="" controller="">port 0xf140-0xf147,0xf130-0xf133,0xf120-0xf127,0xf110-0xf113,0xf100-0xf10f mem 0xfeb71000-0xfeb717ff irq 19 at device 17.0 on pci0
    atapci0: [ITHREAD]
    atapci0: AHCI v1.30 controller with 8 6Gbps ports, PM supported
    ata2: <ata channel="">at channel 0 on atapci0
    ata2: [ITHREAD]
    ata3: <ata channel="">at channel 1 on atapci0
    ata3: [ITHREAD]
    ata4: <ata channel="">at channel 2 on atapci0
    ata4: [ITHREAD]
    ata5: <ata channel="">at channel 3 on atapci0
    ata5: [ITHREAD]
    ata6: <ata channel="">at channel 4 on atapci0
    ata6: [ITHREAD]
    ata7: <ata channel="">at channel 5 on atapci0
    ata7: [ITHREAD]
    ata8: <ata channel="">at channel 6 on atapci0
    ata8: [ITHREAD]
    ata9: <ata channel="">at channel 7 on atapci0
    ata9: [ITHREAD]
    ohci0: <ohci (generic)="" usb="" controller="">mem 0xfeb70000-0xfeb70fff irq 18 at device 18.0 on pci0
    ohci0: [ITHREAD]
    usbus0: <ohci (generic)="" usb="" controller="">on ohci0
    ehci0: <ehci (generic)="" usb="" 2.0="" controller="">mem 0xfeb6f000-0xfeb6f0ff irq 17 at device 18.2 on pci0
    ehci0: [ITHREAD]
    usbus1: EHCI version 1.0
    usbus1: <ehci (generic)="" usb="" 2.0="" controller="">on ehci0
    ohci1: <ohci (generic)="" usb="" controller="">mem 0xfeb6e000-0xfeb6efff irq 18 at device 19.0 on pci0
    ohci1: [ITHREAD]
    usbus2: <ohci (generic)="" usb="" controller="">on ohci1
    ehci1: <ehci (generic)="" usb="" 2.0="" controller="">mem 0xfeb6d000-0xfeb6d0ff irq 17 at device 19.2 on pci0
    ehci1: [ITHREAD]
    usbus3: EHCI version 1.0
    usbus3: <ehci (generic)="" usb="" 2.0="" controller="">on ehci1
    pci0: <serial bus,="" smbus="">at device 20.0 (no driver attached)
    pci0: <multimedia, hda="">at device 20.2 (no driver attached)
    isab0: <pci-isa bridge="">at device 20.3 on pci0
    isa0: <isa bus="">on isab0
    pcib5: <acpi pci-pci="" bridge="">at device 20.4 on pci0
    pci5: <acpi pci="" bus="">on pcib5
    ohci2: <ohci (generic)="" usb="" controller="">mem 0xfeb6c000-0xfeb6cfff irq 18 at device 20.5 on pci0
    ohci2: [ITHREAD]
    usbus4: <ohci (generic)="" usb="" controller="">on ohci2
    acpi_button0: <power button="">on acpi0
    uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
    uart0: [FILTER]
    ppc1: <parallel port="">port 0x378-0x37f irq 5 drq 3 on acpi0
    ppc1: Generic chipset (NIBBLE-only) in COMPATIBLE mode
    ppc1: [ITHREAD]
    ppbus0: <parallel port="" bus="">on ppc1
    plip0: <plip network="" interface="">on ppbus0
    plip0: [ITHREAD]
    lpt0: <printer>on ppbus0
    lpt0: [ITHREAD]
    lpt0: Interrupt-driven port
    ppi0: <parallel i="" o="">on ppbus0
    atrtc0: <at realtime="" clock="">port 0x70-0x71 irq 8 on acpi0
    sc0: <system console="">at flags 0x100 on isa0
    sc0: VGA <16 virtual consoles, flags=0x300>
    vga0: <generic isa="" vga="">at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
    atkbdc0: <keyboard controller="" (i8042)="">at port 0x60,0x64 on isa0
    atkbd0: <at keyboard="">irq 1 on atkbdc0
    kbd0 at atkbd0
    atkbd0: [GIANT-LOCKED]
    atkbd0: [ITHREAD]
    ppc0: cannot reserve I/O port range
    acpi_throttle0: <acpi cpu="" throttling="">on cpu0
    hwpstate0: <cool`n'quiet 2.0="">on cpu0
    acpi_throttle1: <acpi cpu="" throttling="">on cpu1
    acpi_throttle1: failed to attach P_CNT
    device_attach: acpi_throttle1 attach returned 6
    acpi_throttle2: <acpi cpu="" throttling="">on cpu2
    acpi_throttle2: failed to attach P_CNT
    device_attach: acpi_throttle2 attach returned 6
    acpi_throttle3: <acpi cpu="" throttling="">on cpu3
    acpi_throttle3: failed to attach P_CNT
    device_attach: acpi_throttle3 attach returned 6
    Timecounters tick every 1.000 msec
    IPsec: Initialized Security Association Processing.
    usbus0: 12Mbps Full Speed USB v1.0
    usbus1: 480Mbps High Speed USB v2.0
    usbus2: 12Mbps Full Speed USB v1.0
    usbus3: 480Mbps High Speed USB v2.0
    usbus4: 12Mbps Full Speed USB v1.0
    ugen0.1: <amd>at usbus0
    uhub0: <amd 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus0
    ugen1.1: <amd>at usbus1
    uhub1: <amd 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr="">on usbus1
    ugen2.1: <amd>at usbus2
    uhub2: <amd 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus2
    ugen3.1: <amd>at usbus3
    uhub3: <amd 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr="">on usbus3
    ugen4.1: <amd>at usbus4
    uhub4: <amd 1="" 9="" ohci="" root="" hub,="" class="" 0,="" rev="" 1.00="" 1.00,="" addr="">on usbus4
    ad4: 57241MB <corsair force="" gt="" 5.07="">at ata2-master UDMA100 SATA 6Gb/s
    SMP: AP CPU #3 Launched!
    SMP: AP CPU #1 Launched!
    SMP: AP CPU #2 Launched!
    Root mount waiting for: usbus4 usbus3 usbus2 usbus1 usbus0
    uhub4: 2 ports with 2 removable, self powered
    uhub0: 5 ports with 5 removable, self powered
    uhub2: 5 ports with 5 removable, self powered
    Root mount waiting for: usbus3 usbus1
    uhub1: 5 ports with 5 removable, self powered
    uhub3: 5 ports with 5 removable, self powered
    Root mount waiting for: usbus1
    Trying to mount root from ufs:/dev/ad4s1a
    ugen2.2: <lite-on technology="" corp.="">at usbus2
    ukbd0: <lite-on 0="" 2="" technology="" corp.="" usb="" multimedia="" keyboard,="" class="" 0,="" rev="" 1.10="" 1.18,="" addr="">on usbus2
    kbd2 at ukbd0
    uhid0: <lite-on 0="" 2="" technology="" corp.="" usb="" multimedia="" keyboard,="" class="" 0,="" rev="" 1.10="" 1.18,="" addr="">on usbus2
    ZFS WARNING: Recommended minimum kmem_size is 512MB; expect unstable behavior.
                Consider tuning vm.kmem_size and vm.kmem_size_max
                in /boot/loader.conf.
    ZFS filesystem version 5
    ZFS storage pool version 28

    Thank you!</lite-on></lite-on></lite-on></corsair></amd></amd></amd></amd></amd></amd></amd></amd></amd></amd></acpi></acpi></acpi></cool`n'quiet></acpi></at></keyboard></generic></system></at></parallel></printer></plip></parallel></parallel></power></ohci></ohci></acpi></acpi></isa></pci-isa></multimedia,></serial></ehci></ehci></ohci></ohci></ehci></ehci></ohci></ohci></ata></ata></ata></ata></ata></ata></ata></ata></amd></serial></serial></intel(r)></acpi></acpi></serial></acpi></acpi></realtek></acpi></acpi></intel(r)></acpi></acpi></multimedia,></vga-compatible></acpi></acpi></high></acpi></acpi></acpi></acpi></alaska></software></version></version></alaska></b27></b26></b25></b24></b23></lahf,cmp,svm,extapic,cr8,abm,sse4a,mas,prefetch,osvw,ibs,xop,skinit,wdt,lwp,fma4,<b17></syscall,nx,mmx+,ffxsr,page1gb,rdtscp,lm></sse3,pclmulqdq,mon,ssse3,fma,cx16,sse4.1,sse4.2,popcnt,aesni,xsave,avx,f16c></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,htt>


  • Netgate Administrator

    There is no support for usb3 in pfSense 2.1.X.
    Is that the boot log? Try connecting it after boot and look at the system log.
    If you get it connected and mount it what are you going to do with it?

    Steve



  • Thank you for your reply, i havent had time to try anything different yet but wanted to give you an idea what my plan was.
    I wanted to use an FTP server package on my pfsense box (or something similar) which uses one additional hdd besides the system drive as storage.
    External HDD because i can remove it if necessary without opening the pc case.
    The log in my first post is the pfsense output on screen during bootup. It seems to detect "some" kind (USB1.0/2.0)of usb hardware.
    Going to check what you suggested later today and report back.



  • I can confirm that USB3 works with the 2.2 Alpha images, when you are brave enough to try.

    Edit: seems that FreeBSD 8.3 has an xhci module.  If it's shipped with pfSense 2.1.3, you could try to load it to get USB3 support.


  • Netgate Administrator

    There is USB support. You can boot from USB if you want. I would expect the drive to be detected but not mounted as long as it's falling back to usb2.
    Most people here will advise you that running a file server on your firewall is a bad idea but of course you're free to do so.  ;)

    Steve



  • The system log file did not show anything after connecting the drive.
    If the drive is recognized then how can i verify this before it is even mounted?


  • Netgate Administrator

    Hmm, something not right then. Try plugging in some other USB device and check the log.

    Steve



  • Ok, advanced one step….

    I got the drive connected and syslog reports data:

    da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
    da0: Fixed Direct Access SCSI-0 device
    da0: 1.000MB/s transfers
    da0: 305245MB (625142448 512 byte sectors: 255H 63S/T 38913C)

    From there i can see the drive name is "da0" correct?

    Tried to mount this to a folder i made in the root folder called "ftpdrive" using the mount comand from the shell.
    Mount /dev/da0 /ftpdrive
    error: invalid argument

    Any ideas?



  • @xPliZit_xs:

    Ok, advanced one step….

    I got the drive connected and syslog reports data:

    da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
    da0: Fixed Direct Access SCSI-0 device
    da0: 1.000MB/s transfers
    da0: 305245MB (625142448 512 byte sectors: 255H 63S/T 38913C)

    From there i can see the drive name is "da0" correct?

    Tried to mount this to a folder i made in the root folder called "ftpdrive" using the mount comand from the shell.
    Mount /dev/da0 /ftpdrive
    error: invalid argument

    Any ideas?

    That won't work just yet.  I can share my experience with FreeNAS which is also based on FreeBSD.  You have to load the fuse module:

    kldload fuse

    mount -t ntfs /dev/da0s1 /1T

    Obviously the ntfs is an example.

    http://www.nitekonline.com/?p=216

    You may have to play around with the settings.

    I don't know if PfSense have that module even have it as an option since this basic in FreeBSD in function as a firewall.

    Hope this helps.


  • Netgate Administrator

    Hmm, I don't recall needing to kld fuse last time I tried anything like this. But it wasn't a USB drive.
    Importantly you can't can't mount the drive directly, you have to mount a slice on the drive. It needs to be partitioned and formatted.

    This is probably helpful:
    https://doc.pfsense.org/index.php/Local_Disk_Storage_on_Embedded_(soekris)

    Steve



  • Ok, i finally got it mounted following this link: https://doc.pfsense.org/index.php/Local_Disk_Storage_on_Embedded_(soekris)

    Thank you guys for helping! Now i will move on and try to get a ftp server going….