Recent Updates Page 2 Toggle Comment Threads | Keyboard Shortcuts

  • Jay Versluis 3:12 pm on February 9, 2015 Permalink | Reply
    Tags: Gatekeeper, ,   

    Categories: Mac OS X ( 11 )

    How to fix “This file is damaged and can’t be opened” in Mac OS X 

    Screen Shot 2015-02-08 at 12.01.36

    Yesterday I was trying to open an installer which was offered as a .dmg file. That’s a disk image which mounted itself fine, but when I ran the installer contained in the disk image, all I got was an error message: “ZBrush to Keyshot Content Installer is damaged and could not be opened”.

    At first I thought perhaps the download had a problem, or perhaps the source file was corrupt. But in such cases the .dmg usually doesn’t even mount – which mine did. Perplexed, I raised a support ticket with the provider of the software.

    Thanks to Matthew at Pixologic support I received a very quick solution to this puzzle: there’s nothing wrong with my download, nor with the source file – it’s OS X’s Security Settings that flag up an inappropriate error.

    Thank you, Gatekeeper!

    Here’s how to fix it:

    • head over to System Preferences – Security and Privacy
    • select the General Tab
    • click the little Lock Icon and enter your password
    • now select Allow apps downloaded from anywhere

    Screen Shot 2015-02-09 at 14.52.19

    I would have never made the connection between the “corrupt file” error message and Gatekeeper preventing the file from opening properly. Usually when Gatekeeper gets involved it’s very clear that OS X is preventing something from being opened, with a hint of where to tweak those settings. But not in this case.

    As soon as you select “Allow from anywhere” a modal window pops up asking you if you’re really sure. It also explains a new Yosemite behaviour that if you decide to go ahead, the setting will revert back in 30 days. So if you think “hey, I’ve tweaked this setting recently”, don’t doubt your sanity.

    There’s no need to download the file again either. Now my download opens fine, mounts fine, and most importantly installs fine too.

     
  • Jay Versluis 2:36 pm on February 7, 2015 Permalink | Reply
    Tags: , Java,   

    Categories: Mac OS X ( 11 )

    How to install Java SE 6 Runtime on Mac OS X Yosemite 

    When you’re trying to open any of the Adobe CS5 or CS6 applications in Yosemite, you’ve likely encountered a friendly message such as this:

    Screen Shot 2015-02-07 at 14.16.35

    This happens because CS5 and CS6 applications were relying on Java 6, and the current version at the time of writing is Java 8. I’m not an expert on Java, but I can only assume that things have changed and backward compatibility wasn’t high on ORACLE’s priority list.

    Lucky for us, we can have both Java 6 and Java 8 installed at the same time, the latter is an option offer by Apple.

    When you click the More Info button you’ll be taken to an Apple Support site which allows you to download it from the following link:

    Apple’s Support Site has a habit of returning empty white pages lately. If this happens to you, try to find this page in Google and click that super tiny green arrow next to the word “support”. This will bring up a dropdown menu from which you can select Cached. I remember in the good old days this option was more prominent, and it will take you to a link similar to this one:

    If that also doesn’t work, try a snapshot from the wonderful Wayback Machine:

    Download the installer and double-click the .dmg file, then follow the installation instructions.

    Screen Shot 2015-02-07 at 14.31.34

    As soon as the installer has finished you’ll be able to open your favourite Adobe CS5 and CS6 apps again. No restart required.

     
  • Jay Versluis 12:05 pm on February 6, 2015 Permalink | Reply
    Tags:   

    Categories: Mac OS X ( 11 )

    How to change the screen resolution on Remote Macs 

    It’s easy to remote control your Mac, no matter if it’s hosted in a data centre far away, or if it sits in your bookshelf across the room. But when you do, you’ll notice that the screen resolution is often not what you’d expect on the monitor you control your Mac from.

    This is a bit of a puzzle at first, because quite clearly the integrated graphics card can power various resolutions – including your 27″ Thunderbolt Display or your 1080p television set. Yet by default, OS X only volunteers very limited choices like the following:

    Screen Rez

    As a result, you’ll see a small inset picture surrounded by a whole lot of nothing on your local display.

    So what can we do, if we don’t want to live with this?

     

    Solution 1: Cheap and Nasty

    One cheap and rather inconvenient way is to quickly connect the Mac in question to the display you’d like to view it on, wait until the resolution switches, and then quickly unplug that display again. The current screen resolution stays intact, so quickly remote into it and all will be fine.

    Until you reboot the machine. Which sooner or later you’ll have to do.

    You also need bring your Mac into physical proximity to your display, which is not only inconvenient but not always possible.

    Sadly this approach doesn’t work on Laptops, as they will switch back to the integrated screen’s resolution the moment you unplug the display again. Thankfully there is a better way:

     

    Solution 2: A Convenient Preference Pane

    Install a small utility for $20 called SwitchResX by Stéphane Madrau. You can test it free for 10 days, and I think it’s worth the money (I’m not being paid to write this by the way).

    SwitchResX will create a Preference Pane (under System Preferences – SwitchResX) which will let you set any resolution you like, no matter what display is or isn’t attached.

    Screen Shot 2015-02-06 at 11.28.15

    Here’s how it works

    Say I wanted to remote into my 13″ MacBook Pro. By default the screen sharing would come back with a resolution of 1280×800 pixels. But my Thunderbolt Display has a resolution of 2560×1440 – and I’d like to see my MacBook remotely as if it appears when the display is attached directly.

    Once installed, head over to

    • System Preferences
    • double-click SwitchResX
    • select your Display (Color LCD in my case, it’s the last item in the left hand pane)
    • select Current Resolutions and see if you find anything that matches your remote display
    • or select Custom Resolutions and create your own

    Save your values and you may be prompted for a reboot. When your Mac comes back, remote in again and see your new resolution in all its glory.

    Screen Shot 2015-02-06 at 11.28.34

    SwitchResX can do a lot more: for example, you can change your display resolution depending on which app you’re running. This comes in handy for certain graphic programmes, some of which look great in full screen mode – but sometimes the writing and tools becomes so small that you wish you could just change your screen to a lower resolution and give your eyes a rest.

    Or think of screencasts and presentations which must match a certain resolution. The possibilities are endless!

     

    Small Caveat

    I’ve noticed one small snag in regards to remote connections which is what I’m using this tool for. The new resolution you set remains active even if you break your remote connection. That’s expected behaviour, and of course great if you remote in again at a later time.

    But if you physically attach a different display which cannot cope with your custom resolution, all you’ll see is a blank screen. A laptop’s internal display for example doesn’t quite respond to anything higher than its default resolution.

    As a quick workaround you can simply remote back into the machine and change the resolution back to something your display can understand. But if you forget, or if you no longer have remote access to the machine, this could become rather awkward.

    Should this situation bite you, restart your Mac in Safe Mode (hold SHIFT during boot) which will start up in a default low resolution. Next head over to System Preferences – SwitchResX – select your display and click “Restore Factory Settings”.

    The procedure is explained on the SwitchResX homepage too (in the FAQ section).

     
  • Jay Versluis 11:10 am on February 6, 2015 Permalink | Reply
    Tags:   

    Categories: Plesk ( 54 )

    How (and when) to disable Plesk Mail Services 

    Plesk-LogoImagine the following scenario:

    A website is hosted on Server 1. Let’s call it domain.com. The email services for domain.com are hosted on another server, let’s say with Google (via MX records set at the domain level).

    Email sent from other servers gets through fine, but when you send email from a domain also hosted on Server 1 to client@domain.com, Plesk returns an error message – such as “there’s no such mailbox”. Or mail is delivered, but it never reaches client@domain.com.

    What’s going on? And how do we fix this?

     

    The solution is simple: switch off the mail service in Plesk for this domain.

    What’s happening here is that two servers are volunteering to control mail requests, but only one server can be in charge. Otherwise mail requests will be processed in places they are not supposed to, and mail does not reach the correct destination.

     

    Screen Shot 2015-02-06 at 10.49.30

     

    Here’s why: when we send mail from Server 1 to client@domain.com, Plesk doesn’t look for external DNS records. It can see that mail is supposed to be hosted right here on Server 1 and tries its best to deliver it. That’s when the error is produced.

    It may get confusing if a mailbox with the same name exists on both servers, email is delivered but will likely never reach client’s inbox.

    Other servers look at the external MX records and bypass Server 1 completely, therefore mail is delivered as it’s supposed to be.

     

    How can we fix it, Cap’m?

    To force Plesk to check external MX records too, head over to the subscription’s control panel and

    • select the Mail tab
    • Mail Settings
    • tick the checkbox next to the domain in question
    • click Activate/Deactivate Services
    • and in the overlay window, select Disable
    • (and finally click OK to close the overlay window)

    Screen Shot 2015-02-06 at 10.59.39

    Now Plesk will no longer use its own MX records for mail requests and it will deliver mail as you would expect.

     
  • Jay Versluis 12:21 pm on February 4, 2015 Permalink | Reply
    Tags: , ,   

    Categories: Mac OS X ( 11 )

    How to enable the root user in Mac OS X (Mavericks and Yosemite) 

    root is the most powerful user in Linux and UNIX systems, from which OS X is derived. The root user can read, write and delete every file on the system and – when placed in the wrong hands – destroy the entire system in a flash. Even power users on a Mac have very little reason to use root – which is why it’s disabled by default.

    To enable it, head over to System Preferences – Users and Groups and select Login Options at the bottom left. If any of the following options are greyed out, simply click that little lock icon (and type in your computer password):

    Screen Shot 2015-02-03 at 11.07.04 PM

    Now select Network Account Server – Join… and another scary window appears. Thankfully we won’t have to worry about what it says:

    Screen Shot 2015-02-03 at 11.13.10 PM

    All we’re interested in is the standard menu bar at the top of the screen: select Edit – Enable Root User and hike it out of here. If ever you want to disable root, select Edit – Disable Root User (or change its password). Speaking of which, you’ll have to give the root user a password when prompted. Remember it.

    Now click the little Apple Icon at the top left and log yourself out.

    When your computer comes back you’ll be able to login as root, using the password you’ve specified. OS X will now start as if you’ve never setup your computer.

    Remember to disable the root user again for your own safety when you no longer need it.

     
  • Jay Versluis 12:57 pm on February 1, 2015 Permalink | Reply
    Tags:   

    Categories: Mac OS X ( 11 )

    How to reduce the Progress Bar in Yosemite 

    A new “improvement” in Yosemite is the progress bar that comes up when you start your machine. What you Mac does under the hood hasn’t really changed from Mavericks, but the progress bar implies that a long running operating is happening the background.

    It can look grey with a black background, or dark grey with a lighter grey background, depending on your hardware. It’s been familiar to us before only when firmware updates were applied, but now we get it even when the computer starts normally. It looks like this:

    Screen Shot 2015-02-01 at 12.30.55

    If this seemingly takes a long time, there may be an issue with your hard disk permissions. Upon start those errors are acknowledged under the hood, but they are not rectified. Here’s how we can do that:

    • open Disk Utility (Applications – Utilities)
    • select your main hard disk from the sidebar (something like MacintoshHD)
    • select Verify Disk Permissions

    Screen Shot 2015-01-31 at 9.50.00 PM

    This can take a moment and will flag up any problems there may be.

    Note that this is not related to your disk having a problem though: this is purely checking if the system folders have the correct read/write permissions. To check the integrity of your disk, choose Verify Disk instead (which in turn does not flag and file/folder permission issues).

    The Yosemite installer is prone to screw up permissions from an older installation, so if you find any errors, click on Repair Disk Permissions.

    Screen Shot 2015-01-31 at 9.52.38 PM

    When everything is repaired, your Mac should start up a bit faster, and that pesky progress bar should show up for a shorter period of time. Note that it will always show up and never quite go away though.

    Here’s a list of trouble I found with my system. I had a vanilla Mountain Lion system which I’ve upgraded to Yosemite 10.10.2:

    Verifying volume “Macintosh HD”Verifying file system.Using live mode.Performing live verification.Checking Journaled HFS Plus volume.Checking extents overflow file.Checking multi-linked files.Checking catalog hierarchy.Checking volume information.File system check exit code is 0.
    
    Verifying permissions for “Macintosh HD”Group differs on “Library/Printers”; should be 80; group is 0.Permissions differ on “Library/Printers”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Icons”; should be 80; group is 0.Permissions differ on “Library/Printers/Icons”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/InstalledPrinters.plist”; should be 80; group is 0.Permissions differ on “Library/Printers/InstalledPrinters.plist”; should be -rw-rw-rw- ; they are -rw-r--r-- .Permissions differ on “Library/Java”; should be drwxr-xr-x ; they are drwxrwxr-x .Group differs on “Library/Preferences/com.apple.alf.plist”; should be 80; group is 0.Group differs on “Library/Printers/Canon”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Frameworks”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Frameworks”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Plugins”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Plugins”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/CIJIcons”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/CIJIcons”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNCICA”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNCICA”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2413”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2413”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2414”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2414”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4807”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4807”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4808”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4808”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4809”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4809”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9601”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9601”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9602”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9602”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/PPDs”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/PPDs/Contents”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs/Contents”; should be drwxr-xr-x ; they are dr-xr-xr-x .Group differs on “Library/Printers/PPDs/Contents/Resources”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs/Contents/Resources”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/apple”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/backend”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/cgi-bin”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/daemon”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/driver”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/filter”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/monitor”; should be drwxr-xr-x ; they are dr-xr-xr-x .Permissions differ on “usr/libexec/cups/notifier”; should be drwxr-xr-x ; they are dr-xr-xr-x .User differs on “private/var/db/displaypolicyd”; should be 0; user is 244.Group differs on “private/var/db/displaypolicyd”; should be 0; group is 244.
    
    Permissions verification complete
    
    Repairing permissions for “Macintosh HD”Group differs on “Library/Printers”; should be 80; group is 0.Permissions differ on “Library/Printers”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers”Group differs on “Library/Printers/Icons”; should be 80; group is 0.Permissions differ on “Library/Printers/Icons”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Icons”Group differs on “Library/Printers/InstalledPrinters.plist”; should be 80; group is 0.Permissions differ on “Library/Printers/InstalledPrinters.plist”; should be -rw-rw-rw- ; they are -rw-r--r-- .Repaired “Library/Printers/InstalledPrinters.plist”Permissions differ on “Library/Java”; should be drwxr-xr-x ; they are drwxrwxr-x .Repaired “Library/Java”Group differs on “Library/Preferences/com.apple.alf.plist”; should be 80; group is 0.Repaired “Library/Preferences/com.apple.alf.plist”Group differs on “Library/Printers/Canon”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon”Group differs on “Library/Printers/Canon/IJScanner”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner”Group differs on “Library/Printers/Canon/IJScanner/Frameworks”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Frameworks”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Frameworks”Group differs on “Library/Printers/Canon/IJScanner/Plugins”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Plugins”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Plugins”Group differs on “Library/Printers/Canon/IJScanner/Resources”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources”Group differs on “Library/Printers/Canon/IJScanner/Resources/CIJIcons”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/CIJIcons”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/CIJIcons”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNCICA”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNCICA”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNCICA”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2413”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2413”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2413”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2414”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2414”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ2414”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4807”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4807”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4807”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4808”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4808”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4808”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4809”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4809”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ4809”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9601”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9601”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9601”Group differs on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9602”; should be 80; group is 0.Permissions differ on “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9602”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/Canon/IJScanner/Resources/Parameters/CNQ9602”Group differs on “Library/Printers/PPDs”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/PPDs”Group differs on “Library/Printers/PPDs/Contents”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs/Contents”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/PPDs/Contents”Group differs on “Library/Printers/PPDs/Contents/Resources”; should be 80; group is 0.Permissions differ on “Library/Printers/PPDs/Contents/Resources”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “Library/Printers/PPDs/Contents/Resources”Permissions differ on “usr/libexec/cups”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups”Permissions differ on “usr/libexec/cups/apple”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/apple”Permissions differ on “usr/libexec/cups/backend”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/backend”Permissions differ on “usr/libexec/cups/cgi-bin”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/cgi-bin”Permissions differ on “usr/libexec/cups/daemon”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/daemon”Permissions differ on “usr/libexec/cups/driver”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/driver”Permissions differ on “usr/libexec/cups/filter”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/filter”Permissions differ on “usr/libexec/cups/monitor”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/monitor”Permissions differ on “usr/libexec/cups/notifier”; should be drwxr-xr-x ; they are dr-xr-xr-x .Repaired “usr/libexec/cups/notifier”User differs on “private/var/db/displaypolicyd”; should be 0; user is 244.Group differs on “private/var/db/displaypolicyd”; should be 0; group is 244.Repaired “private/var/db/displaypolicyd”
    
    Permissions repair complete
    

    My Mac still takes forever to boot. What gives?

    I once selected an external hard disk to boot from (under System Preferences – Startup Disk). Sometime later I removed that disk and my Mac took 2 minutes to boot. It was looking for that missing disk and eventually gave up, booting into my internal hard disk.

    It took me a while to figure that one out ;-)

     
  • Jay Versluis 4:45 pm on January 31, 2015 Permalink | Reply
    Tags:   

    Categories: Mac OS X ( 11 )

    How to test the RAM in your Mac 

    Every Mac has an integrated hardware test called – not surprisingly – Apple Hardware Test. When you get a new device, or if you’ve recently upgraded your memory, it’s worth checking if everything is working as expected. Otherwise you may encounter weirdo bugs sometimes down the line.

    To start the test, simply shutdown your Mac, then reboot it, holding down the D key.

    First you’ll see a cute little retro icon, followed by a blue screen with three tabs, much like this one:

    IMG_8582.JPG

    On the Hardware Tests Tab you may only find one button and a tick box (as in my case), but different models may feature different tests. Either press that button to start the test, or check that tick box for a more extended test. This takes a little longer but will write test values to each memory location several times – the single test only does it once.

    Depending on the amount of RAM you have installed this can take between 30mins and 2 hours. At the end of the test you’ll either get the “all clear” or an error message – in which case there’s something wrong with your RAM.

    IMG_8583.JPG

     
  • Jay Versluis 12:32 pm on January 7, 2015 Permalink | Reply  
    Categories: WordPress ( 108 )

    How to allow additional file type uploads in WordPress 

    AppIcon76x76@2xYou can upload a lot with the WordPress Media Uploader, but depending on the file extension the system will not allow everything on your server by default – for security reasons. ZIP files and PDFs are fine, but something more obscure – particularly non-standard extensions or executable files – are not. I like it that way too!

    One way around this limitation is to simply ZIP up your obscure file and upload the archive – but that’s not always an option. Besides, you may need your file to be openable directly.

    In this article I’ll show you how to add additional file extensions to WordPress so that they can be uploaded with the Media Uploader.

    Screen Shot 2015-01-07 at 11.54.45

    Principle

    WordPress takes care of allowed file extensions in an array of MIME Types. Those are comprised of a type and a subtype (for example, text/html or image/jpeg). Here’s a list of MIME Types commonly in use:

    When in doubt about your file type, text/plain is a good starting point. In this example I’ll add the .brush file extension because I wanted to share some Procreate Brushes, and iPad visitors should be able to open them directly in Procreate when they hit my link.

    Adding File Types

    We’ll setup a function which adds our file extension to the existing array of mime types, then let WordPress call this function with a filter. Add this code to your theme’s functions.php file, or anywhere in your plugin:

    function allow_personal_uploads ( $existing_mimes=array() ) {
     
    // add your own extension here - as many as you like
    $existing_mimes['brush'] = 'text/plain'; 
     
    // return amended array
    return $existing_mimes;
    }
    
    // call our function when appropriate
    add_filter('upload_mimes', 'allow_personal_uploads');
    

    It’s always wise to prefix such functions with your own initials or known prefix (like prefix_allow_personal_uploads). This avoids potential duplicate functions and conflicts with WordPress and existing plugins.

    That’s it – .brush files are now allowed by the Media Uploader.

    Removing File Types

    With the same principle we can also disallow certain file types to be uploaded. For example, GIF files are allowed by default, but we can remove them if we wish:

    function disallow_personal_uploads ( $existing_mimes=array() ) {
     
    // remove GIF files
    unset ($existing_mimes['gif']); 
     
    // return amended array
    return $existing_mimes;
    }
    
    // call our function when appropriate
    add_filter('upload_mimes', 'disallow_personal_uploads');
    

    No more GIF uploads.

    Multisite Considerations

    To make your new file extensions available on Multisite Installations, you need to add those under Network Admin – Settings – Network Settings – Upload Settings. There’s a text box there with default values, just add yours at the end, separated from the rest with a space:

    Screen Shot 2015-01-07 at 12.29.42

    No need to remove any here, they simply won’t be allowed when users try to upload extensions you’ve forbidden by using the upload_mimes filter.

    Further Reading

     
  • Jay Versluis 4:58 pm on January 4, 2015 Permalink | Reply
    Tags:   

    Categories: Plesk ( 54 )

    How to recalculate statistics in Plesk 

    Plesk-LogoPlesk recalculates all usage statistics once every day as part of a daily maintenance script. Sometimes however you’ve made a change and would like to see statistics updated immediately rather than “sometime tomorrow”.

    The solution: run the statistics recalculations script manually.

    On CentOS the path to the file is /usr/local/psa/admin/sbin/statistics. When used on its own all statistics are recalculated on the spot.

    You can use the script with options too, for example to update a single domain only. Use the –help switch to see the full array of options:

    /usr/local/psa/admin/sbin/statistics --help
    
    Usage: /usr/local/psa/admin/sbin/statistics [ options ]
    
    --calculate-all               Calculate statistics for all domains
    --calculate-one               Calculate statistics for <domain-name>
    --domain-name|-d <string>     
    --calculate-list              Calculate statistics for listed domains
    --generate-all-webstat        Generate web-statistics pages for all domains
    --generate-domain-webstat     Generate web-statistics pages for <domain-name>
    --domain-names|-n <string>    List of domains, comma separated
    --domain-ids|-i <string>      List of domains IDs, comma separated
    --process-domains|-p <string> Calculate statistics for <domain-name>
    --all                         Calculate all aspects of statistics
    --antivirus                   Calculate antivirus and antispam statistics
    --no-webstat                  Do not generate web-statistics pages (always set for PPA mode or Windows)
    --help|-h                     display this help and exit
    
    If no options specified - calculate statistics for all domains
    

    Depending on the amount of domains you have this can take a minute or two. If you’re only interested in refreshing statistics for a single domain you can use this syntax:

    /usr/local/psa/admin/sbin/statistics --calculate-one -d yourdomain.com
    

    Have fun ;-)

     
  • Jay Versluis 3:34 pm on January 3, 2015 Permalink | Reply
    Tags: dovecot, , ,   

    Categories: Linux, Plesk ( 58 )

    How to install and secure Dovecot in Plesk 12 

    dovecotI’ve just installed the Dovecot Mail Service on one of my Plesk 12 servers. It’s an alternative to the old favourite Courier IMAP/POP and a new addition in Plesk 12.

    Dovecot does more or less the same as Courier (i.e. lets you receive mail), but it’s a bit more configurable and debug friendly. It also offers server-side mail filtering which is accessible via the Plesk Webmail services Roundcube and Horde.

    In this article I’ll show you how to install Dovecot in Plesk 12, and how to add your own SSL certificates for mail. In my previous article I’ve explained how to do this with the standard Courier Mail service.

     

    Installing Dovecot in Plesk 12

    Head over to

    • Tools and Settings (or the Server Tab)
    • under the Plesk heading
    • Updates and Upgrades

    Select Add or Remove Components and under Mail Hosting Features, find the option for Different IMAP/POP3 server:

    Screen Shot 2015-01-03 at 15.14.37

    You can only install either Courier or Dovecot. Switching will automatically uninstall the component you currently have and instead install the other one.

    Note that switching Courier for Dovecot will preserve all mailboxes and will not affect your outgoing mail services. Give Plesk a moment until your see the “installation has finished” message.

    You’re now running Dovecot!

     

    Patching Dovecot SSL Certificates

    As with Courier, Dovecot will use self-signed certificates for secure connections. This means that a nasty window is likely to pop up when clients connect. You can suppress this window by specifying your own SSL Certificates.

    Screen Shot 2015-01-03 at 15.12.08

     

    The default configuration file for Dovecot is in /etc/dovecot/dovecot.conf. However the file states that any changes you make here are wiped when an upgrade comes along. Instead, take a look at the /etc/dovecot/conf.d/ directory in which you’ll find three files by default:

    • 10-plesk-security.conf
    • 15-plesk-auth.conf
    • 90-plesk-sieve.conf

    You can add your own configuration snippets here, each beginning with a number and ending with .conf. The lower the number, the earlier your snippet is loaded. The higher the number, the later it is loaded. You get the picture.

    Let’s create /etc/dovecot/conf.d/5-ssl.conf for our purposes. Because I had already configured my certificates for Courier they are still in /usr/share/imapd.pem – but feel free to place your .pem files anywhere you like. Here’s what my file looks like:

    # SSL Certificates for Dovecot are defined here
    
    ssl = yes
    # Path to your Certificate, preferred permissions: root:root 0444
    ssl_cert = &lt;/usr/share/imapd.pem
    # Path to your Private Key, preferred permissions: root:root 0400
    ssl_key = &lt;/usr/share/imapd.pem
    

    Dovecot lets you have separate files for the certificate and the private key, something that’s not possible in Courier as far as I know. Dovecot is also happy to keep those in the same file though as in my example, and as in Courier. Easy going I say!

    For the changes to take effect we need to restart the Plesk Mail Service like so:

    /usr/local/psa/admin/sbin/mailmng --restart-service

    That’s it!

     

    How do I add a certificate for outgoing mail?

    Postfix (and QMail) deal with sending mail, Dovecot and Courier only deal with receiving it. I’ve described how to add SSL Certificates to Postfix in my article about Courer.

     

    Further Reading

     

     
    • prupert 2:32 pm on January 18, 2015 Permalink | Reply

      You may want to add the following directives for added security:

      Strong DH params

      ssl_dh_parameters_length = 2048

      Disable insecure SSL protocols

      ssl_protocols = !SSLv2 !SSLv3

      • Jay Versluis 3:35 pm on January 18, 2015 Permalink | Reply

        Thank you for the tip, prupert! Very much appreciated!

c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
shift + esc
cancel