# The &smb4k; Handbook

Alexander
Reinholdt

              alexander.reinholdt AT kdemail.net

2005-2026
Alexander Reinholdt
&underFDL;
2026-01-26
&smb4k; 4.0.6

&smb4k; is an advanced network neighborhood browser and &Samba; share mounting utility.

KDE
Smb4K
Samba

## Introduction

&smb4k; is an advanced network neighborhood browser and Samba share mounting utility. It provides many handy features that ease your life in a &Windows;-dominated network environment.

This handbook describes &smb4k; 4.0.6 and later. To some extent, it is also correct for earlier versions.

In 2025, several security vulnerabilities were found in the KAuth mount helper program (see the report by the SUSE Security Team) and were fixed in version 4.0.5. Since the feature set for mounts and unmounts has been restricted, these security improvements have a noticeable impact on the entire program.

&smb4k; has got the following features:

- Scanning for (active) workgroups, hosts, and shares using &Samba;'s client library, DNS Service Discovery (DNS-SD) and, optionally, Web Services Dynamic Discovery (WS-Discovery)

- Support of the &CIFS; and &SMB3; file system under &Linux; as well as the SMBFS file system under BSD

- Mounting and unmounting of shares

- Access to the files of a mounted share using a file manager or terminal

- Auto-detection of external mounts and unmounts

- Remounting of previously used shares on program start

- Various information about remote network items and mounted shares

- Network search

- Preview of the contents of a remote share

- Default login

- Special handling of home shares

- Ability to bookmark favorite shares

- System tray widget

- Support of selected mount options

- Support of printer shares

- Support of several secure storage solutions for the login credentials via QtKeychain

- Synchronization of a remote share with a local copy, and vice versa

- Ability to define custom settings for individual servers and shares

- Hardware support through the &solid; device integration framework, the &kdbusaddons; convenience classes and the &Qt; Network module

- Wake-On-LAN capabilities

- &plasmoid; for desktop integration

- Profiles for different network neighborhood setups

If you encounter problems while using &smb4k;, please post a help request to our Help forum. In case you find a bug, please report it to our bug tracker. For discussions about &smb4k;-related topics, there is the General Discussion forum, and we invite every user to participate.

## Using &smb4k;

### Running &smb4k;

You can either launch &smb4k; from the application launcher or from &krunner; by typing ``smb4k``. &smb4k; comes with a &plasmoid; for better desktop integration that can be added as a widget to the desktop or panel.

If &smb4k; encounters a problem on start-up or while running, the user will be notified. For the solution of some common problems see the Trouble Shooting section.

### The Main Window

On the first start-up, the main window of &smb4k; looks similar to the one shown below. The network neighborhood browser (Network Neighborhood) and the mounted shares view (Mounted Shares) are arranged in tabs. Above them the menu bar and tool bar are located, and below them there is the status bar.

Screenshot of the main window
The main window

The tool bar contains some of the main actions, like Configure &smb4k; and Quit. It also dynamically loads the actions of the dock widget that currently has the focus. For additional information, please take a look at the sections discussing the network neighborhood browser and mounted shares view, respectively.

The status bar provides some information about the current status of &smb4k;. If the application is processing a user request (&eg; mounting a share), a descriptive message is displayed in the leftmost section and a progress bar is shown with a busy indicator. The icon on the right side indicates whether shares are mounted.

If the dock widgets are arranged as tabs, the user gets additional visual feedback. Each time a share is mounted or unmounted, the Mounted Shares tab is highlighted for a few seconds.

The main window is highly configurable. You can hide or show all tabbed widgets via Settings Dock Widgets. They can also be dragged around with the mouse and docked to different areas in the main window. You can even detach them from the main window. The status bar and the tool bar can be hidden or shown by toggling the menu entry Settings Show Statusbar and Settings Show Toolbar, respectively.

### The Network Neighborhood Browser

The Network Neighborhood browser contains all network items — &ie; domains or workgroups, servers, and shares — &smb4k; was able to find. They are organized in a network tree, which you can navigate through by either clicking on the control next to the item's name or by executing the item itself.

In the network tree, the master browser in each workgroup or domain is highlighted by a blue font color, if it was detected (&eg; when using DNS-SD, the master browser of a &Windows; domain is not recognized). Mounted shares are marked with the respective folder icon and an italic font.

Screenshot of the network neighborhood browser
The network neighborhood browser

The selection of multiple network items is supported. So, it is possible to &eg; mount or preview several shares at once.

#### Browsing

&smb4k; automatically scans the network neighborhood for active workgroups and domains on start-up, and presents them in the network neighborhood browser. For this purpose it uses &Samba;'s client library, DNS Service Discovery (DNS-SD) and, optionally, Web Services Dynamic Discovery (WS-Discovery). The way &smb4k; browses the network neighborhood can be adjusted on the Network configuration page.

&smb4k; uses a traditional scan mode, where initially only workgroups and domains are looked up and scans are only made when necessary — &ie;, when you execute a network item. Due to the use of DNS-SD, you will most likely find a domain called LOCAL in the network neighborhood browser. This is the default local DNS domain used by services like Avahi and not an actual &Windows; domain. Opening a domain or workgroup item shows the servers belonging to it. If you want to access the shares of one of the servers, you need to open the desired server.

If you are using DNS Service Discovery and the Zeroconf daemon (Avahi) is not running, &smb4k; shows an error notification. For details see the Trouble Shooting section.

There is also the possibility to wake up sleeping servers prior to scanning the network neighborhood (Wake-On-LAN). If this feature is enabled, &smb4k; sends a magic packet to each server that is to be awakened, then waits the defined time until it starts to look up the workgroups and domains. The Wake-On-LAN setting can be turned on in the configuration dialog. The servers that should be awakened must be defined in the Custom Settings editor.

#### Searching

To search the network neighborhood for shares that contain a certain search item, execute the &Ctrl; F Search action (see also the Actions and Popup Menu section below). The search tool bar opens at the bottom of the network neighborhood browser.

Screenshot of the network neighborhood browser with visible search tool bar
The network neighborhood browser with visible search tool bar

Enter the search term in the line edit and press the &Enter; key, or click the Search button. &smb4k; starts to search the entire network neighborhood. When the search is finished, all shares matching the search term are highlighted (selected). If you would like to do something with all discovered shares (&eg; mount or preview), you can do so now. Otherwise, you can use the Up and Down buttons to jump to the individual search results. The Clear button can be used to clear the search. To close the search tool bar, press the Close button.

#### Actions and Popup Menu

Several actions are defined for the network neighborhood browser. They are present in the menu bar under Network, in the tool bar, and in the popup menu. The following actions are available:

F5 Scan Network|Workgroup|Computer

  Scan the whole network neighborhood, the highlighted workgroup/domain, or the computer for new entries. This action is visible by default and will be replaced by the Abort action if a network scan is running.

&Ctrl; A Abort

  Abort any running process of the network neighborhood browser. This action is invisible by default and will only be visible when a network scan is running.

&Ctrl; F Search

  Search the network neighborhood for a specified term. Activating this action opens the search tool bar, where you can enter the search term and start the search.

&Ctrl; B Add Bookmark

  Add a bookmark to the selected remote shares. This action is disabled if there are no shares selected.

&Ctrl; C Add Custom Settings

  Open the Custom Settings editor where you can set several custom settings for each selected server and share. If a workgroup or no item is selected, this menu entry is disabled.

&Ctrl; O Open Mount Dialog

  Open the dialog for mounting shares using their address (URL or UNC). This feature may be needed if &smb4k; cannot find the server from which you want to mount a certain shared resource.

&Ctrl; T Authentication

  Open the password dialog where you can provice the user name and password for each selected server and share. If a workgroup or no item is selected, this action is disabled.

&Ctrl; V Preview

  Preview the contents of the selected remote shares. This action is only enabled if shares are selected. Printer shares cannot be previewed.

&Ctrl; P Print File

  Print a file on a remote printer. This action is only available if at least one printer share is selected.

&Ctrl; M Mount

  Mount the selected remote shares. This action is visible by default as long as you do not select mounted shares (see below). If you select anything different than a share with type "Disk" or "IPC", this action is disabled.

&Ctrl; U Unmount

  Unmount the selected shares. System mounts, or shares that were mounted by other users cannot be unmounted. This action is invisible by default and will only be visible instead of the Mount action if at least one mounted share is selected.

In the network neighborhood browser you can right click to open the popup menu to access all available actions. Depending on the position where you clicked (on a network item or on the viewport), some of them may be disabled. The screenshot below shows the popup menu opened on a remote share.

Screenshot of the popup menu of the network neighborhood browser
The popup menu of the network neighborhood browser

#### Tooltips

For each network item, a tooltip is provided that contains various information like the name of the workgroup and master browser (if available), the name and IP address of the host, the name of the share, &etc;

The tooltips can be disabled in the configuration dialog.

#### Mounting Shares

There are three options available to mount a remote share:

1. Execute the icon representing the remote share in the network neighborhood browser. (Depending on your &kde; settings, this is done by either single or double clicking the icon.)

2. Select the remote shares and click the Mount menu entry. Alternatively, you can press the &Ctrl; M keyboard shortcut.

3. Click the &Ctrl; O Open Mount Dialog menu entry to open the mount dialog:

   Screenshot of the "Mount Share" dialog
   The "Mount Share" dialog

   Here you can enter the location of the share as a Uniform Naming Convention (UNC) address in the form

       //[USER@]SERVER/SHARE

   or

       \\[USER@]SERVER\SHARE

   or as an URL in the form

       [smb:]//[user@]server[:port]/share

   The OK button will be enabled and you can press it to mount the share. However, it is advisable to enter the IP address and the workgroup of the server, too. If you want to add the share to the bookmarks at the same time, click the Bookmark >> button. The dialog will extend, so that you can tick the Add this share to the bookmarks check box and enter a label and category for the bookmark. See the section Bookmarks for more details.

In this case a share is password protected, a password dialog will appear and you have to enter the correct user name (if not already present) and password. &smb4k; will proceed with mounting the share unless a wrong user name or password was entered. In that case, the authentication dialog will reappear. If the mount process was successful, you will be shown a notification and the share will appear in the Mounted Shares view. If mounting fails, a notification with the error message that was returned by mount.cifs 8 (&Linux;) or mount_smbfs 8 (BSD) will be displayed.

#### Printing Files on Remote Printers

To print a file on a remote printer, open the print dialog by clicking the printer icon or choosing the &Ctrl; P Print File menu item.

Screenshot of the print dialog
The print dialog

The Information section displays various information about the printer. Under File and Settings you must provide the path to the file you want to print and the desired number of copies. Press Print to start the print process.

&smb4k; currently supports PDF, Postscript, image, and text files. If you try to print a file with an unsupported mimetype, a notification with an error message will appear telling you the mimetype is not supported. In this case you should convert the file manually to Postscript or PDF and try again.

#### Previewing Shares

&smb4k; provides the ability to preview remote shares. If you click the &Ctrl; V Preview menu entry, the contents of the selected remote share will be opened in a preview dialog.

Screenshot of the preview dialog
The preview dialog

The preview dialog acts like a simple file manager. You can navigate through the contents of the remote share by clicking the folder icons in the list view. You can go one level up by using the Up button and reload the contents of the current folder by pressing the Reload button. The current location is displayed in the combo box on the right hand side. You can also access already visited folders with it.

By default, the preview dialog does not show hidden folders and files. You can change this behavior in the configuration dialog. File transfers and the like are not possible.

#### Providing Authentication Information

In case the server or share you want to access is password protected, a password dialog appears asking you for the user name and password. The same thing happens if you click the &Ctrl; T Authentication menu entry.

Screenshot of the authentication dialog
The authentication dialog

If a user name has already been provided, it will be shown in the respective field. If it is wrong, or no user name was provided, you have to enter one. The password, however, may be left blank. Clicking the OK button commits the data.

Please note that you can also define default login information in the configuration dialog.

#### Defining Custom Settings

For individual servers or shares you can define custom settings that deviate from the global settings. To do so, access the custom settings editor by clicking the &Ctrl; C Add Custom Settings menu item. See the section Custom Settings for more details.

