我正在运行 Ubuntu 13.04,我的电脑中有多个硬盘,它们在启动器中都显示相同的图标。是否可以逐个修改它们的图标,或者至少更改它们的颜色以更好地找到我要查找的内容?
答案1
您可以使用 udev 规则来匹配您的设备,然后分配一个图标。
注意:在这个例子中,我将更改 3 个设备的图标,USB 闪存盘、带有 Opensuse 的分区和带有 Linux Mint 的分区(Raid)。
适用于 Ubuntu 12.10 及更新版本。
1)我的桌面上有 3 个针对每个设备的图标(2 张 png 和 1 张 svg 图像),将3个图标复制到/usr/share/pixmaps
文件夹中,并赋予其权限。
cd ~/Desktop
sudo cp linuxmint.svg pendrive.png opensuse.png /usr/share/pixmaps/
cd /usr/share/pixmaps/
sudo chmod 644 linuxmint.svg pendrive.png opensuse.png
2)列出 usb pendrive 以了解“供应商编号”和“id产品”在终端中输入:
lsusb
记下“ID”后面的数字。
在我的例子中:
总线 002 设备 003:ID 0930:6545 东芝公司金士顿 DataTraveler 102 闪存驱动器 / HEMA 闪存驱动器 2 GB / PNY Attache 4GB 闪存棒
这“供应商编号”是0930和“id产品”是6545
我将把该信息与我的 USB 闪存盘的“ATTRS{idVendor}”和“ATTRS{idProduct}”键进行匹配。
3)确保您的分区已安装,然后列出您的分区并找到属性。
df -h
在我的例子中:
/dev/sdc3 289G 6.3G 282G 3% /media/hermes/OpenSuse
/dev/mapper/pdc_cjjfccgf3 296G 68G 213G 25% /media/hermes/Linux-Mint-Raid
4)使用以下命令列出 OpenSuse 分区的属性“udevadm info -a -n 设备名称”
udevadm info -a -n /dev/sdc3
您可以使用此信息来匹配分区。
在这个例子中,我将匹配“核心”和“子系统”OpenSuse 的密钥。
内核==“sdc3”,子系统==“block”
写下此信息。
5)如果Linux-Mint-Raid分区,我将使用“子系统”,“属性{尺寸}”和“ID_FS_LABEL”环境变量。
使用以下命令列出 Linux-Mint-Raid 分区的属性和变量“udevadm info -a -n 设备名称”和“udevadm info -q all -n 设备名称”。
udevadm info -a -n /dev/mapper/pdc_cjjfccgf3
udevadm info -q all -n /dev/mapper/pdc_cjjfccgf3
创建 udev 规则。
6)前往/etc/udev/rules.d文件夹并使用您最喜欢的编辑器创建一个文件。
例如:99-设备-图标.规则
cd /etc/udev/rules.d/
sudo nano 99-devices-icons.rules
记下与每个设备匹配的信息,然后使用环境{UDISKS_ICON_NAME}您将分配一个图标。
在我的例子中:
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6545", ENV{UDISKS_ICON_NAME}="pendrive" KERNEL=="sdc3", SUBSYSTEM=="block", ENV{UDISKS_ICON_NAME}="opensuse" SUBSYSTEM=="block", ATTR{size}=="629145600", ENV{ID_FS_LABEL}=="Linux-Mint-Raid", ENV{UDISKS_ICON_NAME}="linuxmint"
在 nano 中你可以使用以下命令保存更改:
- Ctrl + O,Enter然后Ctrl +X
7)要刷新 udev 规则并查看更改,请在终端窗口中输入:
sudo udevadm trigger
适用于 Ubuntu 12.04。
相同,但你应该分配图标ENV{UDISKS_PRESENTATION_ICON_NAME}而是 ENV{UDISKS_ICON_NAME}
ATTRS{idVendor}=="0930", ATTRS{idProduct}=="6545", ENV{UDISKS_PRESENTATION_ICON_NAME}="pendrive"
KERNEL=="sdc3", SUBSYSTEM=="block", ENV{UDISKS_PRESENTATION_ICON_NAME}="opensuse"
SUBSYSTEM=="block", ATTR{size}=="629145600", ENV{ID_FS_LABEL}=="Linux-Mint-Raid", ENV{UDISKS_PRESENTATION_ICON_NAME}="linuxmint"
希望这可以帮助。