Ubuntuはデフォルトではrootユーザーが許可されておらず、管理権限の必要なコマンドではsudoを使ってコマンドを使います。しかしulimitコマンドはsudoでは実行できずという経緯があり、どうやったら実行できるかと方法を調べていたのですがさすがstackoverflow、ズバリな回答が見つかりました。
$ sudo sh -c "ulimit -n 5000 && exec su $LOGNAME"
ちなみにsudo -iで管理権限になって、ulimit -n 5000でも可能です。
$LOGNAMEに何が格納されているかはenvコマンドもしくは「echo $LOGNAME」で確認できます。execで指定したユーザーの権限で「sudo sh -c "ulimit -n 5000」が実行されるのでコマンドが通るようです。execを使っているので、コマンドの実行が終わったらsuを実行する前の権限に戻ります。execの使い方はすっかり忘れていましたが、LPICレベル1の知識が役に立ちましたね。