#### Adding Bookmarks

A bookmark is added by selecting a remote share (only these can be bookmarked), and pressing the &Ctrl; B keyboard shortcut or selecting the Add Bookmark menu item. The bookmark will then be accessible through the Bookmarks menu. See the section Bookmarks for more details.

The bookmarks can be used to mount remote shares.

### The Mounted Shares View

In the shares view, you can interact with the shares mounted on your system.

#### Different Views

&smb4k; comes with two alternative views: an icon view and a list view. They are both shown below. The icon view is the default.

The icon view:

Screenshot of the shares icon view
The shares icon view

The list view:

Screenshot of the shares list view
The shares list view

You can switch between the two views by selecting the appropriate entry in the View Modes submenu of the tool bar, in the menu bar under Shares or in the shares view's popup menu.

By default, only your own mounts are displayed. However, you can adjust &smb4k; to show all mounts in the configuration dialog.

#### Actions and Popup Menu

In the shares view, several actions are defined. They are present in the menu bar under Shares, in the tool bar, and in the popup menu. The following actions are available:

View Modes

  Choose the view mode from the submenu.

  Icon View

    The shares are shown in an icon view.

  List View

    The shares are shown in a list view.

&Ctrl; U Unmount

  Unmount the selected shares. This action is restricted to the shares you mounted, though. So, system mounts or shares that belong to other users cannot be unmounted. If no share is selected in the shares view, this button is disabled.

  Read the Unmounting Shares section for more details.

&Ctrl; N Unmount All

  Unmount all your shares at once. System mounts or shares that belong to other users cannot be unmounted with this action. If you have not mounted any shares, this button is disabled.

  Read the Unmounting Shares section for more details.

&Ctrl; B Add Bookmark

  Add bookmarks to the selected shares. This action is disabled if no share is selected.

  Read the Adding Bookmarks section for more details.

&Ctrl; C Add Custom Settings

  Open the custom settings editor for the selected shares.

  Read the Custom Settings section for more details.

&Ctrl; Y Synchronize

  Synchronize a share with a local copy or vice versa. This action is only enabled if the program rsync 1 is installed and a share is selected.

&Ctrl; L Open with Konsole

  Open the base folder of a share in &konsole;. This action is useful if you need to run shell scripts, &etc;

&Ctrl; I Open with File Manager

  Open the contents of a share in the default file manager.

The popup menu includes all the actions that can be performed on a mounted share:

Screenshot of the popup menu of the shares view
The popup menu of the shares view

It can be opened by clicking the &RMB;.

#### Tooltips

The tooltips provide information about the remote location of the share, the mountpoint, the user and group, the login, the file system, the disk usage, and the free disk space. If the share is inaccessible, these values are marked as unknown.

Tooltips are enabled by default. You can deactivate them in the configuration dialog.

#### Inaccessible Shares

&smb4k; periodically checks all mounted shares if they are still accessible. If an inaccessible share is encountered, it will be marked with a lock symbol and you will not be able to open or synchronize it anymore. Unmounting and adding a bookmark is still possible.

The program might freeze for a short period of time due to an inaccessible share. It will recover afterwards.

#### Shares Owned by Other Users

Shares owned by other users are only shown if you adjusted the settings to display them. You are not allowed to unmount these shares.

#### Icons

A mounted share is indicated by a small, corresponding symbol in the lower corner of the folder icon. This changes to a lock for shares that are not accessible. For shares that belong to another user, it is replaced by a warning sign.

#### Drag-and-Drop

&smb4k; supports drag-and-drop in the shares view. To transfer or link data to a share, drag the files and/or folders over the share icon and drop them there. A popup menu will open asking you what to do. Choose the appropriate action (copy, move or link).

Screenshot of the shares view after the user dropped a file
A popup menu opened after the user dropped a file onto a share

To avoid the popup menu, press the &Shift; key for moving, the &Ctrl; key for copying and the &Ctrl;&Shift; key combination for linking while dragging and dropping. The transfer will only be successful if the share was mounted with read and write permissions.

You can also drag and drop the whole share to the desktop or to another application (&eg; &dolphin;). Again, a popup menu will open asking you, what to do. When choosing the appropriate operation, please remember that under most circumstances moving and linking the share might not be a good idea.

#### Unmounting Shares

You can unmount either a selection of your shares by using the &Ctrl; U Unmount action or all of them with the &Ctrl; N Unmount All action.

Please note that you can only umount the shares you mounted. System shares or shares that were mounted by other users cannot be unmounted.

&smb4k; provides the ability to force unmounting of shares (&Linux; only). This can be useful with inaccessible shares that cannot be unmounted the normal way. To enable this feature, you need to modify the settings in the configuration dialog. &smb4k; will then perform a lazy unmount on inaccessible shares.

After a successful unmount process, the user is notified. If unmounting fails, a notification with the returned error message is shown.

#### Defining Custom Settings

For selected shares, custom settings can be defined. Click the &Ctrl; C Add Custom Settings action to open the Custom Settings dialog. Read the Custom Settings section for more details.

#### Synchronization

The &Ctrl;Y Synchronize action opens the synchronization dialog. It offers the mount point of the share as the source and a path below the synchronization prefix as the destination. To update the data on the share, you can swap the destination with the source by clicking the Swap Paths button.

Screenshot of the synchronization input dialog
&URL; requester for sync'ing

Clicking the Synchronize button starts the synchronization and a progress dialog is shown that shows details about the transfer.

Screenshot of the synchronization progress dialog
Progress dialog

The synchronization can be canceled at any time by pressing the stop button to the right of the progress bar.

#### Opening a Share

&smb4k; provides two possibilities to open a mounted share:

- ##### Open a share with &konsole;

  You can open the mounted share in &konsole; by selecting the &Ctrl;L Open with Konsole action. This is useful if you need to run a shell script on the share or do something similar.

- ##### Open a share with the default file manager

  You can open the share in the default file manager (&eg; &dolphin;) by clicking the share icon or by selecting the &Ctrl;I Open with File Manager action.

If a share is marked as inaccessible, it cannot be opened.

### The System Tray Widget

#### Location and Usage

When &smb4k; is started, a status icon appears in the system tray. Its status is set to active if either workgroups or domains were discovered in your network neighborhood or remote shares were mounted. Otherwise it is set to inactive.

Screenshot of the system tray widget
System tray widget

You can minimize or restore the main window by left clicking the status icon. A right click brings up a popup menu that contains several items allowing you to work with the mounted shares, manage or mount your bookmarks, select the profile you want to use, and configure &smb4k; without opening the main window.

#### Menus and Menu Items

The Mounted Shares menu lists all mounted shares and some actions that can be performed on them.

Screenshot of the Mounted Shares popup menu of the system tray widget
System tray widget's Mounted Shares menu

Unmount All

  Unmount all your shares at once. System mounts or shares that belong to other users cannot be unmounted with this action. If you have not mounted any shares, this button is disabled.

For each mounted share you can open a submenu that contains the following entries. Read the shares view's Actions and Popup Menu section for further information.

Unmount

  Unmount the share. This action is disabled for shares that do not belong to you.

Add Bookmark

  Add the selected share to the bookmarks.

Add Custom Settings

  Open the custom settings editor for the selected share.

  For further information read the section about Custom Settings.

Synchronize

  Synchronize the mounted share with a local copy or vice versa.

  For further information read the section about Synchronization.

Open with &konsole;

  Open the base folder of the share in &konsole;.

Open with File Manager

  Open the contents of the share in the default file manager (&eg; &dolphin;).

The Bookmarks menu contains all your bookmarks. Read the Bookmarks section for further information.

Screenshot of the Bookmarks menu of the system tray widget
System tray widget's Bookmarks menu

Its layout is as described here, except that the Add Bookmark menu item is not present.

In the Profiles menu, all your profiles are listed.

Screenshot of the Profiles menu of the system tray widget
System tray widget's Profiles menu

You can activate a profile by clicking it. The profiles can be managed in the configuration dialog.

These are the four additional menu entries:

Open Mount Dialog

  Open the mount dialog.

Configure &smb4k;...

  Open the configuration dialog. See the section about the configuration for a full list of available settings.

Minimize | Restore

  Hide (minimize) or show (restore) the main window. The text shown depends on the state of the main window.

&Ctrl; Q Quit

  Quit the application.

### The &plasmoid;

&smb4k; comes with a &plasmoid; that can be added as a widget to the desktop or the panel. It consists of five tabs: Network Neighborhood, Mounted Shares, Bookmarks, Profiles, and Configuration.

Screenshot of the plasmoid on the desktop
Screenshot of the plasmoid

#### Network Neighborhood Tab

On the Network Neighborhood page the network items are arranged in a list view:

Screenshot of the plasmoid's network neighborhood tab
Bookmarks tab of the plasmoid

By clicking an entry you either enter the level below (&eg; clicking a workgroup or domain item will show a list of all hosts belonging to it), mount the selected share, or invoke the print dialog. To go one level up, you need to click the Up button in the tool bar.

For hosts and shares, there are some action buttons to the right of the network item's name. For hosts, there is one button with which you can open the Custom Settings editor. For shares, there are additional buttons for previewing the content of the selected share and for adding the share to the bookmarks. The action buttons are transparent by default and change to opaque when you move the mouse over them. By left clicking, you initiate the chosen action.

Besides the Up button, the tool bar contains three more entries: Rescan, Abort and Mount Dialog. With these you can do a rescan, abort any running action, or open the mount dialog.

#### Mounted Shares Tab

On the Mounted Shares page all mounted shares are listed:

Screenshot of the plasmoid's mounted shares tab
Bookmarks tab of the plasmoid

At the right side of each entry, three action buttons are arranged. The first is for adding a bookmark, the second is for synchronization, and the third is for unmounting the share. The action buttons are transparent by default and change to opaque when you move your mouse over them. By left clicking you initiate the selected action.

The tool bar contains the Unmount All action that lets you unmount all your shares at once.

#### Bookmarks Tab

The bookmarks are listed on the Bookmarks page.

Screenshot of the plasmoid's bookmarks tab
Bookmarks tab of the plasmoid

Bookmarked shares can be mounted by left clicking the respective bookmark. To edit or remove the bookmarks, press the Edit action button in the tool bar to open the Bookmark Editor. To get back to the top level from a category folder, use the Back button.

#### Profiles Tab

All defined profiles are listed on the Profiles page. The currently active profile is marked with an appended (active) label.

Screenshot of the plasmoid's profiles tab
Profiles tab of the plasmoid

You can activate a certain profile by clicking it. All profiles can be managed via the configuration dialog.

#### Configuration Tab

To configure the behavior of &smb4k;, you can launch the configuration dialog on the Configuration page.

Screenshot of the plasmoid's configuration tab
Configuration tab of the plasmoid

You should not open two configuration dialogs (through the main application and via the &plasmoid;) at the same time, because they might interfere with each other.

### Bookmarks

#### Adding Bookmarks

You can add bookmarks to your favorite shares from within the network neighborhood browser, the shares view and the &plasmoid;. In the main window, this is done by selecting one or more shares and clicking the Add Bookmark action. In the &plasmoid;, you click the respective bookmark action next to the item's name. The Bookmark Shares dialog will pop up, listing all shares that are to be newly bookmarked.

Screenshot of the bookmarks addition dialog
Bookmarks addition dialog

To add a label or assign a category, double-click a bookmark. The input widget will open and you can edit the corresponding entries.

Screenshot of the bookmarks addition dialog with opened input widget
Bookmarks addition dialog with opened input widget

Defining categories may help you organize the bookmarks. In the bookmark menu, all bookmarks belonging to the same category are arranged in a respective submenu.

The label can be any text describing the share. In case you define a label, it will be displayed in the bookmarks menu instead of the location by default. If you want to change this behavior, you can do so in the configuration dialog.

#### Accessing and Managing Bookmarks

In the main window, the bookmarks can be accessed and managed through the Bookmarks menu.

Screenshot of the bookmark popup menu
Bookmark popup menu

There are two static items in the menu:

Edit Bookmarks

  Opens the bookmark editor. This entry is disabled if there are no bookmarks.

