UDISKIE(8) udiskie UDISKIE(8)

udiskie - سوارکننده خودکار برای رسانه‌های جداشدنی

udiskie [OPTIONS]

udiskie-mount [OPTIONS] (-a | DEVICE...)

udiskie-umount [OPTIONS] (-a | PATH...)

برنامه udiskie یک رابط کاربری برای udisks2 است که با پایتون نوشته شده است. هدف اصلی آن سوار کردن خودکار رسانه‌های جداشدنی مانند دیسک‌های نوری (CD) یا فلش مموری‌ها است. این برنامه دارای اعلان‌های اختیاری سوار شدن، نماد سینی سیستم (tray) مبتنی بر GTK و ابزارهای خط فرمان سطح کاربر برای عملیات دستی سوار کردن و پیاده کردن است. رسانه در دایرکتوری جدیدی در /media یا /run/media/USER/ با استفاده از نام دستگاه در صورت امکان سوار خواهد شد.

-h, --help

نمایش پیام راهنما و خروج.

-V, --version

نمایش نسخه و خروج.

-v, --verbose

خروجی با جزئیات کامل.

-q, --quiet

خروجی بی‌صدا (حداقل پیام‌ها).

-c FILE, --config=FILE

تعیین فایل پیکربندی.

-C, --no-config

عدم استفاده از هیچ فایل پیکربندی.

-p COMMAND, --password-prompt=COMMAND

دستور دریافت گذرواژه. رشته با ویژگی‌های دستگاه به عنوان آرگومان‌های کلیدی قالب‌بندی می‌شود، به عنوان مثال:
-p "zenity --entry --hide-text --text 'Enter password for {device_presentation}:'"

-P, --no-password-prompt

غیرفعال کردن قفل‌گشایی دستگاه‌های LUKS.

-a, --automount

فعال‌سازی سوار کردن خودکار دستگاه‌های جدید (پیش‌فرض).

-A, --no-automount

غیرفعال کردن سوار کردن خودکار دستگاه‌های جدید.

-n, --notify

فعال‌سازی اعلان‌های پنجره‌ای (pop-up) (پیش‌فرض).

-N, --no-notify

غیرفعال کردن اعلان‌های پنجره‌ای.

-t, --tray

نمایش نماد در سینی سیستم (tray).

-s, --smart-tray

نمایش نماد سینی هوشمند که در صورت نبود عملیات در دسترس، به صورت خودکار پنهان می‌شود.

-T, --no-tray

غیرفعال کردن نماد سینی سیستم (پیش‌فرض).

-f PROGRAM, --file-manager=PROGRAM

تعیین برنامه برای باز کردن دایرکتوری‌های سوارشده. پیش‌فرض 'xdg-open' است. برای غیرفعال کردن این ویژگی یک رشته خالی ارسال کنید.

-F, --no-file-manager

غیرفعال کردن مرور فایل‌ها.

--terminal=PROGRAM

تنظیم خط فرمان ترمینال برای باز کردن دایرکتوری‌های سوارشده. پیش‌فرض هیچ است! برای غیرفعال کردن این ویژگی یک رشته خالی ارسال کنید.

--no-terminal

غیرفعال کردن اقدام ترمینال.

--appindicator

استفاده از AppIndicator3 برای نماد وضعیت. اگر در Ubuntu/Unity نمادی نشان داده نمی‌شود از این گزینه استفاده کنید.

--no-appindicator

استفاده از Gtk.StatusIcon برای نماد وضعیت (پیش‌فرض).

--password-cache MINUTES

ذخیره موقت گذرواژه‌ها برای پارتیشن‌های LUKS در حافظه موقت و تنظیم زمان انقضا بر حسب دقیقه.

--no-password-cache

عدم ذخیره گذرواژه‌ها در حافظه موقت (پیش‌فرض).

--event-hook COMMAND

دستور برای اجرا هنگام رویدادهای دستگاه. رشته دستور با استفاده از نام رویداد و فهرستی از ویژگی‌های دستگاه قالب‌بندی می‌شود (به زیر مراجعه کنید)، به عنوان مثال:
--event-hook "zenity --info --text '{event}: {device_presentation}'"

--no-event-hook

بدون دستور اعلان رویداد (پیش‌فرض).

-a, --all

سوار کردن تمامی دستگاه‌های مدیریت‌شده.

-r, --recursive

