mvディレクトリとコンテンツを新しいディレクトリに移動する

mvディレクトリとコンテンツを新しいディレクトリに移動する

データベースを構成する多くのファイルを/var/lib/mysql/test_db/ 含むディレクトリがあります。 test_db

これで新しいディレクトリを作成しました。 /var/lib/mysql/data/

test_dbディレクトリとその内容をdataディレクトリに移動しようとしています。

あちこちでいろいろ試してみました。

sudo mv /var/lib/mysql/test_db/ /var/lib/mysql/data/test_db/

しかし、引き続きエラーが発生します。

mv: cannot move /var/lib/mysql/test_db/ to /var/lib/msyql/data/test_db/: No such file or directory

しかし、私が実行した場合: ls -lah

わかりました。

drwxrwxrwx  2 root  root    32K Mar 27 15:58 test_db
drwxrwxrwx  3 mysql mysql  4.0K Mar 30 10:51 data

私が知る限り、これは両方ともディレクトリなので、両方が存在することを意味します。

ご覧のとおり、権限(chmod 777 test_db)を変更しましたが機能しませんでした。

私は何を見逃していますか?

ベストアンサー1

ターゲットデータベースディレクトリを削除し、test_dbディレクトリ自体を移動します。 (また、暗黙的にコンテンツを移動します。)

sudo rmdir /var/lib/mysql/data/test_db
sudo mv /var/lib/mysql/test_db /var/lib/mysql/data

通常、ディレクトリ名の後にスラッシュを付ける必要はありません。

ご意見をお読みになっても、「該当するファイルまたはディレクトリがありません」エラーが発生した場合、ソースディレクトリがターゲットディレクトリに移動された可能性がありtest_dbます。この場合、上記の操作も「該当するファイルまたはディレクトリなし」エラーで失敗します。このコマンドを使用して問題を解決したら、この回答の上部にある2つのコマンドを再実行してください。test_db/var/lib/mysql/data/test_db/test_db/...rmdir

sudo mv /var/lib/mysql/data/test_db/test_db /var/lib/mysql

おすすめ記事