&Ctrl; B Add Bookmark

  Adds bookmarks to the selected shares. At least one share must be selected to enable this entry.

If there are bookmarks present that are not assigned to a category, and are, thus, shown directly at the top level of the menu, a third item is present:

Mount Bookmarks

  Mount all top level bookmarks at once. This entry is disabled if all bookmarked shares are already mounted.

The following entries are category submenus and bookmarks that do not belong to any category. The entries are listed alphabetically and the bookmarks may appear either with their location or a descriptive label. If you click a bookmark, the respective share will be mounted. In case a bookmarked share is already mounted, the entry is disabled.

The category submenus contain the assigned bookmarks as well as a Mount Bookmarks menu item. It can be used to mount all bookmarks in that category at once.

In the system tray widget, there is a similar Bookmarks submenu which, however, does not come with the Add Bookmark entry.

The &plasmoid; provides a Bookmarks tab where all bookmarks are arranged in a similar manner as in the bookmark menu. For further details read this section.

#### Editing Bookmarks

The bookmarks may be edited or removed via the bookmark editor or the Bookmarks page in the configuration dialog. The bookmark editor can be opened by clicking the Edit Bookmarks entry in the Bookmarks menu or the Edit action in the Bookmarks tab of the &plasmoid;.

Screenshot of the bookmark editor
Bookmark editor

In the tree view, the bookmarks are arranged according to the categories they belong to. Bookmarks without a category are located at the top level. To rearrange bookmarks, the tree view offers drag and drop capabilities, so you can move bookmarks around with the mouse.

If you want to edit a bookmark, you can do so by either double-clicking or selecting it and pressing the Editbutton. The input widget will then be shown. Here you can edit the label, category name, login, workgroup or domain name and the IP address.

Screenshot of the bookmark editor with opened input widget
Bookmark editor with opened input widget

In most cases, you do not need to touch the IP address and the login, because &smb4k; stores the correct values at the time you bookmark the share. However, if the server got a different IP address (&eg; because DHCP is used on your local network), or your login changed, these entries should be adjusted. You also should adjust the workgroup or domain name, if its name was discovered by DNS-SD (and is most likely called LOCAL). With the label you can give each bookmark a custom description. It will be used for display instead of the location, but this can be changed in the configuration dialog. Finally,the category entry helps you to organize your bookmarks. For instance, if you use your notebook at home and also at work, and you do not want to use profiles, it might be a good idea to create two categories, "Home" and "Work", and categorize the bookmarks accordingly.

With the Add Category button, you can add a category. The Remove button removes the selected bookmark and the Clear List button clears the whole list of bookmarks. As long as you have not saved the changes by clicking the Save button, you can reset all your changes with the Reset button.

### Custom Settings

#### Using Custom Settings

Besides the global settings that can be defined in the configuration dialog, &smb4k; offers the possibility to configure individual settings per server or share. You can make use of these custom settings if you want to

- define individual browse or mount settings for a single server or share that deviate from the values defined in the configuration dialog,

- define a server that should be awakened prior to network scans or mount attempts (Wake-On-LAN feature, see here),

- always mount a particular share on start-up or when the corresponding profile is loaded.

#### Adding Custom Settings

To define custom settings, in both, the network neighborhood browser and the shares view, you can open the editor for the custom settings by clicking the &Ctrl; C Add Custom Settings menu entry.

Screenshot of the custom settings editor for a share
The custom settings editor

Custom settings that you defined for a server will also be applied to its shares.

The following settings can be made:

Basic Settings

  You can set the IP address and the workgroup or domain of the server here. If you selected a share, you can also check the Always remount this share button to remount it every time you start &smb4k; or load the respective profile.

Common Mount Settings (&Linux; only)

  You can define common settings related to mounting here. For detailed information about these settings have a look at this section.

Advanced Mount Settings (&Linux; only)

  You can define advanced settings related to mounting here. For detailed information about these settings have a look at this section.

Mount Settings (BSD only)

  You can define settings related to mounting here. For detailed information about these settings have a look at this section.

Browse Settings

  You can define the minimal and maximal SMB protocol versions as well as the SMB port to be used. In addition, you can decide if Kerberos should be used for authentication. For detailed information about these settings have a look at this section.

Wake-On-LAN Settings

  To make the Wake-On-LAN feature work, you must provide the MAC address of the server you selected. Currently, &smb4k; has no way to determine the MAC address, so you need to find it on your own. Afterwards, you can define if the server should be woken up by sending a magic Wake-On-LAN packet before the network neighborhood is scanned and/or one of its shares is mounted.

  Please note that you need to enable the Wake-On-LAN capabilities in the configuration dialog to take advantage of these settings.

With the Defaults button you can reset all settings in the editor to their default values as they are defined in the configuration dialog. Custom settings that only contain default values are removed. Using the Reset button, you can reset the entries in the dialog to their initial values. Clicking the Save button saves the custom settings and closes the dialog.

Please note that under BSD the dialog contains fewer entries than if you run &Linux;, because several of the options are not supported.

#### Editing Custom Settings

You can edit or reset the settings of individual network items by opening the custom settings editor. A complete overview of all custom settings provides the Custom Settings configuration page, where you also can edit or remove the desired settings.

### Profiles

&smb4k; offers the option to use different profiles. They are intended to facilitate handling of different network neighborhoods, &eg;, if you are using your laptop at home and also at work.

By default, the use of profiles is disabled. Most users won't have to change this, because the default behavior satisfies their needs completely. However, for some users this feature might be useful.

#### Enabling and Managing Profiles

The use of different profiles can be enabled in the configuration dialog by ticking the Use profiles checkbox. The initial active profile is then set and indicated by the tick mark next to it in the list view. The name of the active profile is also shown in parentheses in the title of the Authentication, Bookmarks and Custom Settings configuration pages.

Screenshot of the title section of the Authentication configuration page with indicated profile
Screenshot of the title section of the Authentication configuration page with indicated profile

There are two pre-defined profiles, Home and Work, but you can have as many profiles as you want. A new profile is added by entering its name into the input line and then clicking the Add button.

Screenshot of the Profiles configuration page (add profile)
Profiles configuration page (add profile)

To set the active profile, either double click the profile name or mark the profile name and click the Set Active button. To rename a profile, select it, click Rename and edit the name in the list view. All custom settings, bookmarks and default login credentials will be migrated seamlessly to the new name. To remove a profile, select it and click Remove. You may also change the order of the profiles with the Move Up and Move Down buttons.

#### Activating a Profile

The active profile can either be changed in the configuration dialog as mentioned above, or in the Profiles menu of the main window or system tray widget, or on the Profiles page of the plasmoid.

When a profile is activated, these things happen:

- All currently mounted shares are unmounted and scheduled for remount.

- All shares that were previously mounted under the newly activated profile are remounted.

- The default login credentials (if defined), bookmarks and custom settings from the new profile are loaded.

So, don't be surprised when things change after you select a different profile ...

### Notifications

#### Default Behavior

Normal events like mounting and unmounting of a share as well as warnings and errors are reported to the user via system notifications. By default, when the user is notified about a normal event, a notification pops up silently. With warnings and errors a sound is also played. The screenshot below shows the notification that pops up after a share has been mounted.

Screenshot of the notification after mounting a share
Notification after mounting a share

The default behavior of each notification can be changed via the &systemsettings;.

#### Managing Notifications

Notifications can be managed via the &systemsettings;. To modify the behavior of a notification, navigate to the Notifications page. In the section Application-specific settings click the Configure button and choose &smb4k; from the list that appears. The following dialog is opened:

Screenshot of the systemsettings notification module
Systemsettings notification module

All notifications can be edited here according to your preferences.

### Trouble Shooting

#### Missing Programs

If the system is missing some of the programs &smb4k; needs to operate properly, it notifies the user:

Screenshot of the missing program notification
The missing program notification

In this case, please install the specified program or, if it is already present, add its location to the `PATH` environment variable in your shell's configuration file (for the bash 1 shell it is the `~/.bashrc` file).

#### Zeroconf Error

&smb4k; uses the Zeroconf service (Avahi) to look up servers and shares in the network neighborhood using DNS Service Discovery (DNS-SD). For this to work, the Avahi daemon must be enabled and running on your system. If this is not the case, &smb4k; shows an error message:

Screenshot of the Zeroconf error notification
The Zeroconf error notification

In most cases, the Avahi daemon is not running when an error is reported. Under those &Linux; distributions that use systemd you can start it by running the following or a similar command from the terminal:

    $ sudo systemctl enable --now avahi-daemon

With all other &Linux; distributions and under BSD refer to the specific documentation how to start the Avahi daemon.

#### Denied Privilege Escalation

In case the mount and unmount actions fail (most likely with an AuthorizationDeniedError message), your polkit-1 setup might need to be adjusted: Add a file, &eg; named `10-mounthelper.rules`, to the `$PREFIX/etc/polkit-1/rules.d/` directory with the following content:

    polkit.addRule(function(action, subject) {
            if (action.id == "org.kde.smb4k.mounthelper.mount" &&
                subject.isInGroup("wheel")) {
                    return polkit.Result.YES;
            }
    });

    polkit.addRule(function(action, subject) {
            if (action.id == "org.kde.smb4k.mounthelper.unmount" &&
                subject.isInGroup("wheel")) {
                    return polkit.Result.YES;
            }
    });

This allows all users in the Unix group wheel to execute the mount and unmount actions. You may adjust the group of authorized users to any group you prefer to use (&eg; sudo or operator).

#### Mounting Problems Under BSD

If mounting of shares from either a &Samba; or a &Windows; server fails, this might be because mount_smbfs 8 only uses NTLMv1 authentication and requires the SMB 1.0/&CIFS; protocol, and the server does not support those. To fix mounting for a &Samba; server, you can add the following entries to the [global] section of the `smb.conf` 5 file of the server:

    [global]
    ...
    ntlm auth = yes
    server min protocol = NT1
    ...

If you want to fix this issue for a &Windows; server, please contact the sysadmin and tell her or him that NTLMv1 authentication and the SMB 1.0/&CIFS; protocol should be switched on (if possible).

It is not advisable to enable the SMB 1.0/&CIFS; protocol on a server, because it is considered insecure (see &eg; here) and was thus disabled in newer &Samba; and &Windows; versions (see &eg; here and here).

#### Other Desktop Environments Than &plasma;

When using a different desktop environment than &plasma;, &Qt; and &kde-frameworks; applications might be missing some icons. In that case, you might want to install the qt6ct (download) application. To use it with your desktop environment, add the following to your `~/.xinitrc` or `~/.profile` file:

X11:

    export QT_QPA_PLATFORMTHEME=qt6ct

Wayland:

    export QT_QPA_PLATFORM=wayland
    export QT_QPA_PLATFORMTHEME=qt6ct

## Configuring &smb4k;

This section describes the settings that can be used to configure &smb4k;. To open the configuration dialog, you must click the Configure &smb4k;... menu item.

### User Interface

You can change the appearance and behavior of several dialogs and widgets with the options located here. Please note that if you want to change the appearance of the main window, additional options are available under Settings in the menu bar.

Screenshot of the "User Interface" configuration tab
The "Appearance" configuration tab

#### Main Window

Tab orientation

  Define the location of the tabs if the dock widgets in the main window are arranged as tabs. The following values can be chosen:

  Top

    The tabs are located at the top.

  Bottom

    The tabs are located at the bottom.

  Left

    The tabs are located on the left side.

  Right

    The tabs are located on the right side.

  Default: Bottom

Show custom bookmark label if available

  The custom description (label) of the bookmark is shown. It can be defined in the bookmark editor.

  Default: selected

#### Network Neighborhood

Icon size

  Set the icon size in the network neighborhood browser. The size can be adjusted in steps of 16 pixels from 16 x 16 pixels to 128 x 128 pixels.

  Default: small icon size

Automatically expand domains and hosts

  Automatically expand domain and host items when a list of associated network items (domain members or shares) is added or updated. Please note that a domain or host item will always be expanded when you execute it.

  Default: selected

Show the type of the share

  The type of the shares is shown (i. e. Disk, Printer, or IPC).

  Default: selected

Show the IP address of the server

  The IP address of the remote servers is shown.

  Default: selected

