A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
modprobe 命令用于智能地向内核中加载模块或者从内核中移除模块。模块是一段代码,可扩展操作系统内核的功能,而无需重新启动。 加载后,模块驻留在内存中,并且可以实例化多次。可以将它们视为类似于设备驱动程序。
modprobe 使用 depmod 生成的依赖关系列表和硬件映射将模块智能加载或卸载到内核中。 它分别使用较低级的程序 insmod 和 rmmod 进行实际的插入和删除。
虽然可以手动调用 insmod 和 rmmod,但建议使用 depmod 加载和卸载模块,以确保在进行更改之前考虑任何模块间的依赖关系。
- modprobe [-v] [-V] [-C config-file] [-n] [-i] [-q] [-b] [modulename]
- [module parameters...]
- modprobe [-r] [-v] [-n] [-i] [modulename...]
- modprobe [-c]
- modprobe [--dump-modversions] [filename]
- -a或--all:载入全部的模块;
- -c或--show-conf:显示所有模块的设置信息;
- -d或--debug:使用排错模式;
- -r或--remove:模块闲置不用时,即自动卸载模块;
- -v或--verbose:执行时显示详细的信息;
- -V或--version:显示版本信息;
- -help:显示帮助。
- 模块名:要加载或移除的模块名称。
modprobe 查看 modules 的配置文件:
- $modprobe -c
- #这里,可以查看modules的配置文件,比如模块的alias别名是什么等。
- #会打印许多行信息,例如其中的一行会类似如下:
- .....
- alias symbol:vsock_addr_validate vsock
- alias symbol:vsock_bind_table vsock
- alias symbol:vsock_connected_table vsock
- alias symbol:vsock_core_exit vsock
- alias symbol:vsock_core_get_transport vsock
- alias symbol:vsock_deliver_tap vsock
- alias symbol:vsock_enqueue_accept vsock
- alias symbol:vsock_find_bound_socket vsock
- alias symbol:vsock_find_connected_socket vsock
- alias symbol:vsock_for_each_connected_socket vsock
- alias symbol:vsock_insert_connected vsock
- alias symbol:vsock_pending_work vsock
- alias symbol:vsock_remove_bound vsock
- alias symbol:vsock_remove_connected vsock
- alias symbol:vsock_remove_pending vsock
- alias symbol:vsock_remove_sock vsock
- alias symbol:vsock_remove_tap vsock
- alias symbol:vsock_stream_has_data vsock
- alias symbol:vsock_stream_has_space vsock
- alias symbol:vsock_table_lock vsock
- alias symbol:vxlan_dev_create vxlan
- alias symbol:wa_create wusb_wa
- alias symbol:wa_dti_start wusb_wa
- alias symbol:wa_process_errored_transfers_run wusb_wa
- alias symbol:wa_urb_dequeue wusb_wa
- alias symbol:wa_urb_enqueue wusb_wa
- alias symbol:wa_urb_enqueue_run wusb_wa
- alias symbol:wdev_to_ieee80211_vif mac80211
- alias symbol:whci_wait_for whci
- alias symbol:wiphy_apply_custom_regulatory cfg80211
- alias symbol:wiphy_free cfg80211
- alias symbol:wiphy_new_nm cfg80211
- alias symbol:wiphy_register cfg80211
- alias symbol:wiphy_rfkill_set_hw_state cfg80211
- alias symbol:wiphy_rfkill_start_polling cfg80211
- alias symbol:wiphy_rfkill_stop_polling cfg80211
- alias symbol:wiphy_to_ieee80211_hw mac80211
- alias symbol:wiphy_unregister cfg80211
- alias symbol:wmi_driver_unregister wmi
- alias symbol:wmi_evaluate_method wmi
- alias symbol:wmi_get_event_data wmi
- alias symbol:wmi_has_guid wmi
- alias symbol:wmi_install_notify_handler wmi
- alias symbol:wmi_query_block wmi
- alias symbol:wmi_remove_notify_handler wmi
- alias symbol:wmi_set_block wmi
- alias symbol:wmidev_block_query wmi
- alias symbol:wmidev_evaluate_method wmi
- alias symbol:wpan_phy_find ieee802154
- alias symbol:wpan_phy_for_each ieee802154
- alias symbol:wpan_phy_free ieee802154
- alias symbol:wpan_phy_new ieee802154
- alias symbol:wpan_phy_register ieee802154
- alias symbol:wpan_phy_unregister ieee802154
- alias symbol:write_bytes_to_xdr_buf sunrpc
- alias symbol:write_dst dst
- alias symbol:wusb_cluster_id_get wusbcore
- alias symbol:wusb_cluster_id_put wusbcore
- alias symbol:wusb_dev_destroy wusbcore
- alias symbol:wusb_et_name wusbcore
- alias symbol:wusbd wusbcore
- alias symbol:wusbhc_b_create wusbcore
- alias symbol:wusbhc_b_destroy wusbcore
- alias symbol:wusbhc_chid_set wusbcore
- alias symbol:wusbhc_create wusbcore
- alias symbol:wusbhc_destroy wusbcore
- alias symbol:wusbhc_giveback_urb wusbcore
- alias symbol:wusbhc_handle_dn wusbcore
- alias symbol:wusbhc_mmcie_rm wusbcore
- alias symbol:wusbhc_mmcie_set wusbcore
- alias symbol:wusbhc_reset_all wusbcore
- alias symbol:wusbhc_rh_control wusbcore
- alias symbol:wusbhc_rh_start_port_reset wusbcore
- alias symbol:wusbhc_rh_status_data wusbcore
- alias symbol:x86_emulate_instruction kvm
- alias symbol:x86_set_memory_region kvm
- alias symbol:xc2028_attach tuner_xc2028
- alias symbol:xc4000_attach xc4000
- alias symbol:xc5000_attach xc5000
- alias symbol:xdr_buf_from_iov sunrpc
- alias symbol:xdr_buf_read_netobj sunrpc
- alias symbol:xdr_buf_subsegment sunrpc
- alias symbol:xdr_buf_trim sunrpc
- alias symbol:xdr_commit_encode sunrpc
- alias symbol:xdr_decode_array2 sunrpc
- alias symbol:xdr_decode_netobj sunrpc
- alias symbol:xdr_decode_string_inplace sunrpc
- alias symbol:xdr_decode_word sunrpc
- alias symbol:xdr_encode_array2 sunrpc
- alias symbol:xdr_encode_netobj sunrpc
- alias symbol:xdr_encode_opaque sunrpc
- alias symbol:xdr_encode_opaque_fixed sunrpc
- alias symbol:xdr_encode_string sunrpc
- alias symbol:xdr_encode_word sunrpc
- alias symbol:xdr_enter_page sunrpc
- alias symbol:xdr_init_decode sunrpc
- alias symbol:xdr_init_decode_pages sunrpc
- alias symbol:xdr_init_encode sunrpc
- alias symbol:xdr_inline_decode sunrpc
- alias symbol:xdr_inline_pages sunrpc
- alias symbol:xdr_partial_copy_from_skb sunrpc
- alias symbol:xdr_process_buf sunrpc
- alias symbol:xdr_read_pages sunrpc
- alias symbol:xdr_reserve_space sunrpc
- alias symbol:xdr_restrict_buflen sunrpc
- alias symbol:xdr_set_scratch_buffer sunrpc
- alias symbol:xdr_shift_buf sunrpc
- alias symbol:xdr_skb_read_bits sunrpc
- alias symbol:xdr_stream_pos sunrpc
- alias symbol:xdr_terminate_string sunrpc
- alias symbol:xdr_truncate_encode sunrpc
- ....
- alias symbol:xdr_write_pages sunrpc
- alias symbol:xen_privcmd_fops xen_privcmd
- alias symbol:xfrm4_tunnel_deregister tunnel4
- alias symbol:xfrm4_tunnel_register tunnel4
- alias symbol:xfrm6_mode_tunnel_input_deregister xfrm6_mode_tunnel
- alias symbol:xfrm6_mode_tunnel_input_register xfrm6_mode_tunnel
- alias symbol:xfrm6_tunnel_alloc_spi xfrm6_tunnel
- alias symbol:xfrm6_tunnel_deregister tunnel6
- alias symbol:xfrm6_tunnel_register tunnel6
- alias symbol:xfrm6_tunnel_spi_lookup xfrm6_tunnel
- alias symbol:xor_blocks xor
- alias symbol:xp_cpu_to_nasid xp
- alias symbol:xp_expand_memprotect xp
- alias symbol:xp_max_npartitions xp
- alias symbol:xp_pa xp
- alias symbol:xp_partition_id xp
- alias symbol:xp_region_size xp
- alias symbol:xp_remote_memcpy xp
- alias symbol:xp_restrict_memprotect xp
- alias symbol:xp_socket_pa xp
- alias symbol:xpc_clear_interface xp
- alias symbol:xpc_connect xp
- alias symbol:xpc_disconnect xp
- alias symbol:xpc_interface xp
- alias symbol:xpc_registrations xp
- alias symbol:xpc_set_interface xp
- alias symbol:xprt_adjust_cwnd sunrpc
- alias symbol:xprt_alloc sunrpc
- alias symbol:xprt_alloc_slot sunrpc
- alias symbol:xprt_complete_rqst sunrpc
- alias symbol:xprt_destroy_backchannel sunrpc
- alias symbol:xprt_disconnect_done sunrpc
- alias symbol:xprt_force_disconnect sunrpc
- alias symbol:xprt_free sunrpc
- alias symbol:xprt_get sunrpc
- alias symbol:xprt_load_transport sunrpc
- alias symbol:xprt_lock_and_alloc_slot sunrpc
- alias symbol:xprt_lookup_rqst sunrpc
- alias symbol:xprt_pin_rqst sunrpc
- alias symbol:xprt_put sunrpc
- alias symbol:xprt_register_transport sunrpc
- alias symbol:xprt_release_rqst_cong sunrpc
- alias symbol:xprt_release_xprt sunrpc
- alias symbol:xprt_release_xprt_cong sunrpc
- alias symbol:xprt_reserve_xprt sunrpc
- alias symbol:xprt_reserve_xprt_cong sunrpc
- alias symbol:xprt_set_retrans_timeout_def sunrpc
- alias symbol:xprt_set_retrans_timeout_rtt sunrpc
- alias symbol:xprt_setup_backchannel sunrpc
- alias symbol:xprt_unpin_rqst sunrpc
- alias symbol:xprt_unregister_transport sunrpc
- alias symbol:xprt_wait_for_buffer_space sunrpc
- alias symbol:xprt_wake_pending_tasks sunrpc
- alias symbol:xprt_write_space sunrpc
- alias symbol:xt_rateest_lookup xt_RATEEST
- alias symbol:xt_rateest_put xt_RATEEST
- alias symbol:xts_camellia_setkey camellia_x86_64
- alias symbol:xts_crypt xts
- alias symbol:xts_serpent_setkey serpent_avx_x86_64
- alias symbol:xts_twofish_setkey twofish_x86_64_3way
- alias symbol:zgid ib_core
- alias symbol:zl10036_attach zl10036
- alias symbol:zl10039_attach zl10039
用 modprobe
移除已经加载的模块:
- modprobe -r 模块名
- #这里,移除已加载的模块,和rmmod功能相同。
以下系列命令说明了使用 modprobe
的常用方法。 每个命令都带有 sudo
,因为它们需要 root
权限:
- sudo ln -s /path/to/your-kernel-module.ko /lib/modules/`uname -r`
- sudo depmod -a
- sudo modprobe your-kernel-module
这些命令执行以下操作:
/lib/modules/kernel-release
中创建指向我们的模块文件的符号软链接。 由外壳程序执行的命令 uname -r
(用反引号引起来)由外壳程序执行,并转换为代表我们的内核发行版的适当字符串。depmod -a
生成更新的依赖项列表,以确保我们正在安装的模块知道所有现有模块和依赖项。 在第三条命令中安装模块时,modprobe
将使用此依赖项列表。modprobe
将安装内核模块。