Linux: 磁盘与文件系统管理

标签: linux磁盘文件系统
13432人阅读 评论(1) 收藏 举报
分类:

http://blog.csdn.net/pipisorry/article/details/39649699

文件系统的简单操作

磁盘与目录的容量

df:列出文件系统的整体磁盘使用量;du:评估文件系统的磁盘使用量(常用在推估目录所占容量)

# df [-ahikHTm] [目录或文件名]
选项与参数:
-a  :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-k  :以 KBytes 的容量显示各文件系统;
-m  :以 MBytes 的容量显示各文件系统;
-h  :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-H  :以 M=1000K 取代 M=1024K 的进位方式;
-T  :连同该 partition 的 filesystem 名称 (例如 xfs) 也列出;
-i  :不用磁盘容量,而以 inode 的数量来显示

查看磁盘空闲及使用情况

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             63G  4.0K   63G   1% /dev
tmpfs            13G  2.2M   13G   1% /run
/dev/sda1       103G   17G   81G  18% /
/dev/sdb1       5.5T  1.2T  4.1T  22% /media/data

显示目录或文件的大小du

显示指定的目录或文件所占用的磁盘空间
# du [-ahskm] 文件或目录名称
选项与参数:
-a  :列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而已。
-h  :以人们较易读的容量格式 (G/M) 显示;
-s  :列出总量而已,而不列出每个各别的目录占用容量;
-S  :不包括子目录下的总计,与 -s 有点差别。
-k  :以 KBytes 列出容量显示;
-m  :以 MBytes 列出容量显示;

显示当前目录下子目录的使用空间大小

$ du -h --max-depth=1

#du -h --max-depth=1
881M    ./aufs
357K    ./containers
9.4G    ./docker
121K    ./graph
9.9M    ./init
11G    .

显示单个目录的总空间使用

du -sh [目录名] 返回该目录的大小

[linux文件及目录管理 ]

查看硬件信息---硬盘序列号

sudo hdparm -I /dev/sda | grep Serial
信息很全面,连硬盘型号,序列号,容量,接口,转速。
或者cat /sys/block/sda/device/model
如果不用指令,直接搜索打开disks工具,选择你的硬盘,然后也可以看到硬盘的序列号。

u盘序列号

ls /proc/scsi/usb-storage
cat /proc/scsi/usb-storage/(usb口在主板上定义ID)

链接文件ln

软链接:

ln -s /usr/bin/python3.4 /usr/bin/Python

可以使用通配符和相对路径(目录也可以相对路径创建软链接)

ln -s hadoop-*/ hadoop

使用符时不能多个匹配,多了会报错:后面那个hadoop is not a directory。

[每天一个linux命令(35):ln 命令]

皮皮blog



磁盘的分区、格式化、检验与挂载

lsblk 列出系统上的所有磁盘列表

“ list block device ”的缩写

# lsblk [-dfimpt] [device]
选项与参数:
-d  :仅列出磁盘本身,并不会列出该磁盘的分区数据
-f  :同时列出该磁盘内的文件系统名称
-i  :使用 ASCII 的线段输出,不要使用复杂的编码 (再某些环境下很有用)
-m  :同时输出该设备在 /dev 下面的权限数据 (rwx 的数据)
-p  :列出该设备的完整文件名!而不是仅列出最后的名字而已。
-t  :列出该磁盘设备的详细数据,包括磁盘伫列机制、预读写的数据量大小等
示例列出本系统下的所有磁盘与磁盘内的分区信息

{没有挂载的硬盘也会显示出来}

# lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0 232.4G  0 disk
├─sda1        8:1    0 104.5G  0 part /
├─sda2        8:2    0     1K  0 part
└─sda5        8:5    0 127.9G  0 part [SWAP]
sdb           8:16   0   5.5T  0 disk
└─sdb1        8:17   0   5.5T  0 part /media/data
nvme0n1     259:0    0 372.6G  0 disk
├─nvme0n1p1 259:1    0   512M  0 part
├─nvme0n1p2 259:2    0 244.2G  0 part /media/bdi/257097b9-90ac-473e-b8fa-b9252d43a41b
└─nvme0n1p3 259:3    0 127.9G  0 part