Show the comment

  The comment of a remote server or share is shown.

  Default: selected

Show tooltips for network items

  A tooltip will be shown when you move the mouse pointer over an item in the network neighborhood browser. It contains information about the network item such as the workgroup or domain name, host name, comment, type, &etc;

  Default: selected

#### Shares View

View mode

  Define the view mode of the shares view.

  The following modes are defined:

  Icon View

    The icon view mode

  List View

    The list view mode

  Default: Icon View

Icon size for the icon view

  Set the icon size in the icon view of the shares view. The size can be adjusted in steps of 16 pixels from 16 x 16 pixels to 128 x 128 pixels.

  Default: desktop icon size

Icon size for the list view

  Set the icon size in the list view of the shares view. The size can be adjusted in steps of 16 pixels from 16 x 16 pixels to 128 x 128 pixels.

  Default: small icon size

Show tooltips for mounted shares

  A tooltip will be shown when you move the mouse pointer over an item in the shares view. It contains information about the mounted share such as the share name, UNC address, mount point, owner and group, login (&CIFS; file system, &Linux; only), disk usage, &etc;

  Default: selected

### Network

The settings located here influence the network communication. You can modify the browse settings and behavior in the Basic Settings tab and the more advanced options for Samba and the Wake-On-LAN capabilities in the Advanced Settings tab.

Screenshot of the "Network" configuration tab
The "Network" configuration tab

#### Basic Settings

##### Browse Settings

Use Web Services Dynamic Discovery (WS-Discovery) for browsing

  The Web Services Dynamic Discovery (WS-Discovery) protocol is used to browse the local network and discover workgroups, domains and hosts. This is useful if your network neighborhood is dominated by servers with modern &Windows; versions.

  This setting is optional, and only appears if you compiled &smb4k; with WS-Discovery support.

  Default: selected

Use DNS Service Discovery (DNS-SD) for browsing

  The DNS Service Discovery (DNS-SD) interface is used to browse the local network and discover servers that provide shared SMB resources. The discovered domains correspond to the local DNS domains (&eg; named LOCAL) and most likely not the ones defined in the network neighborhood. However, this does not influence the browsing.

  Default: selected

Set minimal and maximal SMB protocol version

  Set the minimal and maximal SMB protocol version that is used by &Samba;'s client library to browse the network neighborhood. This will override the settings in the smb.conf file. Normally, you do not need to use this option, because the right protocol versions should be negotiated between the client and the server while establishing a connection. Please note that this setting might not be appropriate to make the discovery of workgroups and domains work while keeping undisturbed connectivity to servers. Use DNS Service Discovery (DNS-SD) or Web Services Dynamic Discovery (WS-Discovery) for domain and workgroup lookups instead.

  The settings below for the minimal and maximal SMB protocol version are enabled by checking this checkbox.

  The maximal SMB protocol version must be equal to or greater than the minimal SMB protocol version.

  Default: not selected

  Minimal SMB protocol version:

    The following protocol versions can be set:

    NT1 (Classic CIFS/SMBv1 protocol)

      This is the classic version of the protocol. It is used by &Windows; NT and is known as CIFS or SMBv1. It is considered to be unsafe and was disabled in the latest &Samba; and &Windows; versions.

    SMB2 (Windows Vista and above)

      This is the re-implementation of the SMB protocol. It is used by &Windows; Vista and above.

    SMB3 (Windows 8 and above)

      This is the SMBv3 protocol version. It features several improvements of the functionality and performance of SMBv2 as well as several security enhancements. This protocol version is used by &Windows; 8 and above.

    Default: SMB2 (Windows Vista and above)

  Maximal SMB protocol version:

    The following protocol versions can be set:

    NT1 (Classic CIFS/SMBv1 protocol)

      This is the classic version of the protocol. It is used by &Windows; NT and is known as CIFS or SMBv1. It is considered to be unsafe and was disabled in the latest &Samba; and &Windows; versions.

    SMB2 (Windows Vista and above)

      This is the re-implementation of the SMB protocol. It is used by &Windows; Vista and above.

    SMB3 (Windows 8 and above)

      This is the SMBv3 protocol version. It features serveral improvements of the functionality and performance of SMBv2 as well as serveral security enhancements. This protocol version is used by &Windows; 8 and above.

    Default: SMB3 (Windows 8 and above)

##### Behavior

Detect printer shares

  Printer shares are detected.

  Default: selected

Detect hidden shares

  Hidden shares are detected. Hidden shares are ending with a $ sign, &eg; Musik$ or IPC$.

  Default: selected

Preview hidden files and directories

  Show all files and directories including the hidden ones when opening a share's contents in the preview dialog.

  Default: not selected

#### Advanced Settings

##### Samba

Set the SMB port to

  Enabling this setting sets the remote SMB port number to communicate with a remote host to the value defined in the spin box. Under BSD, this is also the port that is used for mounting.

  Unless you are using a firewall or have a customized network setup, you do not need to change anything here.

  Default: 139

Set the encryption level to

  Set the level of encryption that is used to make connections. The following settings can be chosen:

  None

    Encryption is not used.

  Request

    Encryption is requested.

  Require

    Encryption is required.

  Default: None

This computer is on a large network neighborhood

  In the default configuration, all available master browsers are queried when the browse list is compiled. On large network neighborhoods this can be very time consuming. Enabling this setting restricts the query to three master browsers.

  Default: not selected

Master browsers require authentication

  If the workgroup master browsers require authentication to return the browse list, you need to check this button. This may be the case for example with some NAS devices. This setting is rarely needed and might even cause a master browser to return an empty browse list.

  Default: not selected

Use Kerberos for authentication

  Use Kerberos for authentication in an Active Directory environment.

  Default: not selected

Use Winbind ccache for authentication

  Try to use the credentials cached by Winbind.

  Default: not selected

##### Wake-On-LAN

To be able to use the Wake-On-LAN capability of &smb4k;, you have to enable this setting. The hosts that should to be woken up have to be defined through the custom settings editor.

Enable Wake-On-LAN features

  Enable Wake-on-LAN (WOL) features. Wake-On-LAN is an ethernet computer networking standard that allows a computer to be turned on or woken up by a network message. Smb4K uses a magic packet send via a UDP socket to wake up remote servers. If you want to take advantage of the Wake-On-LAN feature, you need to enable this option.

  Default: not selected

  Waiting time

    This is the waiting time in seconds between the sending of the magic Wake-On-LAN packets and the scanning of the network neighborhood or the mounting of a share.

    Default: 5 s

### Mounting

This configuration page contains all settings regarding the mounting of shares. The settings appearing here are depending on the operation system you are using.

Screenshot of the "Mounting" configuration page
The "Mounting" configuration page

#### Basic Settings

The settings in this tab are the same for all supported operating systems.

##### Behavior

Remount shares

  Remount all your shares that were mounted when you exited the program or changed a profile. If the remounting of a share fails, Smb4K will retry the next time it is started. Shares that were mounted by other users are ignored.

  Default: not selected

  Number of remount attempts

    Set the number of attempts that are made to remount shares before Smb4K gives up.

    Default: 1

  Interval between remount attempts

    Set the time that elapses between attempts to remount shares.

    Default: 5 min

Unmount all personal shares on exit

  Unmount all shares that belong to you when the program exits. Shares that are owned by other users are ignored.

  Default: not selected

Force unmounting of inaccessible shares

  Force unmounting of inaccessible shares (&Linux; only). In case a share is inaccessible, a lazy unmount is performed. Before the actual unmounting is done, a warning dialog is shown asking to approve the unmount.

  Default: not selected

Detect all shares that are mounted on the system

  You will not only see the shares that were mounted and are owned by you, but also all other mounts using the SMBFS (BSD) and &CIFS; (&Linux;) file system that are present on the system.

  Default: not selected

#### Common Mount Settings (&Linux; only)

The Common Mount Settings tab is only available under &Linux; and the listed options refer to the mount.cifs 8 / mount.smb3 8 command. The settings present under BSD can be found in the Mount Settings (BSD only) section.

##### Common Options

Write access

  The write access to a share can be determined here. This option is independent of the file mask and the folder mask settings above. Available options are:

  read-write

    Option: `rw`

    Mount the share read-write.

  read-only

    Option: `ro`

    Mount the share read-only.

  Default: not selected; read-write

Client character set

  Option: `iocharset=CHARSET`

  Sets the character set used by the client side (&ie; your computer) to one of the following:

  default

    Default character set used by the client's kernel. In this case the `iocharset` option is omitted from the command line.

  iso8859-1

    ISO/IEC 8859-1:1998. This character-encoding scheme is used throughout the Americas, Western Europe, Oceania, and much of Africa.

  iso8859-2

    ISO/IEC 8859-2:1999. It is informally referred to as "Latin-2". It is generally intended for Central or "Eastern European" languages that are written in the Latin script.

  iso8859-3

    ISO/IEC 8859-3:1999. It is informally referred to as Latin-3 or South European. It was designed to cover Turkish, Maltese and Esperanto, though the introduction of ISO/IEC 8859-9 superseded it for Turkish.

  iso8859-4

    ISO/IEC 8859-4:1998. It is informally referred to as Latin-4 or North European. It was designed to cover Estonian, Latvian, Lithuanian, Greenlandic, and Sami. It has been largely superseded by ISO/IEC 8859-10 and Unicode.

  iso8859-5

    ISO/IEC 8859-5:1999. It is informally referred to as Latin/Cyrillic. It was designed to cover languages using a Cyrillic alphabet such as Bulgarian, Belarusian, Russian, Serbian and Macedonian but was never widely used.

  iso8859-6

    ISO/IEC 8859-6:1999. It is informally referred to as Latin/Arabic. It was designed to cover Arabic.

  iso8859-7

    ISO/IEC 8859-7:2003. It is informally referred to as Latin/Greek. It was designed to cover the modern Greek language.

  iso8859-8

    ISO/IEC 8859-8:1999. It is informally referred to as Latin/Hebrew. ISO/IEC 8859-8 covers all the Hebrew letters, but no Hebrew vowel signs.

  iso8859-9

    ISO/IEC 8859-9:1999. It is informally referred to as Latin-5 or Turkish. It was designed to cover the Turkish language, designed as being of more use than the ISO/IEC 8859-3 encoding.

  iso8859-13

    ISO/IEC 8859-13:1998. It is informally referred to as Latin-7 or Baltic Rim. It was designed to cover the Baltic languages, and added characters used in the Polish language missing from the earlier encodings ISO 8859-4 and ISO 8859-10. Unlike these two, it does not cover the Nordic languages.

  iso8859-14

    ISO/IEC 8859-14:1998. It is informally referred to as Latin-8 or Celtic. It was designed to cover the Celtic languages, such as Irish, Manx, Scottish Gaelic, Welsh, Cornish, and Breton.

  iso8859-15

    ISO/IEC 8859-15:1999. It is informally referred to as Latin-9 (and for a while Latin-0). It is similar to ISO 8859-1, and thus also intended for “Western European” languages, but replaces some less common symbols with the euro sign and some letters that were deemed necessary.

  utf8

    Unicode (or Universal Coded Character Set) Transformation Format – 8-bit. UTF-8 is used by many &Linux; distributions as default character set, and is, in addition, by far the most common encoding for the World Wide Web.

  koi8-r

    KOI8-R (RFC 1489) is an 8-bit character encoding, derived from the KOI-8 encoding by the programmer Andrei Chernov in 1993 and designed to cover Russian, which uses a Cyrillic alphabet.

  koi8-u

    KOI8-U (RFC 2319) is an 8-bit character encoding, designed to cover Ukrainian, which uses a Cyrillic alphabet.

  koi8-ru

    KOI8-RU is an 8-bit character encoding, designed to cover Russian, Ukrainian, and Belarusian which use a Cyrillic alphabet.

  cp1251

    Windows-1251 is an 8-bit character encoding, designed to cover languages that use the Cyrillic script such as Russian, Bulgarian, Serbian Cyrillic and other languages. In Linux, the encoding is known as cp1251.

  gb2312

    GB/T 2312-1980 is a key official character set of the People's Republic of China, used for Simplified Chinese characters. GB2312 is the registered internet name for EUC-CN, which is its usual encoded form. GB/T 2312-1980 has been superseded by GBK and GB18030, which include additional characters, but GB/T 2312 remains in widespread use as a subset of those encodings.

  big5

    Big-5 or Big5 is a Chinese character encoding method used in Taiwan, Hong Kong, and Macau for traditional Chinese characters. The People's Republic of China (PRC), which uses simplified Chinese characters, uses the GB 18030 character set instead.

  euc-jp

    EUC-JP is a variable-width encoding used to represent the elements of three Japanese character set standards, namely JIS X 0208, JIS X 0212, and JIS X 0201.

  euc-kr

    EUC-KR is a variable-width encoding to represent Korean text using two coded character sets, KS X 1001 (formerly KS C 5601) and either ISO 646:KR (KS X 1003, formerly KS C 5636) or US-ASCII, depending on variant. KS X 2901 (formerly KS C 5861) stipulates the encoding and RFC 1557 dubbed it as EUC-KR.

  tis-620

    Thai Industrial Standard 620-2533, commonly referred to as TIS-620, is the most common character set and character encoding for the Thai language.

  Default: not selected; CHARSET: default

