Unix

/etc/passwd文件内容的意义

以前学过的Linux系统管理知识,有好多的忘记了。不经常用就是记不住啊。今天复习一个。 /etc/passwd是Linux系统里用来记录系统用户信息的文件。非常重要,所以只有Root用户才有权限修改,但是一般的情况下,普通的用户是可以看的。下面是passwd文件中一行的格式: 1. 用户名,最大23个字符。 2. 密码,『x』表示密码经过加密了。并以加密形式存储在/etc/shadow文件夹下。 3. 用户ID(User ID)。0代表Root. 4. 组ID(Group ID)。 5. 用户ID信息。就是描述这个用户是什么样的用户。也可省略不写。 6. 用户Home目录的位置。一般情况下是/home/用户名。当然也可以改成其他的目录。 7. 表示该用户默认使用什么Shell。这里是Bash,也可以是CShell,KShell等。 知道了passwd文件的意义以后,可以通过它查到很多信息。比如,我想知道当前这个Unix系统里有多少个用户,可以使用下面的命令(假设用户Home目录都在/home下): grep -i /home/ /etc/passwd  #显示所有用户 grep -i /home/ /etc/passwd | wc -l  #显示用户 图片来源: http://www.cyberciti.biz/faqs/uploaded_images/passwd-file-791527.png

Unix

在Shell里列出文件名和路径的几种方法

关于如何列出指定路径里的文件和相对路径,这个问题看上去很简单。其实还是有一些技巧的。简单的用ls命令得出的输出格式,有的时候不是我们想要的。 用”ls -R”显示出来的结果格式是这样: $ ls -R sources sources: 1.2 1.txt 2.txt one temp tmp sources/1.2: sources/one: two sources/one/two: x.txt y.txt z.txt sources/temp: 虽然这样的格式,看起来比较清晰,不过要是进一步做处理的话就不太方便了。比如,我们要把一个目录的文件和它所在的路径都找出来,并且不显示空目录的话,用”ls -R”就不行了。 这是我们就可以用find命令。 $ find ./sources ! -type d -print ./sources/1.txt ./sources/2.txt ./sources/one/two/x.txt ./sources/one/two/y.txt ./sources/one/two/z.txt ./sources/tmp 这种格式,处理起来就方便多了。 下面是用find来显示文件路径和文件名的几种常用组合: find / -type d -print (只显示路径) find / -type l -print (只显示soft link) find / [...]

Unix

在Leopard中安装Mysql

在升级到Leopard以后, 忙于试验它的系统本身的新功能, 加上现在工作上又会到Java的”怀抱”. 所以至于它对RubyonRails开发环境的支持一直没有体验, 只是知道Leopard内置了Ruby和RubyonRails. 今天为了回顾曾经做过的Rails项目, 在自己的Leopard里配置了一下Ruby开发环境,才发现新版的MacOSX对于RubyonRails本身的支持提高了很多. 甚至可以说根本不需要什么配置, 直接拿来就可以用. 但是, 开发一个Web应用, 数据库是必可不少的. 由于Mysql对于Leopard并没有提供及时的支持, 所以现在的Mysql for Mac版本里的控制面板不能在Leopard里用了. 所以除了正常安装Mysql之外, 还需要在Terminal里做一下配置。 1. 启动Mysql服务. sudo /usr/local/mysql/bin/safe_mysqld 2. 新建一个文件夹, 用于指定sock.sudo mkdir /var/mysql/ 3. 建立sock链接sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock 参考文章: http://angry-fly.com/index.cfm/2007/10/26/Fix-for-MySQL-on-Leopard

Unix, macosx