磁盘分区: gdisk/fdisk

“MBR 分区表请使用 fdisk 分区, GPT 分区表请使用 gdisk 分区!

fdisk

虽然 MBR 分区表在未来应该会慢慢的被淘汰,毕竟现在磁盘容量随便都大于 2T 以上了。而在 CentOS 7.x 中还无法完整支持 GPT 的 fdisk ,依旧有些旧的系统,以及虚拟机的使用上面,还是有小磁盘存在的空间!

查看磁盘分区情况另一个命令:fdisk -l

文件系统挂载与卸载

文件系统挂载mount

挂载点是目录, 而这个目录是进入磁盘分区(其实是文件系统)的入口。
  • 单一文件系统不应该被重复挂载在不同的挂载点(目录)中;
  • 单一目录不应该重复挂载多个文件系统;
  • 要作为挂载点的目录,理论上应该都是空目录才是。
# mount [-t 文件系统] 设备文件名  挂载点
选项与参数:
-a  :依照配置文件 [/etc/fstab](../Text/index.html#fstab) 的数据将所有未挂载的磁盘都挂载上来
-l  :单纯的输入 mount 会显示目前挂载的信息。加上 -l 可增列 Label 名称!
-t  :可以加上文件系统种类来指定欲挂载的类型。常见的 Linux 支持类型有:xfs, ext3, ext4,
      reiserfs, vfat, iso9660(光盘格式), nfs, cifs, smbfs (后三种为网络文件系统类型)
-n  :在默认的情况下,系统会将实际挂载的情况实时写入 /etc/mtab 中,以利其他程序的运行。
      但在某些情况下(例如单人维护模式)为了避免问题会刻意不写入。此时就得要使用 -n 选项。
-o  :后面可以接一些挂载时额外加上的参数!比方说帐号、密码、读写权限等:
      async, sync:   此文件系统是否使用同步写入 (sync) 或非同步 (async) 的
                     内存机制,请参考[文件系统运行方式](../Text/index.html#harddisk-filerun)。默认为 async。
      atime,noatime: 是否修订文件的读取时间(atime)。为了性能,某些时刻可使用 noatime
      ro, rw:        挂载文件系统成为只读(ro) 或可读写(rw)
      auto, noauto:  允许此 filesystem 被以 mount -a 自动挂载(auto)
      dev, nodev:    是否允许此 filesystem 上,可创建设备文件? dev 为可允许
      suid, nosuid:  是否允许此 filesystem 含有 suid/sgid 的文件格式?
      exec, noexec:  是否允许此 filesystem 上拥有可执行 binary 文件?
      user, nouser:  是否允许此 filesystem 让任何使用者执行 mount ?一般来说,
                     mount 仅有 root 可以进行,但下达 user 参数,则可让
                     一般 user 也能够对此 partition 进行 mount 。
      defaults:      默认值为:rw, suid, dev, exec, auto, nouser, and async
      remount:       重新挂载,这在系统出错,或重新更新参数时,很有用!

挂载示例

使用设备名称挂载

# mkdir /media/data    #创建挂载点目录

# lsblk    #或者 fdisk -l 查看外置硬盘的文件名

# mount /dev/sdb1 /media/data    #将外置硬盘/dev/sdb1挂载到目录/media/data下

# df

使用UUID挂载

# blkid /dev/vda4
/dev/vda4: UUID="e0a6af55-26e7-4cb7-a515-826a8bd29e90" TYPE="xfs"

[root@study ~]# mount UUID="e0a6af55-26e7-4cb7-a515-826a8bd29e90" /data/xfs
mount: mount point /data/xfs does not exist  # 非正规目录!所以手动创建它!

Note: 使用 UUID 来识别文件系统,会比设备名称与标头名称还要更可靠!因为是独一无二的!

umount (将设备文件卸载)

[root@study ~]# umount [-fn] 设备文件名或挂载点
选项与参数:
-f  :强制卸载!可用在类似网络文件系统 (NFS) 无法读取到的情况下;
-l  :立刻卸载文件系统,比 -f 还强!
-n  :不更新 /etc/mtab 情况下卸载。
卸载示例

使用文件名卸载

# umount /dev/sdb1

使用挂载点卸载

# umount /media/data

开机挂载 /etc/fstab 及 /etc/mtab

系统挂载的一些限制:

  • 根目录 / 是必须挂载的﹐而且一定要先于其它 mount point 被挂载进来。
  • 其它 mount point 必须为已创建的目录﹐可任意指定﹐但一定要遵守必须的系统目录架构原则 (FHS)
  • 所有 mount point 在同一时间之内﹐只能挂载一次。
  • 所有 partition 在同一时间之内﹐只能挂载一次。
  • 如若进行卸载﹐您必须先将工作目录移到 mount point(及其子目录) 之外。
# cat /etc/fstab
# Device                              Mount point  filesystem parameters    dump fsck
/dev/mapper/centos-root                   /       xfs     defaults            0 0
UUID=94ac5f77-cb8a-495e-a65b-2ef7442b837c /boot   xfs     defaults            0 0
/dev/mapper/centos-home                   /home   xfs     defaults            0 0
/dev/mapper/centos-swap                   swap    swap    defaults            0 0
[设备/UUID等]  [挂载点]  [文件系统]  [文件系统参数]  [dump]  [fsck]
  • 第一栏:磁盘设备文件名/UUID/LABEL name:

这个字段可以填写的数据主要有三个项目:

  • 文件系统或磁盘的设备文件名,如 /dev/vda2 等
  • 文件系统的 UUID 名称,如 UUID=xxx
  • 文件系统的 LABEL 名称,例如 LABEL=xxx

因为每个文件系统都可以有上面三个项目,所以你喜欢哪个项目就填哪个项目!无所谓的!只是从鸟哥测试机的 /etc/fstab 里面看到的,在挂载点 /boot 使用的已经是 UUID 了喔!那你会说不是还有多个写 /dev/mapper/xxx 的吗?怎么回事啊? 因为那个是 LVM 啊!LVM 的文件名在你的系统中也算是独一无二的,这部份我们在后续章节再来谈。 不过,如果为了一致性,你还是可以将他改成 UUID 也没问题喔!(鸟哥还是比较建议使用 UUID 喔!) 要记得使用 blkid 或 xfs_admin 来查询 UUID 喔!

  • 第二栏:挂载点 (mount point)::

就是挂载点啊!挂载点是什么?一定是目录啊~要知道啊!忘记的话,请回本章稍早之前的数据瞧瞧喔!

  • 第三栏:磁盘分区的文件系统:

在手动挂载时可以让系统自动测试挂载,但在这个文件当中我们必须要手动写入文件系统才行! 包括 xfs, ext4, vfat, reiserfs, nfs 等等。

  • 第四栏:文件系统参数
  • 第五栏:能否被 dump 备份指令作用:

dump 是一个用来做为备份的指令,不过现在有太多的备份方案了,所以这个项目可以不要理会啦!直接输入 0 就好了!

  • 第六栏:是否以 fsck 检验扇区:

早期开机的流程中,会有一段时间去检验本机的文件系统,看看文件系统是否完整 (clean)。 不过这个方式使用的主要是通过 fsck 去做的,我们现在用的 xfs 文件系统就没有办法适用,因为 xfs 会自己进行检验,不需要额外进行这个动作!所以直接填 0 就好了。

开机挂载示例

假设我们要将 /dev/sdb1 每次开机都自动挂载到/media/data,该如何进行?

答:首先,请用将下面这一行写入 /etc/fstab 最后面中;

/dev/sdb1 /media/data ext4 defaults 0 0 #或者最好先找到UUID再挂载

再来看看 /dev/vda4 是否已经挂载#df,如果挂载了,请务必卸载再说!因为,如果要被挂载的文件系统已经被挂载了(无论挂载在哪个目录),那测试就不会进行喔!**

最后测试一下刚刚我们写入 /etc/fstab 的语法有没有错误!这点很重要!因为这个文件如果写错了, 则你的 Linux 很可能将无法顺利开机完成!

所以请务必要测试测试喔!

# mount -a
# df
最终有看到 /dev/sdb1 被挂载起来的信息才是成功的挂载了!而且以后每次开机都会顺利的将此文件系统挂载起来的!

皮皮blog



Linux挂载分区错误

$ sudo mount /dev/sdb1 a
mount: you must specify the filesystem type
$ sudo mount -t ext4 /dev/sdb1 a 
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
[Recovering ext4 superblocks]

Note: 磁盘挂载不能使用sudo mount /dev/sdb a,否则也会报相同错误,因为/dev/sdb可能是磁盘名而不是分区后的名字!

这种情况一般为superblock损坏的概率很大。
superblock是什么?分区的第一块superblock位于分区的第二块block。如果分区的blocksize是1024,则superblock位于[1024, 2048)之间。

超级块损坏,但是文件系统都是有超级块备份的,只需要重新恢复超级块就可以了。

[LInux硬盘挂载失败,提示mount: wrong fs type, bad option, bad superblock on /dev/的解决办法]

$ sudo e2fsck -f -b 32768 /dev/sdb1

e2fsck: Bad magic number in super-block while trying to open /dev/sdb
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem.  If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>     or    e2fsck -b 32768 <device>

linux系统挂载windows分区错误

root执行/media可执行文件权限不够,chmod修改权限无效

ubnutu中切换用户后再用admin登录设备不能挂载某个win分区盘符
ubuntu  gedit 打开 windows 分区中txt 文件乱码

root执行/media可执行文件权限不够,chmod修改权限无效

问题:我想执行media文件夹下自己写的某个程序,但无法执行?

lz发现,linux中挂载的windows分区的目录和文件并不能修改所有者等,主要是ntfs文件系统不支持linux权限。

1. 于是我以root的身份在终端以输入指令chmod a+x 1,回车后没反应,查询该文件夹的属性,也没有改变,即修改权限无效。

2. 直接图形界面进入文件夹,打开文件属性,属性权限设置里面 执行权限都不可选(勾选后自动消失,即使使用ROOT权限同样)

3. 而拷贝到linux分区(比如/tmp文件夹下)才可以正常执行

pipi@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#g++ -o div divide.cpp
pipi@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#./div
bash: ./div: 权限不够
pipi@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#ll div
-rw------- 1 pipi pipi 8522 Oct  2 00:43 div
pipi@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#chmod u+x div
pipi@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#ll div
-rw------- 1 pipi pipi 8522 Oct  2 00:43 div    =>权限竟然没变,依旧没法执行!!!
media这个文件夹的所有者是root
root@ubuntu:/#ls -ld /media
drwxr-xr-x 5 root root 1024 Sep 29 00:08 /media

即当插入一个windows分区格式的硬盘或者U盘时,linux系统自动挂载该移动硬盘到/media目录下,通过ls -al查看其权限,显示为:drwx------,证明我们可以进入到该盘符目录,当进一步查看该盘符下的某可执行文件的权限时,就如上所说发现其为-rw-------,即可以对该文件进行读写操作,但不能执行该文件,通过chmod更改权限也无济于事.

此时如何获得执行权限?(再比如在移动硬盘上有一源代码,通过编译产生了目标程序,但是当通过./来执行时,却告知没有权限,同时sudo chmod +x也不起任何作用,在实际工作中遇到这样的情况时,一般可以通过将源码拷贝到linux系统磁盘中进行编译或者将编译好的目标程序拷贝到linux系统的磁盘中再使用chmod更改权限来解决,但如果能直接让linux系统挂载的移动硬盘具有执行权限就方便多了)

linux设备挂载

这一问题涉及到硬盘挂载,首先需要了解linux系统中与磁盘挂载相关的两个系统文件。

/etc/fstab是系统分区信息以及系统启动时磁盘的挂载参数,该文件是一个静态文件(系统启动后不再改变,如人为改变,需要重启系统);

/etc/mtab是当前系统中已经挂载的磁盘列表,该文件是一个动态文件,即随系统mount和umount文件系统而随时发生改变,例如当插入U盘时,系统在mtab文件中写入该磁盘的相关信息,当拔下U盘时,系统随之删除mtab文件中有关该磁盘的信息。

fstab文件内容的格式如下

# /etc/fstab: static file system information.
# <file system> <mount point>   <type>          <options>                   <dump>  <pass>

……
proc                       /proc                   proc    nodev,noexec,nosuid              0                 0

……

mtab文件内容的格式如下

……
proc                       /proc                    proc   rw,noexec,nosuid,nodev          0                 0

……

root@ubuntu:~#cat /etc/mtab
/dev/loop0  /  ext3  rw  0  0
...
/dev/sda1 /host fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
gvfs-fuse-daemon /home/pipi/.gvfs fuse.gvfs-fuse-daemon rw,nosuid,nodev,user=pipi 0 0
/dev/sda6 /media/000B089D0000696F fuseblk rw,nosuid,nodev,allow_other,default_permissions,blksize=4096 0 0 #小编windows分区下的c盘

fstab和mtab文件中的格式都是按照“设备名称—挂载点—分区类型—挂载选项—dump选项—pass选项”的格式组织列表。[鸟哥的linux私房菜]

让linux挂载的移动硬盘具有执行权限

1、设备名称是指系统中设备的名称,比如/dev/sda1或/etc/sdb1或/etc/sdc1等,这些设备名称可以通过sudo fdisk -l命令来查看。

2、挂载点实际上就是为挂载磁盘创建的文件夹,比如./,./usr,和./swap这样的系统默认挂载点,当然我们可以自己使用mkdir创建一个文件夹作为挂载点。

3、分区类型在linux下面有ext2,ext3,ext4,jfs,jfs2,reiserfs,reiser4,swap等(在windows下面有FAT和NTFS等)。

4、常用的挂载选项包括:

  (1)auto和noauto: auto允许系统自动挂载或使用mount -a就能挂载,fstab默认就是这个选项 ;noauto使系统开机不自动挂载 或使用mount -a时不挂载;

  (2)rw和ro:rw表示以读写权限挂载该设备,ro表示以只读权限挂载该设备;

  (3)suid和nosuid:suid表示允许对该设备进行uid和gid的设置操作,nosuid就是不允许设置uid和gid;

  (4)dev和nodev:dev表示同时挂载文件系统上的特殊设备,nodev表示不挂载这些特殊设备;

  (5)exc和noexc:exec表示允许执行该文件系统下的二进制文件,noexc当然表示不允许执行二进制文件;

 (6)user、nouser、users和owner:user允许指定的普通用户挂载该设备,nouser表示禁止普通用户挂载该设备(仅root可以挂载该设备),users表示允许所有普通用户挂载该设备,owner表示仅设备所有者可以挂载。user和users选项同时隐含noexec,nosuid,nodev选项;

  (7)sync和asnyc:sync表示对该设备的I/O操作同步进行,不进行缓冲处理,而async表示不同步,进行缓冲处理;

  (8)defaults: 该选项是rw, suid, dev, exec, auto, nouser, and async这些选项的组合。

linux系统针对不同的文件系统还可以设定其他特别选项

对Windows下的NTFS文件系统,可以设置utf8(表示采用UTF-8转换文件名称)、uid=****(挂载设备的指定用户id,可以通过id命令或者查看/etc/passwd文件方式获得)、gid=****(挂载设备的指定用户群组id)和umask=***(挂载设备的权限屏蔽,八进制数值)等。

对Windows下的FAT(包括msdos,umsdos,vfat等)文件系统,可以设置uid=****,gid=****,umask=***,dmask=***(挂载设备时应用于目录的权限屏蔽,八进制数值)和fmask=***(挂载设备时应用于普通文件的权限屏蔽,八进制数值)。更多挂载选项可以参见man mount。

5、dump选项用来设置是否让备份程序dump备份文件系统,0为不备份,1为备份,如果上次用dump备份,将显示备份至今的天数。

6、pass选项,告诉fsck程序在开机时以什么顺序检查文件系统,为0就表示不检查,(./)分区只能是1,其它的分区只能是2,当数字相同就同时检查。

windows挂载分区的权限

 在linux下面挂载windows分区格式的移动硬盘了,关键就是设置挂载选项从而获得相应权限。

当挂载Windows分区格式的文件系统时,我们可以通过uid=****,gid=****和umask=***/dmask=***/fmask=***来设置权限,uid和gid直接设置为自己的uid和gid就可以;

关于权限mask的设置采用数字式的,同样第一个数字表示所有者的权限mask,第二个数字表示群组的权限mask,第三个数字表示其他用户的权限mask,如果umask=000,就表示不屏蔽任何用户的任何权限,即所有用户具有读、写和执行权限,再例如fmask=033,就表示文档所有者具有读、写和执行权限,而群组和其他用户只具有读取的权限。

[linux文件权限及目录管理 ]

media文件夹下很多文件只读的原因

只读的原因是win8的快速重启技术开启后进入其它系统对该分区进行写操作会导致数据丢失 所以ntfs-3g(linux上的ntfs支持模块)默认禁止对ntfs写操作。如果ntfs系统中不能读写,没法儿更改里边的文件属性。

另外/下的文件夹切忌修改权限

windows挂载分区权限不能修改的原因

由于挂载的分区是ntfs的所以不能按照linux的权限方式修改,目前看到的权限是mount时赋予的。

问题解决方案

1.修改/etc/fstab(推荐)

ubuntu14.04+设置windows分区开机挂载

~sudo su

#mkdir /media/pika/files

#mkdir /media/pika/softwares

使用命令查看UUID    # 使用uuid,用磁盘号维护时可能错乱

#blkid

记录要挂载的磁盘的uuid号
#vi /etc/fstab
fstab文件添加行如下

#files in windows
15 /dev/sda6 /media/pi/files ntfs defaults 0 0     #ubuntu12.04

UUID=BA78CD5F78CD1AD1 /media/pika/files ntfs defaults 0 0

UUID=E8567DD3567DA2CC /media/pika/softwares ntfs defaults 0 0

测试挂载
#mount -a
#df -T

[ubuntu 14.04 开机自动挂载分区]

<ubuntu12.04?

可以在/etc/fstab中添加像下面这样的挂载配置,并重启系统让系统挂载硬盘,从而获得执行权限。

# <file system> <mount point>                               <type>                <options>                                             <dump>  <pass>

/dev/sdb6         /media/sdb6                                      ntfs       utf8,uid=1000,gid=1000, umask=000                  0             0
/dev/sda6         /media/E        ntfs       utf8,uid=1000,gid=1000,fmask=033                    0             0        (小编的系统这么修改的,可先挂载windows分区,再通过df -h查询windows分区的挂载具体情况)

万一在fstab中修改有误,导致开机失败,可以按屏幕提示按s键就可以了,进入系统后修改好fstab

或者按m键进入单用户维护模式,修改fstab,输入restart重启就可以进入系统了

解决之后的情况(具有执行权限了,并且可以执行):

root@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#ls -l div
-rwxr--r-- 1 pipi pipi 8522 Oct  2 00:43 div
root@ubuntu:/media/000B089D0000696F/mine/C++/POJ/POJ/BOP#./div
2 13 5 6 4 9 0 98 0 0 1 6 2 3 2 4 0 49 0 0 

2.使用mount解决

umount /media/...
mount -o rw /dev/sda7 /media

Note: mount 简单用法:
需要root权限
mount 分区 挂载点
分区:类似/dev/sda1之类
挂载点:目的文件夹,最好是空的
例:把第一分区(sda1)挂载到/home/xxx/a
mount /dev/sda1 /home/xxx/a
卸载只需 umount 挂载点

3.专用分区

双系统中可以先装windows。在里边分好区,然后专门给linux留一个32G的fat32分区,免得和ntfs打交道。

把经常用的东西放fat32,这样保证你什么时候都能用。

把windows下常用但linux不用的放ntfs。把linux常用但windows不用的放到linux自己的分区。

[Ubuntu下若把一NTFS格式的移动硬盘手动挂到非/media 目录的目录下,被挂载的目录权限就被设置成了777,属主和属组都为root。且chmod,chown命令对该目录失效]

[关于挂载windows分区的权限的问题]

[关于修改文件夹权限的命令求解]

[让linux挂载的移动硬盘具有执行权限]

[解决mount挂载u盘后chmod无法修改挂载点权限]

皮皮blog

ubnutu中切换用户后再用admin登录设备不能挂载某个win分区盘符

添加了一个新用户dapi后[linux下添加删除修改用户],用新用户账号dapi登录,打开主文件夹时提示需要管理员pipi授权


输入管理员账号就可以看到某个盘符了,如我的显示的是F盘(windows下的)

但是注销后再用管理员账号登录就看不到F盘了,显示没有权限

用ls -l查询后才发现那个盘符所有者是dapi,而盘符的权限设置为drwx------,用pipi登录的就当然不能访问了

尝试用chown和chgrp修改盘符所有者和组失败[root执行/media可执行文件权限不够,chmod修改权限无效]

解决方案

用新账号dapi登录系统,主文件夹>右键点击F盘,卸载

然后用管理员账户pipi登录就可以正常访问设备中的F盘了

ps:要是我频繁切换两个账户,那不是每次用新账户dap登录时都要授权,注销之前都要卸载了?这个怎么解决?

皮皮blog

ubuntu  gedit 打开 windows 分区中txt 文件乱码

ubuntu 12.04 gedit 打开 windows 分区中的txt 文件乱码,是因为 ubuntu 和 windows 两个系统的编码不同。

解决办法1:(推荐)

终端里依次输入以下 2 条命令即可:

gsettings setorg.gnome.gedit.preferences.encodings auto-detected "['GB18030','GB2312', 'GBK', 'UTF-8', 'BIG5', 'CURRENT','UTF-16']"

gsettings setorg.gnome.gedit.preferences.encodings shown-in-menu "['GB18030','GB2312', 'GBK', 'UTF-8', 'BIG5', 'CURRENT','UTF-16']"

[ubuntu 12.04 gedit 打开 txt 文件乱码的解决办法]

解决办法2:

1、在终端输入“dconf-editor”回车。(如果没有安装用“sudo apt-get install dconf-tools”安装。)

2、展开org/gnome/gedit/preferences/encodings

auto-detected的value中加入 'GB18030', 加在uft8后面,按回车;

show-in-menu的value中在前面加入 'GB18030', 按回车。

[Ubuntu 12.04下Gedit打开Windows下txt文件乱码解决]

[ubuntu下txt文档乱码现象]

from:http://blog.csdn.net/pipisorry/article/details/39649699

ref:


3
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2943807次
    • 积分:27366
    • 等级:
    • 排名:第226名
    • 原创:556篇
    • 转载:30篇
    • 译文:5篇
    • 评论:258条
    Welcome to 皮皮blog~

    博客专栏
    最新评论