##### &CIFS; Unix Extensions Support

All or most of the servers support the &CIFS; Unix extensions

  Option: none

  Most versions of &Samba; support the &CIFS; Unix or POSIX extensions. For these servers, some options are not needed, because the right values are negotiated during the mount process. For other servers, you might want to uncheck this option, so that predefined values can be passed to the server. Please note that if your computer is located in a &Windows; dominated network neighborhood with only a few &Samba; servers, you can safely uncheck this option and define custom settings for the &Samba; servers.

  In case you uncheck this option, consider to switch on permission checks under Advanced Mount Settings.

  Default: selected

Set the user and group ID

  Options: `uid=UID` and `gid=GID`

  &smb4k; uses your user and group ID for mounting if this setting is enabled. They are displayed here for information purposes only and cannot be changed.

  In case the support for the &CIFS; Unix extensions is selected, this setting is disabled.

  Default: selected; UID: your UID, GID: your GID

File mode

  Option: `file_mode=MODE`

  Sets the permissions that are applied to files. The value is given in octal and may have 3 or 4 digits. The SUID, SGID and sticky bit are not allowed. To learn more about the file mode (file_mode), you should read the mount 8 and umask 2 manual pages.

  In case the support for the &CIFS; Unix extensions is selected, this setting is disabled.

  Default: selected; ARG: 0755

Directory mode

  Option: `dir_mode=MODE`

  Sets the permissions that are applied to directories. The value is given in octal and may have 3 or 4 digits. The SUID, SGID and sticky bit are not allowed. To learn more about the directory mode (dir_mode), you should read the mount 8 and umask 2 manual pages.

  In case the support for the &CIFS; Unix extensions is selected, this setting is disabled.

  Default: selected; ARG: 0755

#### Advanced Mount Settings (&Linux; only)

The Advanced Mount Settings tab is only available under &Linux; and the listed options refer to the mount.cifs 8 / mount.smb3 8 command. The settings present under BSD can be found in the Mount Settings (BSD only) section.

Definitely assign the UID

  Option: `forceuid`

  Instruct the client (i.e. your side) to ignore any user ID (UID) provided by the server for files and directories and to always assign the owner to be the value of the transmitted UID.

  Default: not selected

Definitely assign the GID

  Option: `forcegid`

  Instruct the client (i.e. your side) to ignore any group ID (GID) provided by the server for files and directories and to always assign the owner to be the value of the transmitted GID.

  Default: not selected

Do permission checks

  Option: `perm` or `noperm`

  The client side checks if you have the correct UID and GID to manipulate files and directories on the share. This is in addition to the normal ACL check on the target machine done by the server software. You most definitely want to switch this feature off, if the server(s) support the &CIFS; Unix extensions and you are, hence, not allowed to fully access the share.

  Default: not selected

Attempt to set UID and GID

  Option: `setuids` or `nosetuids`

  If the &CIFS; Unix extensions are negotiated with the server the client side will attempt to set the effective UID and GID of the local process on newly created files, directories, and devices. If this feature is turned off, the default UID and GID defined for the share will be used. It is recommended that you read the manual page of mount.cifs 8 before you change this setting.

  Default: not selected

Use server inode numbers

  Option: `serverino` or `noserverino`

  Use inode numbers (unique persistent file identifiers) returned by the server instead of automatically generating temporary inode numbers on the client side. This parameter has no effect if the server does not support returning inode numbers or similar. It is recommended that you read the manual page of mount.cifs 8 before you change this setting.

  Default: selected

Translate reserved characters

  Option: `mapchars` or `nomapchars`

  Translate six of the seven reserved characters (not backslash, but including the colon, question mark, pipe, asterisk, greater than, and less than characters) to the remap range (above 0xF000), which also allows the client side to recognize files created with such characters by &Windows;’s POSIX emulation. This can also be useful when mounting to most versions of &Samba;. This has no effect if the server does not support Unicode.

  Default: not selected

Do not send byte range lock requests

  Option: `nobrl`

  Do not send byte range lock requests to the server. This is necessary for certain applications that break with cifs style mandatory byte range locks (and most cifs servers do not yet support requesting advisory byte range locks).

  Default: not selected

SMB protocol version

  Option: `vers=VERS`

  Define which version of the SMB protocol is to be used. Normally, this option does not need to be enabled because the protocol version is negotiated between the client and the server.

  The following values are allowed:

  1.0 (Classic &CIFS;/SMBv1 protocol)

    This causes mount.cifs 8 to use the classic &CIFS;/SMBv1 protocol.

  2.0 (Windows Vista SP1/Windows Server 2008)

    This causes mount.cifs 8 to use the SMBv2.002 protocol. This was initially introduced in &Microsoft; &Windows; Vista Service Pack 1 and &Windows; Server 2008.

    Please note that the initial release version of &Microsoft; &Windows; Vista spoke a slightly different dialect (2.000) that is not supported.

  2.1 (Windows 7/Windows Server 2008R2)

    This causes mount.cifs 8 to use the SMBv2.1 protocol that was introduced in &Microsoft; &Windows; 7 and &Windows; Server 2008R2.

  3.0 (Windows 8/Windows Server 2012)

    This causes mount.cifs 8 to use the SMBv3.0 protocol that was introduced in &Microsoft; &Windows; 8 and &Windows; Server 2012.

  3.0.2 (Windows 8.1/Windows Server 2012R2)

    This causes mount.cifs 8 to use the SMBv3.0.2 protocol that was introduced in &Microsoft; &Windows; 8.1 and &Windows; Server 2012R2.

  3.1.1 (Windows Server 2016)

    This causes mount.cifs 8 to use the SMBv3.1.1 protocol that was introduced in &Microsoft; &Windows; Server 2016.

  3 (Version 3.0 and above)

    This causes mount.cifs 8 to use the SMBv3.0 protocol version and above.

  default (Negotiate the highest version)

    This causes mount.cifs 8 to try to negotiate the highest SMBv2+ version supported by both the client and server.

  Default: not selected; VERS: default (Negotiate the highest version)

Cache mode

  Option: `cache=ARG`

  Define how read and write requests are handled. In case you choose to not cache file data at all, the client never utilizes the cache for normal reads and writes. It always accesses the server directly to satisfy a read or write request. If you choose to follow the &CIFS;/SMB2 protocol strictly, the cache is only trusted if the client holds an oplock. If the client does not hold an oplock, then the client bypasses the cache and accesses the server directly to satisfy a read or write request. Choosing to allow loose caching semantics can sometimes provide better performance on the expense of cache coherency. This option might cause data corruption, if several clients access the same set of files on the server at the same time. Because of this, the strict cache mode is recommended.

  The following values are allowed:

  Do not cache file data at all

    This causes mount.cifs 8 to not cache file data at all.

  Follow the &CIFS;/SMB2 protocol strictly

    This causes mount.cifs 8 to follow the &CIFS;/SMB2 protocol strictly.

  Allow loose caching semantics

    This causes mount.cifs 8 to allow loose caching semantics.

  Default: not selected; ARG: Follow the &CIFS;/SMB2 protocol strictly

Security mode

  Security mode. To be able to use this option, the &CIFS; kernel module 1.40 or later is needed.

  The allowed values are:

  Connect as a null user (no name)

    The `sec=none` command line argument is used. This causes mount.cifs 8 to attempt to connect as a null user (no name).

  Kerberos 5 authentication

    The `sec=krb5` command line argument is used. This causes mount.cifs 8 to use Kerberos version 5 authentication.

  Kerberos 5 authentication and packet signing

    The `sec=krb5i` command line argument is used. This causes mount.cifs 8 to use Kerberos version 5 authentication and force packet signing.

  NTLM protocol

    The `sec=ntlm` command line argument is used. This causes mount.cifs 8 to use NTLM password hashing. Up to &Linux; kernel version 3.8 this is the default setting.

  NTLM protocol and packet signing

    The `sec=ntlmi` command line argument is used. This causes mount.cifs 8 to use NTLM password hashing and force packet signing.

  NTLMv2 protocol

    The `sec=ntlmv2` command line argument is used. This causes mount.cifs 8 to use NTLMv2 password hashing.

  NTLMv2 protocol and packet signing

    The `sec=ntlmv2i` command line argument is used. This causes mount.cifs 8 to use NTLMv2 password hashing and force packet signing.

  NTLMSSP protocol

    The `sec=ntlmssp` command line argument is used. This causes mount.cifs 8 to use NTLMv2 password hashing encapsulated in a Raw NTLMSSP message. Since &Linux; kernel version 3.8 this is the default setting.

  NTLMSSP protocol and packet signing

    The `sec=ntlmssp` command line argument is used. This causes mount.cifs 8 to use NTLMv2 password hashing encapsulated in a Raw NTLMSSP message and force packet signing.

  Default: not selected; NTLMSSP protocol

#### Mount Settings (BSD only)

The Mount Settings tab is only available under FreeBSD, NetBSD and DragonFly BSD. The settings present under &Linux; can be found in the Common Mount Settings (&Linux; only) and Advanced Mount Settings (&Linux; only) sections.

##### Common Options

Set the user and group ID

  Options: `-u UID` and `-g GID`

  &smb4k; uses your user and group ID for mounting if this setting is enabled. They are displayed here for information purposes only and cannot be changed.

  In case the support for the &CIFS; Unix extensions is selected, this setting is disabled.

  Default: selected; UID: your UID, GID: your GID

File mode

  Option: `-f MODE`

  Sets the permissions that are applied to files. The value is given in octal and may have 3 or 4 digits. The SUID, SGID and sticky bit are not allowed. To learn more about the file mode, you should read the mount_smbfs 8 and umask 2 manual pages.

  Default: 0755

Directory mode

  Option: `-d MODE`

  Sets the permissions that are applied to directories. The value is given in octal and may have 3 or 4 digits. The SUID, SGID and sticky bit are not allowed. To learn more about the directory mode, you should read the mount_smbfs 8 and umask 2 manual pages.

  Default: 0755

##### Character Sets