سوار کردن بازگشتی پارتیشن‌های متن‌آشکار (cleartext) پس از قفل‌گشایی یک دستگاه LUKS. این عمل هنگام اجرای دیمن udiskie به صورت پیش‌فرض رخ می‌دهد.

-R, --no-recursive

غیرفعال کردن سوار کردن بازگشتی (پیش‌فرض).

-o OPTIONS, --options=OPTIONS

تنظیم گزینه‌های سوار کردن (mount options).

-a, --all

پیاده کردن تمامی دستگاه‌های مدیریت‌شده.

-d, --detach

جدا کردن درایو، به عنوان مثال با قطع برق درگاه فیزیکی آن.

-D, --no-detach

عدم قطع برق و جداسازی درایو (پیش‌فرض).

-e, --eject

بیرون دادن رسانه از درایو، مانند CDROM.

-E, --no-eject

عدم بیرون دادن رسانه (پیش‌فرض).

-f, --force

جداسازی اجباری (پیاده کردن بازگشتی).

-F, --no-force

عدم اجبار در جداسازی (پیش‌فرض).

-l, --lock

قفل کردن دستگاه پس از پیاده کردن (پیش‌فرض).

-L, --no-lock

عدم قفل کردن دستگاه.

اجرای udiskie در ~/.xinitrc:

udiskie &

پیاده کردن رسانه و خاموش کردن درگاه دستگاه USB:

udiskie-umount --detach /media/Sticky

سوار کردن تمام رسانه‌ها:

udiskie-mount -a

سوار کردن /dev/sdb1:

udiskie-mount /dev/sdb1

فایل .config/udiskie/config.yml می‌تواند برای پیکربندی مقادیر پیش‌فرض پارامترهای خط فرمان و سفارشی‌سازی تنظیمات بیشتر استفاده شود. مسیر واقعی بسته به $XDG_CONFIG_HOME ممکن است متفاوت باشد. قالب فایل YAML است؛ به https://en.wikipedia.org/wiki/YAML مراجعه کنید. اگر نمی‌خواهید PyYAML را نصب کنید، می‌توان از فایل معادل JSON با نام config.json استفاده کرد.

# This is an example (nonsense) configuration file for udiskie.
program_options:
  # Configure defaults for command line options
  tray:             auto    # [bool] Enable the tray icon. "auto"
                            # means auto-hide the tray icon when
                            # there are no handled devices.
  menu:             flat    # ["flat" | "nested"] Set the
                            # systray menu behaviour.
  automount:        false   # [bool] Enable automatic mounting.
  notify:           true    # [bool] Enable notifications.
  password_cache:   30      # [int] Password cache in minutes. Caching is
                            # disabled by default. It can be disabled
                            # explicitly by setting it to false
  file_manager:     xdg-open
    # [string] Set program to open directories. It will be invoked
    # with the folder path as its last command line argument.
  terminal:         'termite -d'
    # [string] Set terminal command line to open directories. It will be
    # invoked with the folder path as its last command line argument.
  password_prompt: ["gnome-keyring-query", "get", "{id_uuid}"]
    # [string|list] Set command to retrieve passwords. If specified
    # as a list it defines the ARGV array for the program call. If
    # specified as a string, it will be expanded in a shell-like
    # manner. Each string will be formatted using `str.format`. For a
    # list of device attributes, see below. The two special string values
    # "builtin:gui" and "builtin:tty" signify to use udiskie's
    # builtin password prompt.
  event_hook: "zenity --info --text '{event}: {device_presentation}'"
    # [string|list] Set command to be executed on any device event.
    # This is specified like `password_prompt`.
device_config:
  # List of device option rules. Each item can match any combination of device
  # attributes. Additionally, it defines the resulting action (see below).
  # Any rule can contain multiple filters (AND) and multiple actions.
  # Only the first matching rule that defines a given action is used.
  # The rules defined here are simply prepended to the builtin device rules,
  # so that it is possible to completely overwrite the defaults by specifying
  # a catch-all rule (i.e. a rule without device attributes).
  # Filter rules can be passed a list of values, in which case the rule is matched
  # if the attribute matches any of the values in the list.
- device_file: /dev/dm-5    # [filter]
  ignore:      false        # [action] never ignore this device
- id_uuid:                  # [filter] match by device UUID
  - 9d53-13ba               # This rule matches on either of these uids
  - 8675-309a
  options: [noexec, nodev]  # [action] mount options can be given as list
  ignore:  false            # [action] never ignore this device (even if fs=FAT)
  automount: false          # [action] do not automount this device
