㈠ linux命令之ls -al
ls -al命令来观察文件权限,每个文件的权限都用10位表示,其中第一段占1位,表示第一个字符代表这个文件的类型(目录,文件或链接文件)。
若为“d”则是目录,若为“-”则是文件,若为“l”则表示链接文件,若为“”则表示为设备文件里面的可供存储的周边设备,若为“c”则表示为设备文件里面的串行端口设备,如键盘鼠标。
第二段占3位,表示权限,均为[rwx]的三个参数的组合。其中r表示可读,w表示可写,x表示可执行,如果没有权限,则会显示减号“-”。
(1)linux设备文件名称修改扩展阅读:
Linux命令注意事项:
Linux的命令(也包括文件名等等)对大小写是敏感的,也就是说,如果你输入的命令大小写不对的话,系统是不会做出你期望的响应的。
Linux常用的命令:
clear,这个命令是用来清除屏幕的,它不需要任何参数,和dos下面的cls具有相同的功能,如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息。
目录切换(cd),使用cd(Change Directory)命令可以在不同目录之间切换。
列出目录中的文件(ls),在Linux命令行终端中使用的最多的命令就是这个ls,它可以帮助我们列出当前目录下都有哪些文件。
参考资料来源:网络-Linux命令
㈡ 多个linux系统共享一个FC存储后,每次重启后/dev/sd*的设备名称都会自动变话,如何固定名称
手动固定设备名称:
1、获取scsi设备的UUID,编辑/etc/scsi_id.conf文件,注释掉option=-b,将option=-g前面的#号去掉,保存退出。
2、用root用户执行#scsi_id -g -s /dev/sdx,x为a、b、c...。会得到类似如下的一串16进制的数字。
例如:
[root@devices]# scsi_id -g -s /dev/sdc
3、建立udev规则文件。编辑/etc/udev/rules.d/20-names.rules 添加如下内容:KERNEL="sd*", BUS="scsi", PROGRAM="/sbin/scsi_id",RESULT="3600a0b80001315427b625e", NAME="sda%n"重新启动系统
参考:http://www.oralife.cn/html/2009/491_static_ude.html
㈢ Linux修改pcie resource文件
方法如下:
设备配置空间修改
修改PCIE配置空间的命令为:setpci。
NAME
setpci _ configure PCI devices
SYNOPSIS
setpci [options] devices
对于setpci命令来说,主要的参数如下:-s [[[[]:]]:][][.[]]
就是我们要指定设备,然后修改其配置空间。常用命令格式和参数如下:
setpci -s BUSID:DEVID.FUNCID REGISTEROFFSET.B=NEWVALUE
setpci -s BUSID:DEVID.FUNCID REGISTEROFFSET.W=NEWVALUE
setpci -s BUSID:DEVID.FUNCID REGISTEROFFSET.L=NEWVALUE
如:
setpci -s 0:14.0 60.B=6
是将设备0:14.0设备,PCI配置空间便宜量为0x60,写入新的字节值为6。查看PCI配置空间修改是否生效,可以通过lspci命令来查看,如设置0:14.0后,读取命令为lspci _s 0:14.0 _xxx。
㈣ Linux系统怎么修改磁盘参数(名称,盘符等等
1.mknod
用法:mknod设备名称【bcp】【Major】【Minor】
设备种类,
b:设置设备名称为外部的外部的存储设备文件eg:硬盘
c:设置设备名称为外部输入设备文件eg:键盘/鼠标
P:设置设备名称为FIFO文件
Major:主要设备名称代码
Minor:次要设备代码
eg:【~~~】#mknod/dev/hda10310
注:3和10只有特殊意义的,不可随意的设置
在linux系统中,所有的设备都是以文件的形式来表示的,也就是通过文件的主与次来表示的,硬盘的主与次如下所示:
硬盘代号主【Major】次【Minor】
/dev/sda30~63
/dev/sdb364~127
/dev/sdc220~63
/dev/sdd2264~127
2.e2label
【~~~~~~】#e2label设备名称新的Label名称
【~~~~~~】#e2label/dev/sda1sda1
【~~~~~~】#mpe2fs-h/dev/sda1
该命令的主要的主要作用是用来修改“磁盘的表头数据”,即磁盘的卷标。但是请注意,如果你刚好有两个硬盘,如果你修改了卷标,刚好和另外的有个分区有相同的卷标,系统就无法判断哪个分区是正确的。
这些命令都是不算是特别常用的,常用的命令你可以学习下这里。第2章 新手必须掌握的Linux命令。www.linuxprobe.com/chapter-02.html,最后我觉得还算是写干货,对于新手很适合。
3.tune2fs
【~~~~~~~】#tune2fs【-jlL】设备号
-j:将ext2的文件系统转换为ext3的文件系统
-l:将超级快内的数据度出来,该功能类似于mpe2fs-h的功能
-L:修改文件系统的卷标,类似于e2label的功能
eg:【~~~~~~】#tune2fs-l/dev/sda1
更多的功能请参考mantune2fs
4.hdparm
如硬盘有DMA模式的功能,系统却没有启动它,那么,硬盘的读取性能可能会降低一半以上,就可以使用该命令来启动DMA模式的功能。该命令有很多的高级的参数设置值,所以不建议随便的修改,否则容易造成硬盘崩溃,使用这个命令,最多的就是启动DMA功能,并测试硬盘的访问性能就可以了。
【~~~~~~~】#hdparm【-icdmXTt】设备名称
-i:将系统启动过程中使用的本身的核心的驱动程序来测试硬盘的测试值取出来,但是这些值不一定是正确的
-d:设置是否启用dma模式,-d1为启动,-d0为取消。
㈤ linux 文件操作问题
我写第一个吧,仅供参考:
/*---------code-------------*/
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <time.h>
void what_is( int);
int main()
{
struct stat info;
if( stat("/etc/passwd", &info) == -1 )
perror("etc/passwd");
else
what_is( info.st_mode );
printf("last access time is %s\n", ctime(&info.st_mtime));
return 0;
}
void what_is( int mode )
{
if( S_ISDIR(mode) ) printf("/etc/passwd is Directory file.\n");
if( S_ISFIFO(mode) ) printf("/etc/passwd is Fifo file.\n");
if( S_ISLNK(mode) ) printf("/etc/passwd is link file.\n");
if( S_ISREG(mode) ) printf("/etc/passwd is regular file.\n");
if( S_ISSOCK(mode) ) printf("/etc/passwd is socket file.\n");
}
/*--------end--------*/
问一下楼上那个兄弟,你说的猪八戒是什么?
㈥ 在linux下如何将ttyS0改成别的号,比如ttyS4什么的,我的系统只有一个串口。
不明白楼抄主为什么要袭这样做,不过是有办法的。
ttyS0只是代表一个设备节点,它存在主设备号和次设备号。一个设备节点包含了这两个设备号,Linux系统通过这两个号唯一的确定一个驱动实例。
一个实际存在的串口只能够存在一个驱动实例。大多数的驱动实例只支持单一现成的读写操作,所以不允许多个程序同时打开设备文件,典型的一种就是串口,它只允许一个程序打开。
一个驱动实例对应一组唯一的主设备号和次设备号,多个设备节点可以指向同一组设备号。
下面是结论:
不论如何更改ttyS0,串口只能打开一次。
可以通过简单的cp /dev/ttyS0 /dev/ttyS4将设备节点的名称复制为/dev/ttyS4,或者使用mv命令对名称进行修改,但是不能改变串口只能打开一次的状况。
㈦ 网卡 linux 设备名
一般有线的为eth0,无线为wlan0,配置可以用Ifconfig命令
㈧ linux 如何通过安装补丁,修改usb设备名称
具体的操作过程如下: 1.接入usb设备,然后运行命令:devlabel add -d /dev/sda1 -s /dev/usbdevice (--automount 可去掉!) /dev/sda1是usb设备名称,具体可以用 -l查看,如果fdisk不能显示,可以用一个万能的方法: (#表示0,1,2,3....) 检测/proc/scsi/usb-storage-#是否存在; 如果存在,检测/proc/scsi/usb-storage-#/#是否存在; 如果存在,检查文件/proc/scsi/usb-storage-#/#中最后一行Attach:是否是YES; 如果是YES,那么 0 = sda, 1=sdb, 2=sdc ; /dev/usbdevice是要使用的用户定义的设备名称,这个可以放在任意的目录中,名字大家自己定 automount指定:在 devlabel 重新启动时,如果 /etc/fstab 中有这个设备项目而且这个设备项目存在(找到了带有同一 UUID 的设备),那么就自动挂载这个项目。 2.建一个目录/mnt/usb 3.打开/etc/fstab,在里面添加一行:/dev/usbdevice /mnt/usb auto noauto,owner 0 0 这时就OK了,以后插入usb存储设备时就会自动挂载到/mnt/usb目录下了(前提是要有这个目录) 解决思想:当某个 USB 设备被插入,hotplug 就会运行 updfstab 程序。如果这个usb贮存设备存在,该程序会为它在 /etc/fstab 中添加一项记录。所添加的这一行包含实际设备名称(如 /dev/sda1)和 kudzu 选项。kudzu 选项通知 Kudzu工具如果设备不存在就删除这一行。因为这一行是 devlabel 所需的,你必须删除 kudzu 选项才能使这一行被保留在文件内。你还需把设备名称改成 devlabel 设备名称(如 /dev/usbdevice),并创建挂载点(如 /mnt/usb)。所以修改后的就是上面的第3步. 最后,还有一种最最简单的方法,也是我现在使用的方法哈: 可以直接打开/etc/hotplug/usb.agent ,在里面找到"add)",在其中的 if [ -x /sbin/devlabel ]; then /sbin/devlabel restart fi 后面加上 [ -x /usr/sbin/udisk ]&& /usr/sbin/udisk 其中udisk是一个简单的挂载脚本: #! /bin/sh mount|grep /mnt/usb if [ "$?" = "0" ]; then umount /mnt/usb rmdir /mnt/usb else mkdir /mnt/usb mount /dev/sda1 /mnt/usb fi 这样做的目的是:当usb设备接入时,hotplug程序就会自动运行,在运行脚本中加入一个挂载脚本,不就一切OK了么~~ 不过上面的讨论都只能用于挂载,卸载还是必须用umount(选第3种办法的直接打udisk),这是同WIN一样的.
㈨ linux常用命令
ftp 传输文件
telnet 登录到远程计算机上
r - 使用各种远程命令
netstat 查看网络的状况
nslookup 查询域回名和IP地址的对应答
finger 查询某个使用者的信息
ping 查询某个机器是否在工作
使用ftp命令进行远程文件传输
ls 列出远程机的当前目录
cd 在远程机上改变工作目录
lcd 在本地机上改变工作目录
ascii 设置文件传输方式为ASCII模式
binary 设置文件传输方式为二进制模式
close终止当前的ftp会话
hash 每次传输完数据缓冲区中的数据后就显示一个#号
get(mget) 从远程机传送指定文件到本地机
put(mput) 从本地机传送指定文件到远程机
open 连接远程ftp站点
quit断开与远程机的连接并退出ftp
? 显示本地帮助信息
! 转到Shell中
㈩ linux多路径mpath怎么修改名称
Linux下多路径Multipath的简单配置
1、启用Multipath:
(1)启动multipathd服务
#service multipathd start 或者 #/etc/init.d/multipathd start
(2)修改multipath配置文件/etc/multipath.conf:
a 默认情况下所以的设备都在multipath的黑名单中,所以即使启动了multipathd服务并加在了内核模块,multipath也不会对链路进行聚合,找到下面的3行并注释掉(在行首加上#号)
#devnode_blacklist {
# devnode "*"
#}
b 默认情况下multipath生成dm设备之后,会同时在/dev/mapper/下生成以磁盘wwid为名的符号链接指向对应的dm设备。如果想生成mpath设备,则需要打开user_friendly_names选项,将配置文件中下面3行的注释取消(去掉行首的#号)
defaults {
user_friendly_names yes
}
(3)重启multipathd服务(修改multipath.conf文件之后都应该重启multipath服务)
(4)扫描磁盘
#multipath -v2
使用上面命令之后,系统中会出现链路聚合之后的dm设备,同时也会在/dev/mapper/、/dev/mpath/目录下生成相应的设备。
查看multipath拓扑结构
#multipath -ll
另外一个重要的文件是/var/lib/multipath/bindings,这个文件中是磁盘的别名和wwid的对应关系,典型的例子是:
mpath0
(5)需要注意的问题,multipath也会为本地的磁盘生成相应的dm设备,所以需要在multipath.conf中将本地磁盘加入到黑名单,配置的方法可以参考下面的示例
devnode_blacklist {
wwid
devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
}
如上例所示,可以通过wwid或者设备名将本地磁盘加入到黑名单中。
2、固定multipath设备的命名:
通过wwid和设备别名一一对应的方式固定multipath设备的名称,这些和别名对应的设备会被创建到/dev/mapper/目录下,使用时直接使用这个目录的的设备。
(1)通过/var/lib/multipath/bindings可以获取所有磁盘的wwid,确定每个磁盘的别名之后,在/etc/multipath.conf中的multipaths段中加入相应的配置,如将wwid为的磁盘命名为etl01,wwid为的磁盘命名为etl02,配置文件如下所示
multipaths {
multipath {
wwid
alias etl01
}
multipath {
wwid
alias etl02
}
}
(2)配置完成之后,重启multipathd服务,使用下面的命令清空已有的multipath记录
#multipath -F
然后使用multipath -v2重新扫描设备,这时会在/dev/mapper/目录下生成和别名对应的设备文件。
#ls /dev/mapper/
control etl01 eth02
(3)如果多台服务器的存储链路完全相同,并希望各服务器上同一磁盘的设备名相同,可以在一台服务器上配置好别名绑定之后,将multipaths { }中间的配置复制到其他服务器,这样各台服务器/dev/mapper/下面的设备将会保持一致。