Use character sets

  Option: `-E cs1:cs2`

  Use the specified local and server's character sets.

  Default: not selected

  Client character set

    Use this character set for the client side. These character sets are available:

    default

      Default character set used by the client's kernel.

    iso8859-1

      ISO/IEC 8859-1:1998. This character-encoding scheme is used throughout the Americas, Western Europe, Oceania, and much of Africa.

    iso8859-2

      ISO/IEC 8859-2:1999. It is informally referred to as "Latin-2". It is generally intended for Central or "Eastern European" languages that are written in the Latin script.

    iso8859-3

      ISO/IEC 8859-3:1999. It is informally referred to as Latin-3 or South European. It was designed to cover Turkish, Maltese and Esperanto, though the introduction of ISO/IEC 8859-9 superseded it for Turkish.

    iso8859-4

      ISO/IEC 8859-4:1998. It is informally referred to as Latin-4 or North European. It was designed to cover Estonian, Latvian, Lithuanian, Greenlandic, and Sami. It has been largely superseded by ISO/IEC 8859-10 and Unicode.

    iso8859-5

      ISO/IEC 8859-5:1999. It is informally referred to as Latin/Cyrillic. It was designed to cover languages using a Cyrillic alphabet such as Bulgarian, Belarusian, Russian, Serbian and Macedonian but was never widely used.

    iso8859-6

      ISO/IEC 8859-6:1999. It is informally referred to as Latin/Arabic. It was designed to cover Arabic.

    iso8859-7

      ISO/IEC 8859-7:2003. It is informally referred to as Latin/Greek. It was designed to cover the modern Greek language.

    iso8859-8

      ISO/IEC 8859-8:1999. It is informally referred to as Latin/Hebrew. ISO/IEC 8859-8 covers all the Hebrew letters, but no Hebrew vowel signs.

    iso8859-9

      ISO/IEC 8859-9:1999. It is informally referred to as Latin-5 or Turkish. It was designed to cover the Turkish language, designed as being of more use than the ISO/IEC 8859-3 encoding.

    iso8859-13

      ISO/IEC 8859-13:1998. It is informally referred to as Latin-7 or Baltic Rim. It was designed to cover the Baltic languages, and added characters used in the Polish language missing from the earlier encodings ISO 8859-4 and ISO 8859-10. Unlike these two, it does not cover the Nordic languages.

    iso8859-14

      ISO/IEC 8859-14:1998. It is informally referred to as Latin-8 or Celtic. It was designed to cover the Celtic languages, such as Irish, Manx, Scottish Gaelic, Welsh, Cornish, and Breton.

    iso8859-15

      ISO/IEC 8859-15:1999. It is informally referred to as Latin-9 (and for a while Latin-0). It is similar to ISO 8859-1, and thus also intended for “Western European” languages, but replaces some less common symbols with the euro sign and some letters that were deemed necessary.

    utf8

      Unicode (or Universal Coded Character Set) Transformation Format – 8-bit. UTF-8 is used by many &Linux; distributions as default character set, and is, in addition, by far the most common encoding for the World Wide Web.

    koi8-r

      KOI8-R (RFC 1489) is an 8-bit character encoding, derived from the KOI-8 encoding by the programmer Andrei Chernov in 1993 and designed to cover Russian, which uses a Cyrillic alphabet.

    koi8-u

      KOI8-U (RFC 2319) is an 8-bit character encoding, designed to cover Ukrainian, which uses a Cyrillic alphabet.

    koi8-ru

      KOI8-RU is an 8-bit character encoding, designed to cover Russian, Ukrainian, and Belarusian which use a Cyrillic alphabet.

    cp1251

      Windows-1251 is an 8-bit character encoding, designed to cover languages that use the Cyrillic script such as Russian, Bulgarian, Serbian Cyrillic and other languages. In Linux, the encoding is known as cp1251.

    gb2312

      GB/T 2312-1980 is a key official character set of the People's Republic of China, used for Simplified Chinese characters. GB2312 is the registered internet name for EUC-CN, which is its usual encoded form. GB/T 2312-1980 has been superseded by GBK and GB18030, which include additional characters, but GB/T 2312 remains in widespread use as a subset of those encodings.

    big5

      Big-5 or Big5 is a Chinese character encoding method used in Taiwan, Hong Kong, and Macau for traditional Chinese characters. The People's Republic of China (PRC), which uses simplified Chinese characters, uses the GB 18030 character set instead.

    euc-jp

      EUC-JP is a variable-width encoding used to represent the elements of three Japanese character set standards, namely JIS X 0208, JIS X 0212, and JIS X 0201.

    euc-kr

      EUC-KR is a variable-width encoding to represent Korean text using two coded character sets, KS X 1001 (formerly KS C 5601) and either ISO 646:KR (KS X 1003, formerly KS C 5636) or US-ASCII, depending on variant. KS X 2901 (formerly KS C 5861) stipulates the encoding and RFC 1557 dubbed it as EUC-KR.

    tis-620

      Thai Industrial Standard 620-2533, commonly referred to as TIS-620, is the most common character set and character encoding for the Thai language.

    Default: default

  Server character set

    Use this character set for the server side. These character sets are available:

    default

      Default character set used by the server.

    cp437

      Code page 437 is the character set of the original IBM PC (personal computer). It is also known as CP437, OEM-US, OEM 437, PC-8, or DOS Latin US. The set includes all printable ASCII characters, extended codes for accented letters (diacritics), some Greek letters, icons, and line-drawing symbols.

    cp720

      Code page 720 is a code page used to write Arabic in Egypt, Iraq, Jordan, Saudi Arabia, and Syria.

    cp737

      Code page 737 is a code page used to write the Greek language in Greece.

    cp775

      Code page 775 is a code page used to write the Estonian, Lithuanian and Latvian languages.

    cp850

      Code page 850 is a code page used in Western Europe.

    cp852

      Code page 852 is a code page used to write Central European languages that use Latin script (such as Bosnian, Croatian, Czech, Hungarian, Polish, Romanian, Serbian, Slovak or Slovene).

    cp855

      Code page 855 is a code page used to write Cyrillic script. Code page 872 is the euro currency update of code page 855.

    cp857

      Code page 857 is a code page used in Turkey to write Turkish. It is based on code page 850, but with many changes. It includes all characters from ISO 8859-9.

    cp858

      Code page 858 is a code page used to write Western European languages. Like code page 850, Code page 858 supports the entire repertoire of ISO 8859-1, but in a different arrangement.

    cp860

      Code page 860 is a code page used in Portugal to write Portuguese, and it is also suitable to write Spanish and Italian.

    cp861

      Code page 861 is a code page used in Iceland to write the Icelandic language (as well as other Nordic languages).

    cp862

      Code page 862 is a code page in Israel for Hebrew.

    cp863

      Code page 863 is a code page used in Canada to write French (mainly in Quebec) although it lacks some letters.

    cp864

      Code page 864 is a code page used to write Arabic in Egypt, Iraq, Jordan, Saudi Arabia, and Syria.

    cp865

      Code page 865 is a code page used in Denmark and Norway to write Nordic languages (except Icelandic, for which code page 861 is used).

    cp866

      Code page 866 is a code page used in Russia to write Cyrillic script.

    cp869

      Code page 869 is a code page used to write Greek language.

    cp874

      Code page 874, also known as Code page 9066, is used to write the Thai language.

    cp932

      Code page 932 is the &Microsoft; &Windows; code page for the Japanese language, which is an extended variant of the Shift JIS Japanese character encoding.

    cp936

      Code page 936 is the &Microsoft; &Windows; code page for simplified Chinese.

    cp949

      Code page 949 is the &Microsoft; &Windows; code page for the Korean language.

    cp950

      Code page 950 is the &Microsoft; &Windows; code page for Traditional Chinese.

    cp1250

      Code page 1250 is a &Microsoft; &Windows; code page to represent texts in Central European and Eastern European languages that use Latin script, such as Polish, Czech, Slovak, Hungarian, Slovene, Bosnian, Croatian, Serbian (Latin script), Romanian (before 1993 spelling reform) and Albanian. It may also be used with the German language.

    cp1251

      Code page 1251 is a &Microsoft; &Windows; code page designed to cover languages that use the Cyrillic script such as Russian, Bulgarian, Serbian Cyrillic, and other languages.

    cp1252

      Code page 1252 is a &Microsoft; &Windows; code page used for English and many European languages including Spanish, French, and German.

    cp1253

      Code page 1253 is a &Microsoft; &Windows; code page used to write modern Greek. It is not capable of supporting the older polytonic Greek.

    cp1254

      Code page 1254 is a &Microsoft; &Windows; code page used to write Turkish.

    cp1255

      Code page 1255 is a &Microsoft; &Windows; code page used to write Hebrew.

    cp1256

      Code page 1256 is a &Microsoft; &Windows; code page write Arabic (and possibly some other languages that use Arabic script, like Persian and Urdu).

    cp1257

      Code page 1257 is a &Microsoft; &Windows; code page to support the Estonian, Latvian and Lithuanian languages.

    cp1258

      Code page 1258 is a &Microsoft; &Windows; code page to represent Vietnamese texts. It makes use of combining diacritical marks.

    unicode

      Unicode is an information technology standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems.

    Default: default

### Synchronization

This configuration page contains options that influence the behavior of the rsync 1 command that is used to synchronize remote shares with local copies and vice versa. It is only available, if rsync 1 is installed on your system. It is recommended that you read the manual page before you use the synchronization feature the first time. However, safe settings are pre-defined. You will do no harm, if you start right away.

Screenshot of the "Synchronization" configuration page
The "Synchronization" configuration page

#### Basic Settings

##### Synchronization Directory

Synchronization prefix

  This is the base folder below which &smb4k; stores the transferred data using rsync 1. It can be changed by using the &URL; requester (Click the button with the folder icon.) or by directly entering the new path into the text box. Path variables like $HOME are recognized.

  For each share you synchronize, a new subdirectory below this prefix will be generated. If you want to synchronize the contents of a share to a different folder, you can define it in the synchronization dialog.

  Default: `$HOME/smb4k_sync/`

##### Behavior

Archive mode

  Option: `-a`/`--archive`, same as `-rlptgoD` (no `-A`, `-X`, `-U`, `-N`, `-H`)

  Switch the archive mode on. This is a quick way of saying you want recursion and want to preserve almost everything. Note that `-a` does not preserve hardlinks (`-H`), access control lists (ACLs, `-A`), extended attributes (xattrs, `-X`), access (use) times (`-U`) nor create times (`-N`). You must separately specify these options. The only exception to the above equivalence is when `--files-from` is specified, in which case `-r` is not implied.

  In case you do not want to run rsync 1 in archive mode, choose the appropriate arguments in the settings yourself.

  Default: selected

Recurse into subdirectories

  Option: `-r`/`--recursive`

  Recurse into subdirectories.

  Default: not selected

Use relative path names

  Option: `-R`/`--relative`

  Use relative path names. This means that the full path names specified on the command line are sent to the server rather than just the last parts of the file names.

  Default: not selected

Do not send implied directories

  Option: `--no-implied-dirs`

  This option affects the default behavior of the `--relative` option. When it is specified, the attributes of the implied directories from the source names are not included in the transfer. This means that the corresponding path elements on the destination system are left unchanged if they exist, and any missing implied directories are created with default attributes. This even allows these implied path elements to have big differences, such as being a symlink to a folder on one side of the transfer, and a real folder on the other side.

  For further information you ought to read the manual page.

  Default: not selected

Transfer directories without recursing

  Option: `-d`/`--dirs`

  Tell the sending side to include any directories that are encountered. Unlike `--recursive`, a folders contents is not copied unless the folder name specified is "." or ends with a trailing slash (&eg; ".", "dir/.", "dir/", &etc;). Without this option or the `--recursive` option, rsync 1 will skip all directories it encounters (and output a message to that effect for each one). If you specify both `--dirs` and `--recursive`, `--recursive` takes precedence.

  Default: not selected

##### Backups

Make backups

  Option: `-b`/`--backups`

  With this option, preexisting destination files are renamed as each file is transferred or deleted. You can control where the backup file goes and what (if any) suffix gets appended using the `--backup-dir` and `--suffix` options.

  Note that if you don't specify `--backup-dir`, (1) the `--omit-dir-times` option will be implied, and (2) if `--delete` is also in effect (without `--delete-excluded`), rsync 1 will add a "protect" filter-rule for the backup suffix to the end of all your existing excludes (&eg; `-f "P *~"`). This will prevent previously backed-up files from being deleted. Note that if you are supplying your own filter rules, you may need to manually insert your own exclude/protect rule somewhere higher up in the list so that it has a high enough priority to be effective (&eg;, if your rules specify a trailing inclusion/exclusion of '*', the auto-added rule would never be reached).

  Default: not selected

Backup suffix

  Option: `--suffix=SUFFIX`

  This option allows you to override the default backup suffix used with the `--backup` option. The default suffix is a ~ if no `--backup-dir` was specified, otherwise it is an empty string.

  This option is only available if you ticked the Make backups option above.

  Default: not selected; SUFFIX: ~