- id_type: vfat             # [filter] match file system type
  ignore:  true             # [action] ignore all FAT devices
- id_type: ntfs             # [filter] (optional)
  skip: true                # [action] skip all further (even builtin) rules
                            # for all matched devices, and resolve action result
                            # on parent device
- ignore:    true           # never mount/unmount or even show this in the GUI
  automount: false          # show but do not automount this device
  options: []               # additional options to be passed when mounting
- id_uuid: ...              # [filter] match device by UUID
  keyfile: /path/to/keyfile # [action] use keyfile to unlock a luks encrypted
                            # device, bypassing the password prompt
mount_options:              # [deprecated] do not use
ignore_device:              # [deprecated] do not use
notifications:
  # Customize which notifications are shown for how long. Possible
  # values are:
  #   positive number         timeout in seconds
  #   false                   disable
  #   -1                      use the libnotify default timeout
  timeout:          1.5     # set the default for all notifications
  # Specify only if you want to overwrite the default:
  device_mounted:   5       # mount notification
  device_unmounted: false   # unmount notification
  device_added:     false   # device has appeared
  device_removed:   false   # device has disappeared
  device_unlocked:  -1      # encrypted device was unlocked
  device_locked:    -1      # encrypted device was locked
  job_failed:       -1      # mount/unlock/.. has failed
quickmenu_actions: [mount, unmount, unlock, terminal, detach, delete]
  # List of actions to be shown in the quickmenu or the special value 'all'.
  # The quickmenu is shown on left-click if using flat menu type.
notification_actions:
  # Define which actions should be shown on notifications. Note that there
  # are currently only a limited set of actions available for each
  # notification. Events that are not explicitly specified show the default
  # set of actions. Specify an empty list if you don't want to see any
  # notification for the specified event:
  device_mounted:   [browse]
  device_added:     [mount]
icon_names:
  # Customize the icon set used by the tray widget. Each entry
  # specifies a list of icon names. The first installed icon from
  # that list will be used.
  media:   [drive-removable-media, media-optical]
  browse:  [document-open, folder-open]
  terminal: [terminal, terminator, xfce-terminal]
  mount:   [udiskie-mount]
  unmount: [udiskie-unmount]
  unlock:  [udiskie-unlock]
  lock:    [udiskie-lock]
  eject:   [udiskie-eject, media-eject]
  detach:  [udiskie-detach]
  delete:  [udiskie-eject]
  quit:    [application-exit]

تمامی کلیدها اختیاری هستند. در صورت عدم تعیین، مقادیر پیش‌فرض منطقی اعمال می‌شوند.

برخی از ورودی‌های پیکربندی از ویژگی‌های دستگاه استفاده می‌کنند. فهرست زیر از ویژگی‌ها در حال حاضر در دسترس است، اما هیچ تضمینی برای در دسترس ماندن همیشگی آن‌ها وجود ندارد:

Attribute               Hint/Example
is_drive
is_block
is_partition_table
is_partition
is_filesystem
is_luks
is_loop
is_toplevel
is_detachable
is_ejectable
has_media
device_file             block device path, e.g. "/dev/sdb1"
device_presentation     display string, e.g. "/dev/sdb1"
device_size             block device size
device_id               unique, persistent device identifier
id_usage                E.g. "filesystem" or "crypto"
is_crypto
is_ignored
id_type                 E.g. "ext4" or "crypto_LUKS"
id_label                device label
id_uuid                 device UUID
is_luks_cleartext
is_external             udisks flag HintSystem=false
is_systeminternal       udisks flag HintSystem=true
is_mounted
mount_paths             list of mount paths
mount_path              any mount path
is_unlocked
in_use                  device or any of its children mounted
should_automount
ui_label
loop_file               file backing the loop device
setup_by_uid            user that setup the loop device
autoclear               automatically delete loop device after use
symlinks
drive_model
drive_vendor
drive_label
ui_device_label
ui_device_presentation
ui_id_label
ui_id_uuid

udisks(1)

https://www.freedesktop.org/wiki/Software/udisks

می‌توانید برای گزارش هرگونه مشکل، پرسیدن سوالات عمومی یا پیشنهاد ویژگی‌های جدید از بخش مسائل گیت‌هاب استفاده کنید. اگر گیت‌هاب ندارید یا ترجیح نمی‌دهید، می‌توانید از طریق ایمیل تماس بگیرید:

https://github.com/coldfix/udiskie/issues

thomas@coldfix.de

08/07/2026 udiskie