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
将安装内核模块。