Backup directory

  Option: `--backup-dir=DIR`

  In combination with the `--backup` option, this tells rsync 1 to store all backups in the specified folder. This is very useful for incremental backups. You can additionally specify a backup suffix using the `--suffix` option (otherwise the files backed up in the specified folder will keep their original filenames).

  This option is only available if you ticked the Make backups option above.

  Default: not selected; DIR: `$HOME`

#### File Handling

##### General

Update files

  Option: `-u`/`--update`

  This forces rsync 1 to skip any files that exist on the destination and have a modification time that is newer than the one of the source file. (If an existing destination file has a modification time equal to the source file's, it will be updated if the sizes are different.)

  Default: not selected

Update files in place

  Option: `--inplace`

  This causes rsync 1 not to create a new copy of the file and then move it into place. Instead rsync 1 will overwrite the existing file, meaning that the rsync algorithm cannot accomplish the full amount of network reduction it might be able to otherwise. One exception to this is if you combine the option with `--backup`, since rsync 1 is smart enough to use the backup file as the basis file for the transfer.

  For further information you ought to read the manual page.

  Default: not selected

Handle sparse files efficiently

  Option: `-S`/`--sparse`

  Try to handle sparse files efficiently so they take up less space on the destination. Conflicts with `--inplace` because it's not possible to overwrite data in a sparse fashion.

  Do not use this option when the destination is a &Solaris; "tmpfs" file system. It doesn't seem to handle seeks over null regions correctly and ends up corrupting the files.

  Default: not selected

Copy files whole (no rsync algorithm)

  Option: `-W`/`--whole-file`

  With this option the incremental rsync 1 algorithm is not used and the whole file is sent as-is instead. The transfer may be faster if this option is used when the bandwidth between the source and destination machines is higher than the bandwidth to disk (especially when the "disk" is actually a networked file system). This is the default when both the source and destination are specified as local paths.

  Default: not selected

Only update files that already exist

  Option: `--existing`/`--ignore-non-existing`

  This tells rsync 1 to skip updating files that do not exist yet on the destination. If this option is combined with the `--ignore-existing` option, no files will be updated (which can be useful if all you want to do is to delete missing files).

  Default: not selected

Ignore files that already exist

  Option: `--ignore-existing`

  This tells rsync 1 to skip updating files that already exist on the destination. See also `--ignore-non-existing`.

  Default: not selected

##### Links

Preserve symlinks

  Option: `-l`/`--links`

  Copy symlinks as symlinks.

  Default: not selected

Transform symlinks

  Option: `-L`/`--copy-links`

  When symlinks are encountered, the item that they point to is copied, rather than the symlink.

  Default: not selected

Transform unsafe symlinks

  Option: `--copy-unsafe-links`

  Only transform "unsafe" symlinks. This means if a symlink is encountered that is pointing outside the copied tree, the referenced item is transferred rather than the symlink itself.

  Default: not selected

Ignore unsafe symlinks

  Option: `--safe-links`

  This tells rsync 1 to ignore any symbolic links which point outside the copied tree. All absolute symlinks are also ignored. Using this option in conjunction with `--relative` may give unexpected results.

  Default: not selected

Munge symlinks

  Option: `--munge-links`

  This tells rsync 1 to (1) modify all symlinks on the receiving side in a way that makes them unusable but recoverable, or (2) to unmunge symlinks on the sending side that had been stored in a munged state. This is useful if you do not quite trust the source of the data to not try to slip in a symlink to an unexpected place. For further information on this argument, please see the manual page of rsync 1.

  Default: not selected

Preserve hard links

  Option: `-H`/`--hard-links`

  This tells rsync 1 to look for hard-linked files in the transfer and link together the corresponding files on the receiving side. Without this option, hard-linked files in the transfer are treated as though they were separate files.

  Note that rsync 1 can only detect hard links if both parts of the link are in the list of files being sent.

  Default: not selected

Copy directory symlinks

  Option: `-k`/`--copy-dirlinks`

  This option causes the sending side to treat a symlink to a directory as though it were a real directory. This is useful if you don’t want symlinks to non-directories to be affected, as they would be using `--copy-links`.

  Default: not selected

Keep directory symlinks

  Option: `-K`/`--keep-dirlinks`

  This option causes the receiving side to treat a symlink to a directory as though it were a real directory, but only if it matches a real directory from the sender. Without this option, the receiver's symlink would be deleted and replaced with a real directory.

  Default: not selected

#### File Attributes & Ownership

##### File Attributes

Preserve permissions

  Option: `-p`/`--perms`

  This option causes the receiving side to set the destination permissions to be the same as the source permissions.

  Default: not selected

Preserve access control lists (ACLs)

  Option: `-A`/`--acls`

  Preserve access control lists. This option causes rsync 1 to update the destination ACLs to be the same as the source ACLs. The option also implies --perms. The source and destination systems must have compatible ACL entries for this option to work properly.

  Default: not selected

Preserve extended attributes

  Option: `-X`/`--xattrs`

  Preserve extended attributes. This option causes rsync 1 to update the destination extended attributes to be the same as the source ones.

  Default: not selected

Preserve access times

  Option: `-U`/`--atimes`

  Preserve access times. This tells rsync 1 to set the access (use) times of the destination files to the same value as the source files.

  Default: not selected

Preserve create times

  Option: `-N`/`--crtimes`

  Preserve create times. This tells rsync 1 to set the create times (newness) of the destination files to the same value as the source files.

  Default: not selected

Preserve device and special files

  Option: `-D`/`--devices --specials`

  This option causes rsync 1 to transfer character and block device files as well as special files (such as named sockets and fifos) to the remote system. This option has no effect if the receiving side is not run as the super user and `--super` is not specified.

  Default: not selected

Preserve times

  Option: `-t`/`--times`

  This tells rsync 1 to transfer modification times along with the files and update them on the remote system.

  Default: not selected

Omit directories when preserving times

  Option: `-O`/`--omit-dir-times`

  This tells rsync 1 to omit directories when it is preserving modification times (see `--times`).

  Default: not selected

##### Ownership

Preserve owner

  Option: `-o`/`--owner`

  This option causes rsync 1 to set the owner of the destination file to be the same as the one of the source file. By default, the preservation is done by name, but may fall back to using the ID number in some circumstances (see the `--numeric-ids` option for a full discussion). This option has no effect if the receiving rsync 1 is not run as the super user and `--super` is not specified.

  Default: not selected

Preserve group

  Option: `-g`/`--group`

  This option causes rsync 1 to set the group of the destination file to be the same as the on of the source file. If the receiving program is not running as the super-user (or with the `--no-super` option), only groups that the receiver is a member of will be preserved.

  Default: not selected

#### File Transfer

##### Compression

Compress data during transfer

  Option: `-z`/`--compress`

  Compress file data during the transfer.

  Default: not selected

Set compression level

  Option: `--compress-level=NUM`

  Explicitly set the compression level to use. If NUM is non-zero, the `--compress` argument is implied.

  Default: not selected; NUM: 0

Skip compression for following file suffixes

  Option: `--skip-compress=LIST`

  Overwrite the list of file suffixes that will not be compressed. The LIST should be one or more file suffixes (without the dot) separated by slashes. You may specify an empty string to indicate that no file should be skipped. The default list of suffixes will be replaced by this list. For further details, see the manual page of rsync 1.

  Default: not selected; LIST: empty

##### Files

Do not transfer any file smaller than

  Option: `--min-size=SIZE`

  This tells rsync 1 to avoid transferring any file that is smaller than the specified SIZE, which can help in not transferring small, junk files.

  Default: not selected; SIZE: 0 kB

Do not transfer any file larger than

  Option: `--max-size=SIZE`

  This tells rsync 1 to avoid transferring any file that is larger than the specified SIZE.

  Default: not selected; SIZE: 0 kB

Keep partially transferred files

  Option: `--partial`

  By default, rsync 1 will delete any partially transferred file if the transfer is interrupted. In some circumstances it is more desirable to keep partially transferred files. Using the `--partial` option tells rsync 1 to keep the partial file which should make a subsequent transfer of the rest of the file much faster.

  Default: not selected

Put partially transferred files into

  Option: `--partial-dir=DIR`

  A better way to keep partial files than the `--partial` option is to specify a folder DIR that will be used to hold the partial data (instead of writing it out to the destination file). On the next transfer, rsync 1 will use a file found in this folder as data to speed up the resumption of the transfer and then delete it after it has served its purpose. Before you tick this option, you should read the manual page.

  Default: not selected; DIR: `$HOME`

##### Miscellaneous

Set bandwidth limit:

  Option: `--bwlimit=RATE`

  Set the maximum data transfer RATE in kilobytes per second.

  Default: not selected; RATE: 0 kB/s

#### File Deletion

##### Files & Directories

Remove synchronized source files

  Option: `--remove-source-files`

  This tells rsync 1 to remove from the sending side the files (meaning non-directories) that are a part of the transfer and have been successfully duplicated on the receiving side.

  Default: not selected

Delete extraneous files

  Option: `--delete`

  This tells rsync 1 to delete extraneous files from the receiving side (ones that aren't on the sending side), but only for the directories that are being synchronized. You must have asked rsync 1 to send the whole folder (&eg; "`dir`" or "`dir/`") without using a wildcard for the folders contents (&eg; "`dir/*`") since the wildcard is expanded by the shell and rsync 1 thus gets a request to transfer individual files, not the files' parent folder. Files that are excluded from transfer are also excluded from being deleted unless you use the `--delete-excluded` option or mark the rules as only matching on the sending side.

  Default: not selected

Delete files before transfer

  Option: `--delete-before`

  Request that the file deletions on the receiving side be done before the transfer starts. This is the default if `--delete` or `--delete-excluded` is specified without one of the `--delete-WHEN` options.

  Default: not selected

Delete files after transfer

  Option: `--delete-after`

  Request that the file deletions on the receiving side be done after the transfer has completed.

  Default: not selected

Delete files during transfer

  Option: `--delete-during`

  Request that the file deletions on the receiving side be done incrementally as the transfer happens. This is a faster method than choosing the before- or after-transfer algorithm, but it is only supported beginning with rsync 1 version 2.6.4.

  Default: not selected

Delete excluded files

  Option: `--delete-excluded`

  In addition to deleting the files on the receiving side that are not on the sending side, this tells rsync 1 to also delete any files on the receiving side that are excluded (see `--exclude`).

  Default: not selected

Delete even if I/O errors occur

  Option: `--ignore-errors`

  Tells `--delete` to go ahead and delete files even when there are I/O errors.

  Default: not selected

Force deletion of non-void directories

  Option: `--force`

  This option tells rsync 1 to delete a non-empty folder when it is to be replaced by a non-folder. This is only relevant if deletions are not active (see `--delete`).

  Default: not selected

##### Restrictions

Do not delete more than this many files

  Option: `--max-delete=NUM`

  This tells rsync 1 not to delete more than NUM files or directories (NUM must be non-zero). This is useful when mirroring very large trees to prevent disasters.

  Default: not selected; NUM: 0

#### Filtering

##### General

Auto-ignore files in the same way CVS does

  Option: `-C`/`--cvs-exclude`

  This is a useful shorthand for excluding a broad range of files that you often don't want to transfer between systems. It uses the same algorithm that CVS uses to determine if a file should be ignored.

  Default: not selected

Exclude files matching this pattern

  Option: `--exclude=PATTERN`

  This option is a simplified form of the `--filter` option that defaults to an exclude rule and does not allow the full rule-parsing syntax of normal filter rules.

  Default: not selected; PATTERN: empty

Read exclude patterns from

  Option: `--exclude-from=FILE`

  This option is related to the `--exclude` option, but it specifies a FILE that contains exclude patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. You have to choose an existing file to make this option work.

  Default: not selected; FILE: `$HOME/exclude.txt`

Include files matching this pattern

  Option: `--include=PATTERN`

  This option is a simplified form of the `--filter` option that defaults to an include rule and does not allow the full rule-parsing syntax of normal filter rules.

  Default: not selected; PATTERN: empty

Read include patterns from

  Option: `--include-from=FILE`

  This option is related to the `--include` option, but it specifies a FILE that contains include patterns (one per line). Blank lines in the file and lines starting with ';' or '#' are ignored. You have to choose an existing file to make this option work.

  Default: not selected; FILE: `$HOME/include.txt`

##### Filter Rules

Use --filter='dir-merge /.rsync-filter' filter rule

  Option: `-F`

  This option tells rsync 1 to look for per-folder `.rsync-filter` files that have been sprinkled through the hierarchy and use their rules to filter the files in the transfer.

  See the FILTER RULES section of the manual page for detailed information on how this option works.

  Default: not selected

Use --filter='exclude .rsync-filter' filter rule

  Option: `-FF`

  This option filters out the `.rsync-filter` files themselves from the transfer.

  See the FILTER RULES section of the manual page for detailed information on how this option works.

  Default: not selected

Custom filter rules

  Option: `-f`/`--filter=RULE`

  You can define one or more filter rules here. Each rule has to be prefixed with the `--filter=` or `-f` option string, because the contents of the text box will be passed to the rsync 1 command AS IS.

  This option allows you to add rules to selectively exclude certain files from the list of files to be transferred. This is most useful in combination with a recursive transfer.

  You may use as many `--filter` options as you like to build up the list of files to exclude.

  See the FILTER RULES section of the manual page for detailed information on this option.

  Default: not selected; RULES: empty

#### Miscellaneous

##### Checksums

Force fixed checksum block size

  Option: `-B`/`--block-size=SIZE`

  This forces the block size used in the rsync algorithm to a fixed value. It is normally selected based on the size of each file being updated. See the technical report for details.

  Default: not selected; SIZE: 0

Set block/file checksum seed

  Option: `--checksum-seed=NUM`

  Set the MD4 checksum seed to the integer NUM. This 4 byte checksum seed is included in each block and file MD4 checksum calculation. By default the checksum seed is generated by the server and defaults to the current time(). This option is used to set a specific checksum seed, which is useful for applications that want repeatable block and file checksums, or in the case where the user wants a more random checksum seed. Note that setting NUM to 0 causes rsync to use the default of time() for checksum seed.

  Default: not selected; NUM: 0

Skip files based on checksum

  Option: `-c`/`--checksum`

  This forces the sender to checksum every regular file using a 128-bit MD4 checksum. It does this during the initial file system scan as it builds the list of all available files. The receiver then checksums its version of each file (if it exists and it has the same size as its sender-side counterpart) in order to decide which files need to be updated: files with either a changed size or a changed checksum are selected for transfer. Since this whole-file checksumming of all files on both sides of the connection occurs in addition to the automatic checksum verifications that occur during a file's transfer, this option can be quite slow.

  Default: not selected

##### Miscellaneous

Do not cross file system boundaries

  Option: `-x`/`--one-file-system`

  This tells rsync 1 to avoid crossing a file system boundary when recursing. This does not limit the user's ability to specify items to copy from multiple file systems, just rsync 1's recursion through the hierarchy of each folder that the user specified, and also the analogous recursion on the receiving side during deletion. Also keep in mind that rsync 1 treats a "bind" mount to the same device as being on the same file system.

  Default: not selected

Delay updates until the end of transfer

  Option: `--delay-updates`

  This option puts the temporary file from each updated file into a holding folder until the end of the transfer, at which time all the files are renamed into place in rapid succession.

  It is strongly recommended that you read the manual page before using this option.

  Default: not selected

### Authentication

Here you can enter the default login credentials. If you use profiles, they are only valid for the active profile.

Screenshot of the "Authentication" configuration page
The "Authentication" configuration page

All login credentials are stored in your password manager (&eg; &kwallet;, GNOME Keyring or KeePassXC). To change them, you can use the password dialog or your password manager. To delete individual entries, you need to use your password manager.

### Bookmarks

On this configuration page, you can edit your bookmarks. If you use profiles, only those of the active profile are shown.

Screenshot of the "Bookmarks" configuration page
The "Bookmarks" configuration page

To edit a category or bookmark, double click it or select it and click the Edit button on the righthand side. Categories can directly be renamed. For bookmarks, the editor opens and you can set the label, the category and the username for login as well as the workgroup or domain and the ip address of its host.

Screenshot of the "Bookmarks" configuration page with open editor
The "Bookmarks" configuration page with open editor

Categories can be added by either using the Add Category button, or by entering a new category name in the editor. Individual entries or the entire list can be deleted by pressing the Remove or Clear List button. To undo your changes, click the Reset button.

For further information about bookmarks, read this section.

### Custom Settings

All servers and shares for which you defined custom settings are listed here. If you use profiles, only those of the active profile are shown.

Screenshot of the "Custom Settings" configuration tab
The "Custom Settings" configuration tab

You can edit the custom settings for a network item by either double clicking it or by selecting it and clicking the Edit button on the righthand side. The editor will then open and you can change all the desired settings.

Screenshot of the "Custom Settings" configuration page with open editor
The "Custom Settings" configuration page with open editor

To remove an entry, select it and click the Remove button. All network items may be removed at once by clicking the Clear List button. To reset your changes, click the Reset button.

For further information about custom settings, read this section.

### Profiles

On this page you can enable the use of profiles and manage your profiles.

Screenshot of the "Profiles" configuration tab
The "Profiles" configuration tab

#### Settings

Use profiles

  Make Smb4K use profiles. This enables you to define different bookmarks and custom settings for each profile. This is especially useful if you are using a laptop in different network neighborhoods, &eg; at home and at work. When enabling this setting the first time, the first entry in the profiles list will be the active profile.

  Default: not selected

#### Profiles

Here, you can manage your profiles. By default, there are two pre-defined ones (Home and Work). To add a new profile, enter it into the line edit and click the Add button. Entries can be deleted by selecting them and clicking the Remove button. To change the order, you can use the Move Up and Move Down buttons. The active profile can be changed by either double clicking the profile name in the list or by selecting the profile and using the Set Active button. To rename a profile, select it and click the Rename button. You will then be able to change the name in the list widget. All settings of the renamed profile are migrated automatically. To reset your changes, click the Reset button.

For further information about profiles, read this section.

## Command Reference

### The File Menu

File Profiles

  Select the profile to use. This menu entry is disabled if the user did not enabled the use of profiles.

  Two profiles are predefined:

  File Profiles Home

    A profile for use at home

  File Profiles Work

    A profile for use at work

&Ctrl; Q File Quit

  Quit &smb4k;.

### The Network Menu

F5 Network Scan Network|Workgroup|Computer

  Scan the whole network neighborhood, the highlighted workgroup/domain or computer for new entries. This action is visible by default and will be replaced by the Abort action if a network scan is running.

&Ctrl; A Network Abort

  Abort any running process of the network neighborhood browser. This action is invisible by default and will only be visible instead of the Scan Network|Workgroup|Computer action when a network scan is running.

&Ctrl; F Network Search

  Open the search tool bar in the network neighborhood browser.

Network Add Bookmark

  Add a bookmark to the currently selected remote share. This action is disabled if no share is selected. Read the Adding Bookmarks section for more details.

&Ctrl; C Network Add Custom Settings

  Open the Custom Settings editor. You can set several custom settings for the selected server or share. If a workgroup or no item is selected, this menu entry is disabled. Read the Adding Custom Settings section for more details.

&Ctrl; O Network Open Mount Dialog

  Open the dialog for mounting shares "manually". This feature may be needed if &smb4k; cannot find a server from which you want to mount a certain shared resource.

&Ctrl; T Network Authentication

  Open the authentication dialog. You can provide the login and password for the selected server or share. If a workgroup or no item is selected, this action is disabled.

&Ctrl; V Network Preview

  Preview the contents of the selected remote share. This action is only enabled if a share is selected. Printer shares cannot be previewed.

&Ctrl; P Network Print File

  Print a file on a remote printer. This action is only available if a printer share is selected.

&Ctrl; M Network Mount

  Mount the selected remote share. By default and if you clicked anything different than a share with type "Disk" or "IPC", this action is disabled. If you selected a mounted share, this action is replaced by the Unmount action.

&Ctrl; U Network Unmount

  Unmount the selected shares. System mounts, or shares that were mounted by other users cannot be unmounted. This action is invisible by default and will only be visible instead of the Mount action if at least one mounted share is selected.

### The Shares Menu

Shares View Modes

  Choose the view mode from the submenu.

  Shares View Modes Icon View

    The shares are shown in an icon view.

  Shares View Modes List View

    The shares are shown in a list view.

&Ctrl; U Shares Unmount

  Unmount the selected shares. This action is restricted to the shares you mounted, though. So, system mounts or shares that belong to other users cannot be unmounted. If no share is selected in the shares view, this button is disabled.

  &smb4k; provides the ability to force unmounting of shares (&Linux; only). This can be useful for inaccessible shares that cannot be unmounted in the normal way. To enable this feature, you need to modify the settings in the configuration dialog.

  Read the Unmounting Shares section for more details.

&Ctrl; N Shares Unmount All

  Unmount all shares at once. The restrictions noted above also apply here. If you do not have any shares mounted, this button is disabled.

Shares Add Bookmark

  Add a bookmark to the currently selected mounted share. This action is disabled if no share is selected. Read the Adding Bookmarks section for more details.

&Ctrl; C Shares Add Custom Settings

  Open the Custom Settings editor. You can set several custom settings for the selected share. Read the Adding Custom Settings section for more details.

&Ctrl; Y Shares Synchronize

  Start the synchronization of a share with a local copy or vice versa. This menu entry is only enabled if you installed the program rsync 1 and a share is selected.

&Ctrl; L Shares Open with Konsole

  Open the base folder of the selected share in &konsole;.

&Ctrl; I Shares Open with File Manager

  Open the contents of the selected share in the default file manager (&eg; &dolphin;).

### The Bookmarks Menu

Bookmarks Edit Bookmarks

  Open the bookmark editor. This action is disabled if there are no bookmarks.

&Ctrl; B Bookmarks Add Bookmark

  Add one or several bookmarks. At least one share has to be selected to enable this action.

Bookmarks Mount Bookmarks

  Mount all top level bookmarks at once. It is disabled if all bookmarked shares are mounted. This action is not present if there are no top level bookmarks.

### The Settings Menu

Settings Toolbars Shown

  In this submenu you can enable or disable the tool bars.

Settings Show Statusbar

  Hide or show the status bar.

Settings Dock Widgets

  Hide or show the dock widgets in the main window.

  Settings Dock Widgets Network Neighborhood

    Hide or show the Network Neighborhood dock widget.

  Settings Dock Widgets Mounted Shares

    Hide or show the Mounted Shares dock widget.

Settings Configure &smb4k;...

  Open the configuration dialog.

### The Help Menu

Additionally &smb4k; has the common &kde; Help menu items, for more information read the section about the Help Menu of the &kde; Fundamentals.

## Reporting Bugs

Before filing a bug report, please try the latest version of &smb4k;. Maybe your problem has already been fixed.

Follow these directions for your bug report:

- Describe in detail what you did to receive the problem you are reporting.

- Provide the version of &smb4k; and &kde-frameworks;.

- Mention your operating system (&Linux;, FreeBSD, &etc;) and the distribution that is running on your computer.

- Include the full error message if an error dialog was displayed.

- If you experienced a crash, attach a full backtrace. For this it is recommended that you (re-)compile &smb4k; with debugging symbols. How this is done is mentioned in the `README.md` file shipped in the sources.

- Add additional data, &eg; send a screen shot if you are reporting a &GUI; related problem.

The recommended method to report a bug is to use the dialog that opens when you click the Help Report Bug... menu item. But you can also go directly to the KDE Bugtracking System and fill out the form.

## Credits and License

Copyright © 2003 - 2023, Alexander Reinholdt alexander.reinholdt@kdemail.net

&underFDL; &underGPL;

### Developers

- Alexander Reinholdt alexander.reinholdt@kdemail.net

### Translations

Translations were contributed by the &kde; translators.

### Special Thanks

The &smb4k; team would like to thank everyone who contributed by sending patches. Also, a big "Thank you!" goes to Rashid N. Achilov shelton@sentry.granch.ru, who convinced us to port &smb4k; to FreeBSD and helped us a great deal to achieve this goal.