Я пытаюсь использовать nfsiostat на Ubuntu 18.04, работающей в AWS со смонтированной файловой системой EFS.
Все, что я пробую, возвращает это сообщение об ошибке:
Traceback (most recent call last):
File "/usr/sbin/nfsiostat", line 640, in
iostat_command(prog)
File "/usr/sbin/nfsiostat", line 593, in iostat_command
devices = list_nfs_mounts(origdevices, mountstats)
File "/usr/sbin/nfsiostat", line 495, in list_nfs_mounts
for device, descr in list(mountstats.items()):
TypeError: 'list' object is not callable
Я нашел что list_nfs_mounts
функция вызывала проблему. Локальная переменная list
перезаписывает встроенную функцию того же имени.
Я обновил функцию к тому, что следует, и это, кажется, работает теперь:
def list_nfs_mounts(givenlist, mountstats):
"""return a list of NFS mounts given a list to validate or
return a full list if the given list is empty -
may return an empty list if none found
"""
xlist = []
if len(givenlist) > 0:
for device in givenlist:
stats = DeviceData()
stats.parse_stats(mountstats[device])
if stats.is_nfs_mountpoint():
xlist += [device]
else:
for device, descr in list(mountstats.items()):
stats = DeviceData()
stats.parse_stats(descr)
if stats.is_nfs_mountpoint():
xlist += [device]
return xlist